What causes a bad odor to develop inside your water heater?

Most water heaters have what is called a "sacrafical annode." This is fitted to save the heater from "agressive" water, hence the use of the word sacrafical. The Annode is sacraficed to save the heating vessel. If there is even a tiny amount of hydrogen sulphide (H2s) present in the water, the annode rod will make the problem worse and heated water will smell like rotten eggs. Try removing the annode rod and I bet it will be the end of your problem. Please note that removing the rod may affect your warrenty. I would love to know if this helps, I am pretty sure it will. Regards, Metroman