Short version: plan on 30 to 45 days for freshly milled whole wheat, and 3 to 4 weeks for millet flours like bajra, jowar and ragi. Keep it airtight, away from heat and light.
Why fresh flour has a shorter life
The germ of the grain contains oil. Grinding exposes that oil to air, and oil slowly oxidises. That is the entire mechanism. It is also why bajra, which is comparatively high in fat, turns noticeably bitter faster than wheat does.
Flour that keeps for nine months on a shelf usually keeps that long because the parts that spoil have been reduced or removed, or because it is stored and distributed in conditions your kitchen does not replicate. A long shelf life is not a sign of quality; it is a sign of what was taken out.
How to store it
- Airtight, always. A steel or glass container with a proper seal beats the bag it arrived in.
- Away from the stove. Heat accelerates oxidation. The cupboard above the hob is the worst place in the kitchen.
- Refrigerate if you bought more than a month's worth. This meaningfully extends usable life.
- Freeze for longer storage. Let it return to room temperature before kneading, or your dough will fight you.
- Do not top up. Adding new flour on top of old in the same dabba means the oldest flour never gets used.
How to tell it has turned
Smell it. Fresh atta smells faintly sweet. Flour past its best smells flat, then faintly like old nuts or crayon. Bitterness in the roti is the late sign — by then you have been eating it for a while.
The practical conclusion
Buy less, more often. This is genuinely inconvenient advice for us to give, because larger orders are better for our economics. But a 20 kg order of fresh atta is a worse product by week seven than a 5 kg order milled four times. Work out roughly what your household gets through in a month and order that.