The answer to 'why is my water heater not heating' is that there are several common causes, including a faulty thermostat, sediment buildup, a broken heating element, or a tripped circuit breaker. The symptoms you may notice include no hot water, lukewarm water, or water that doesn't stay hot for long.
If the issue is a tripped circuit breaker or a loose connection, you may be able to resolve it with some basic troubleshooting and DIY repairs. However, for more complex problems like a faulty heating element or thermostat, it's best to call in a professional HVAC technician to diagnose and fix the issue properly.