Available now — configure & buy
Configure your selection to see a price.
Enter your email above to check out as a guest, or continue to create a free account (purchases saved in My Products). Card payments via Stripe; pro-forma/bank transfer for institutions.
Sold by India Energy Atlas · CC-BY license · cite: India Energy Atlas (energymap.in), CC BY 4.0
Need this landing in Snowflake, S3, or GCS on a schedule — or under an enterprise license with custom windows? We set up direct cloud delivery for enterprise customers.
Pro-forma invoicing and bank transfer available for institutional buyers.
The daily merit order of Indian electricity, per state, from the Ministry of Power's MERIT portal — 2018 to the present.
Every row is one contract line: a station, the state buying from it, the variable charge that station declared to that state, the capacity allocated under the contract, and the energy actually scheduled. Ordered by the portal's own merit rank, so each state-day arrives as the published dispatch stack — the cheapest unit, the marginal unit, and everything between.
This is the number states dispatch on. The variable charge is what decides whether a state buys another MWh from a plant, from the exchange, or not at all. It is the closest public thing to a supply curve for the Indian grid, and it is not published as a time series anywhere else — the portal serves only the current day, and back-dated requests to its HTML page return errors.
What the charge is, precisely. Per CEA's MERIT submission spec it is declared at the state periphery, inclusive of interstate transmission losses. So the same station carries a different figure for each state it serves, and it is *not* that station's fuel cost. Treat it as a procurement price, not a production cost.
Coverage varies by day, not by state. Tamil Nadu published 44 plants in 2022 and nothing today; Uttar Pradesh disclosed through 2024 and then stopped. Disclosure has thinned over the window — 27 states publishing in 2018, 15 by 2025 — which makes the history the valuable part and is why it is shipped whole. Non-disclosing state-days are included with NULL costs rather than dropped, so the fleet, capacities and allocations stay visible.
2018-01-01 to present, daily, across the 34 states/UTs the MERIT portal carries. The portal typically serves D-2. Six small UTs (Meghalaya, Mizoram, Nagaland, Puducherry, Tripura, Uttarakhand) publish no merit order at all and are absent by source, not by omission. ~2.04M of 2.69M rows carry a declared cost.
| merit_plant_cost_daily | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2018-01 | 2018-09 | 2019-05 | 2020-01 |
No multi-day gaps detected inside the covered window at the last weekly scan.
Coverage stats generated 2026-08-17 by the weekly sample-assets pipeline · 27,01,536 total rows
| Column | Type | Description |
|---|---|---|
| report_date | date | Portal's own declared date, IST. Not the capture date |
| state | text | Procuring state as MERIT labels it |
| station | text | Generating station as MERIT labels it. NOT a key — a state can hold several contracts with one station at different rates on the same day |
| merit_rank | int | The portal's own position in the state's merit order, 1 = cheapest. Together with (report_date, state) this is the primary key |
| station_type |
- This is a declared dispatch charge, not a fuel cost. It sits at the state periphery inclusive of interstate losses, so one station carries a different figure per state. For the cost of burning coal at the plant, see the physical SRMC series on the API.
- The station name is not a key. A state can hold several contracts with one plant at different rates — Maharashtra bought from ADANI-TIRODA twice on one day, at Rs 2.38 and Rs 2.44. The key is (report_date, state, merit_rank). Grouping by station name silently merges contracts and loses a price.
- NULL cost is undeclared, not zero. A literal 0.00 is a must-run or must-take contract sitting outside the merit order (hydro, nuclear, RE, and some thermal). Including either as free coal pins a state's marginal cost at zero.
- Coverage varies by day. A null cost always means 'this state did not publish that day', never 'coal was free'. Check before comparing across states or across time.
- declared_capability_mw is unusable. The portal labels the column MWh and publishes MW, and it disagrees with allocated capacity on ~45% of rows. It ships verbatim for completeness; do not compute on it.
- Scheduled energy is the day's total for the contract line. There is no sub-daily resolution in this feed.
CC-BY
Attribution required on any published use. Upstream public sources credited in the product description.
Cite as: India Energy Atlas (energymap.in), CC BY 4.0
A one-time export built fresh from the live India Energy Atlas database at purchase time, delivered as csv_gz, xlsx via a private tokened download link, with a per-state/per-month coverage report and a data dictionary included. 2018-01-01 to present, daily, across the 34 states/UTs the MERIT portal carries. The portal typically serves D-2. Six small UTs (Meghalaya, Mizoram, Nagaland, Puducherry, Tripura, Uttarakhand) publish no merit order at all and are absent by source, not by omission. ~2.04M of 2.69M rows carry a declared cost.
CC BY 4.0 — use it anywhere, including published work, with attribution: "India Energy Atlas (energymap.in), CC BY 4.0".
The catalog shows live freshness straight from the source tables (15-minute server cache). Exports are built at purchase time, and every known multi-day gap is disclosed in the coverage report on this page — we never sell around a hole silently.
Yes — the configurator lets you pick the time window, states and format before checkout, and the price scales with the window you pick.
← All datasets·Source: India Energy Atlas · api.energymap.in · coverage and samples regenerated weekly
| 2020-09 |
| 2021-05 |
| 2022-01 |
| 2022-09 |
| 2023-05 |
| 2024-01 |
| 2024-09 |
| 2025-05 |
| 2026-01 |
| text |
| Thermal | Hydro | Gas | Nuclear | Renewable |
| ownership | text | e.g. Central ISGS, State, IPP |
| plant_capacity_mw | float | Installed capacity of the station |
| allocated_capacity_mw | float | Capacity allocated to THIS state under the contract |
| variable_cost_rs_kwh | float | The declared variable (energy) charge, Rs/kWh, AT THE STATE PERIPHERY inclusive of interstate transmission losses. NULL means the generator declared nothing that day — never read it as zero. A literal 0.00 means a must-run or must-take contract outside the merit order, not free coal |
| fixed_cost_rs_kwh | float | Declared fixed/capacity charge, Rs/kWh |
| total_cost_rs_kwh | float | variable + fixed, as published |
| declared_capability_mw | float | Published by the portal under an MWh header but carried as MW, and it disagrees with allocated capacity on ~45% of rows. Shipped verbatim; do not compute on it |
| scheduled_mwh | float | Energy scheduled from this contract line that day |
Yes. Institutional buyers can request a pro-forma invoice and pay by bank transfer; the order unlocks automatically once payment is marked received. Stripe checkout (cards/UPI) is available for self-serve purchases.
Bid-area level price separation (N1/S1/E1/W1/A1) since Dec 2021, with derived corridor divergence aligned to Grid-India ATC revisions.
from ₹2,499
2022-01 → 2026-08
View & buy