1. Old Urad Dal
At times, when your Urad dal is too old or too old an stock might be the cause. This especially holds true if your batter was fermenting well all this while and suddenly stopped with no other change in recipe.
The presence of chlorine wrecks up fermentation. Use purified/filtered chlorine free water for the wild yeast to thrive in your batter.
3. Climate/ Weather
One of the most important aspect for fermentation is the weather. The ideal temperature for fermentation is 80-90F. If you live in a cold weather, then it is difficult for the batter to ferment. Please refer my How to ferment idli in winter/cold climate? for tips and tricks to aid fermentation.
4. Iodised Salt
Though personally I have never had problems with this, few readers informed me how at times Iodized salt can prevent wild yeast from forming in batter leading to absence of proper fermentation. In that case, if you have been doing everything else perfectly, try using non-iodised salt.
5. Not enough Salt
At times when the amount of salt is not enough (for the amount of batter), then it could lead to absence of fermentation. My mother eye balls it but mentioned that you would need about 3/4 to 1 tsp salt for every 1 cup of dry ingredients (rice + dal). You might have to add more/adjust as per your taste.
6. Addition of Leavening agents, curd etc before fermentation
Some people tend to add leavening agents like Baking powder, soda etc before fermentation. These are to be added after the fermentation is complete. Also, avoid using Yogurt. Though once or twice I had success fermenting after adding some Poha (rice flakes soaked in yogurt) to my batter, I would still recommend avoiding it given it mostly deters the process.
For more details, please refer my post on How to ferment idli batter in winter/cold climates? If you would like to try another recipe, check my South Indian Idlis for details.
Check out classic South Indian Breakfast Recipes