The Department of Consumer Affairs hosts a division called the Price Monitoring Cell, which is responsible for collating the daily retail
and wholesale
prices of 22 essential commodities from about 180* centres spread across India. Using the State Civil Supplies Departments of various regions and a geotagged verification system with multiple crosschecks (raw data is compared with the reports of FCI and NFAED), the PMC is able to achieve highly accurate daily estimates at the market level, which are then made public the same day.
CEDA performs a high-frequency scrape of their portal to maintain an up-to-date price tracker while allowing for visualizations of each commodity at the centre, zone and all-India level. This enables users to monitor granular changes in food prices in the Indian economy in real-time. The portal also allows users to access the raw data in an easily downloadable format. As of 29th March 2022, our mirror dataset stands at 5.8+ Million retail
and 5.4+ Million wholesale
data points reported over a span of 13 years.
We screen for outliers in the raw DoCA data by filtering out any commodity-centre level entries which show a 1000% change in their prices. Since such cases are rare, we adopt a manual verification approach before dropping them. From 1st January 2009 to 30th April 2022, only 4 genuine outliers are present in the retail subset (out of 5.8 million) and 63 in the wholesale subset (out of 5.4 million). These have been subsequently removed.
We have integrated this check into our pipeline, and with every daily scrape, our validation script confirms whether all data points are legitimate. If any sudden spikes or drops are found, we are notified and manually judge whether the entry is incorrect.
We provide three modes to graph the cleaned out data points —
Daily
: Every non-null data point is plotted for the selected commodity and centre(s).Monthly
: One data point for each month between the start and end date is calculated by averaging over the prices of the selected data subset. Non-null data points are disregarded while finding the mean.7 Day Moving Average
: A particular day’s plotting point is calculated by averaging over the past 7 days’ non-null prices. This generates a smoother graph by eliminating short-lived price peaks and drops.Users can download the cleaned raw data in CSV format (same variables as mentioned before) from our website by following these steps:
Retail
and Wholesale
price data begins from 2009.[Updated 31st March 2022]
Commodity ID | Commodity | DoCA Commodity Group | CEDA Commodity Group |
---|---|---|---|
1 | Atta (Wheat) | Grains & Pulses | Grains |
2 | Gram Dal | Grains & Pulses | Pulses |
3 | Groundnut Oil (Packed) | Edible Oils | Edible Oils |
4 | Gur | Others | Others |
5 | Masoor Dal | Grains & Pulses | Pulses |
6 | Milk @ | Others | Others |
7 | Moong Dal | Grains & Pulses | Pulses |
8 | Mustard Oil (Packed) | Edible Oils | Edible Oils |
9 | Onion | Vegetables | Vegetables |
10 | Palm Oil (Packed) | Edible Oils | Edible Oils |
11 | Potato | Vegetables | Vegetables |
12 | Rice | Grains & Pulses | Grains |
13 | Salt Pack (Iodised) | Others | Others |
14 | Soya Oil (Packed) | Edible Oils | Edible Oils |
15 | Sugar | Others | Others |
16 | Sunflower Oil (Packed) | Edible Oils | Edible Oils |
17 | Tea Loose | Others | Others |
18 | Tomato | Vegetables | Vegetables |
19 | Tur/Arhar Dal | Grains & Pulses | Pulses |
20 | Urad Dal | Grains & Pulses | Pulses |
21 | Vanaspati (Packed) | Edible Oils | Edible Oils |
22 | Wheat | Grains & Pulses | Grains |
[Updated 31st March 2022]
Centre ID | Centre | Zone |
---|---|---|
1 | Adilabad | South Zone |
2 | Agartala | North-East Zone |
3 | Agra | North Zone |
4 | Ahmedabad | West Zone |
5 | Aizawl | North-East Zone |
6 | Ajmer | West Zone |
7 | Aligarh | North Zone |
8 | Allahabad | North Zone |
9 | Ambikapur | West Zone |
10 | Amritsar | North Zone |
11 | Araria | East Zone |
12 | Ayodhya | North Zone |
13 | Azamgarh | North Zone |
14 | Balangir | East Zone |
15 | Balasore | East Zone |
16 | Banda | North Zone |
17 | Bareilly | North Zone |
18 | Baripada | East Zone |
19 | Bathinda | North Zone |
20 | Belagavi | South Zone |
21 | Bellary | South Zone |
22 | Bengaluru | South Zone |
23 | Bengaluru (East Range) | South Zone |
24 | Berhampur | East Zone |
25 | Bhagalpur | East Zone |
26 | Bharatpur | West Zone |
27 | Bhopal | West Zone |
28 | Bhubaneshwar | East Zone |
29 | Bhuj | West Zone |
30 | Bikaner | West Zone |
31 | Bilaspur-Cg | West Zone |
32 | Bilaspur-Hp | North Zone |
33 | Bodeli | West Zone |
34 | Bokaro | East Zone |
35 | Chamba | North Zone |
36 | Chandigarh | North Zone |
37 | Chennai | South Zone |
38 | Coimbatore | South Zone |
39 | Cuddalore | South Zone |
40 | Cuttack | East Zone |
41 | Dantewada | West Zone |
42 | Darbhanga | East Zone |
43 | Dehradun | North Zone |
44 | Delhi | North Zone |
45 | Dhanbad | East Zone |
46 | Dharamshala | North Zone |
47 | Dharmapuri | South Zone |
48 | Dharni | West Zone |
49 | Dharwad | South Zone |
50 | Dhavanagere | South Zone |
51 | Dimapur | North-East Zone |
52 | Dindigul | South Zone |
53 | Durg | West Zone |
54 | Ernakulam | South Zone |
55 | Gangtok | North-East Zone |
56 | Gaya | East Zone |
57 | Giridhi | East Zone |
58 | Gonda (Devipatan) | North Zone |
59 | Gorakhpur | North Zone |
60 | Gumla | East Zone |
61 | Gurgaon | North Zone |
62 | Guwahati | North-East Zone |
63 | Gwalior | West Zone |
64 | Haldwani | North Zone |
65 | Hamirpur | North Zone |
66 | Haridwar | North Zone |
67 | Hisar | North Zone |
68 | Hoshangabad | West Zone |
69 | Hyderabad | South Zone |
70 | Imphal | North-East Zone |
71 | Indore | West Zone |
72 | Itanagar | North-East Zone |
73 | Jabalpur | West Zone |
74 | Jadcherla | South Zone |
75 | Jagdalpur | West Zone |
76 | Jaipur | West Zone |
77 | Jammu | North Zone |
78 | Jamshedpur (East Singbhum) | East Zone |
79 | Jeypore | East Zone |
80 | Jhabua | West Zone |
81 | Jhansi | North Zone |
82 | Jodhpur | West Zone |
83 | Jowai | North-East Zone |
84 | Kalaburagi | South Zone |
85 | Kanpur | North Zone |
86 | Karimnagar | South Zone |
87 | Karnal | North Zone |
88 | Kasargod | South Zone |
89 | Katihar | East Zone |
90 | Khagaria | East Zone |
91 | Kharagpur | East Zone |
92 | Kohima | North-East Zone |
93 | Kolkata | East Zone |
94 | Kota | West Zone |
95 | Kottayam | South Zone |
96 | Kozhikode | South Zone |
97 | Kupwara | North Zone |
98 | Kurnool | South Zone |
99 | Lohardaga | East Zone |
100 | Lucknow | North Zone |
101 | Ludhiana | North Zone |
102 | Madhubani | East Zone |
103 | Mahe | South Zone |
104 | Mairang | North-East Zone |
105 | Malda | East Zone |
106 | Mandi | North Zone |
107 | Mangalore | South Zone |
108 | Mangaon-Raigad | West Zone |
109 | Mayabunder | South Zone |
110 | Meerut | North Zone |
111 | Mirzapur (Vindhyanchal) | North Zone |
112 | Moradabad | North Zone |
113 | Morena | West Zone |
114 | Motihari | East Zone |
115 | Mumbai | West Zone |
116 | Munger | East Zone |
117 | Muzzafarpur | East Zone |
118 | Mysore | South Zone |
119 | Nagpur | West Zone |
120 | Nashik | West Zone |
121 | Nawada | East Zone |
122 | Palakkad | South Zone |
123 | Panaji | West Zone |
124 | Panchkula | North Zone |
125 | Pathanamthitta | South Zone |
126 | Patna | East Zone |
127 | Poonch | North Zone |
128 | Port Blair | South Zone |
129 | Puducherry | South Zone |
130 | Pune | West Zone |
131 | Purnia | East Zone |
132 | Purulia | East Zone |
133 | Raiganj | East Zone |
134 | Raipur | West Zone |
135 | Rajkot | West Zone |
136 | Ramanathapuram | South Zone |
137 | Rampurhat | East Zone |
138 | Ranchi | East Zone |
139 | Rewa | West Zone |
140 | Rohtas (Sasaram) | East Zone |
141 | Rourkela | East Zone |
142 | Rudrapur | North Zone |
143 | Sagar | West Zone |
144 | Saharanpur | North Zone |
145 | Saharsa | East Zone |
146 | Sahibganj | East Zone |
147 | Samastipur | East Zone |
148 | Sambalpur | East Zone |
149 | Saran | East Zone |
150 | Selamba | West Zone |
151 | Shahdol | West Zone |
152 | Shillong | North-East Zone |
153 | Shimla | North Zone |
154 | Shivamogga | South Zone |
155 | Siliguri | East Zone |
156 | Simdega | East Zone |
157 | Sohra | North-East Zone |
158 | Solan | North Zone |
159 | Srinagar | North Zone |
160 | Surat | West Zone |
161 | Suryapet | South Zone |
162 | T.Puram | South Zone |
163 | Thiruchirapalli | South Zone |
164 | Thrissur | South Zone |
165 | Tirunelveli | South Zone |
166 | Tirupathi | South Zone |
167 | Tumakuru | South Zone |
168 | Tura | North-East Zone |
169 | Udaipur | West Zone |
170 | Ujjain | West Zone |
171 | Una | North Zone |
172 | Vapi | West Zone |
173 | Varanasi | North Zone |
174 | Vellore | South Zone |
175 | Vijayapur | South Zone |
176 | Vijaywada | South Zone |
177 | Visakhapatnam | South Zone |
178 | Waghai | West Zone |
179 | Warangal | South Zone |
180 | Wayanad | South Zone |
Acknowledgements: Tanish Bafna, an undergraduate student at Ashoka and an intern with CEDA during 2021-22, led the initiative to develop the Daily Food Prices tool.