Only having 5 minutes of hot water can be caused by many reasons. The first thing you should check is the size of the water heater and how much water you are flowing. A tank type water heater can deliver about 70% of the water in the tank before the incoming cold water dilutes the hot water in the tank and the temperature drops drastically. For example if you have a 30 gallon water heater and you are showering with the showerhead flowing 2.5 gpm which is typical you have about 8 Â½ minutes of pure hot water with slightly longer if you are mixing in cold water to temper the water to your liking.
If the water heater is not delivering the amount of hot water that it should, there could be several problems with the water heater that could cause a lack of hot water:
Water heaters have a dip tube that directs incoming cold water to the bottom of the tank so it does not dilute the hot water leaving the tank at the top. If the dip tube is damaged or broken the incoming cold water will rapidly cool off the hot water exiting the tank. From August 1993 to October 1996 many water heater manufacturers built water heaters with defective dip tubes made by Perfection Corporation which disintegrated and broke off.
Problems with the thermostats and elements can also cause the water heater to not heat to the correct temperature or, only heat the water in part of the tank.
Sometimes in homes built on slabs pipes can be leaking undetected under the slab and this can severely reduce the amount of hot water you have available for use.
If you have a properly sized water heater and you are not getting enough hot water you should check or, have someone check the water heater to see what is wrong with it.