Energy Generation and Consumption (ASIA)

ENRGEN971· 403K records · 10 tables · v1.0.0 · Updated 2026-08-11
Energy Power & Utilities Dataset API
CSV JSON SQLpower-generationenergy-transitionfuel-priceswholesale-pricesoutagesasiatime-seriesutilities

Overview

A decade of the Asian power sector at plant-month grain. Eight markets, 40 generated companies, 502 generated plants across coal, gas, hydro, solar, wind, nuclear and geothermal, with monthly generation, capacity factors and availability for every plant from its commissioning month, and 340,798 outage events beneath them. The decade carries the industry's real arc, stated generically: coal's generation share falls year after year, solar grows explosively from a tiny 2016 base as its plants commission through the period, demand dips in 2020 and then compounds, and a fuel price shock beginning in 2021 peaks in 2022 and passes through to wholesale prices in every market, which is asserted rather than decorated. Fuel price indices, wholesale prices, sector demand splits and an annual installed-capacity table make the transition queryable from every side. Country monthly generation equals the exact sum of its plant rows and the build re-verifies it; capacity factors respect technology bounds and generation is always zero before commissioning. Built for energy analytics, transition modelling, price pass-through studies, outage and availability logic, ETL pipelines and BI. The licence and disclosure sections state the provenance of the data.

Analytics

Select a country on the map to see the figures the dataset records for it.

IndonesiaMalaysiaThailandVietnamPhilippinesJapanKorea, Republic ofIndia

Select a country on the map to see the figures the dataset records for it.

Row Counts by Table

Counted from the files that ship, not estimated.

TableRows
enr_generation_monthly55,356
enr_outages340,798
enr_plants502
enr_wholesale_prices1,008
enr_fuel_prices378
enr_demand_monthly4,032
enr_capacity_annual616
enr_companies40
enr_countries8
enr_technologies7

Table Relationships

One parent record and seven child tables, each joined back on the same key.

70%
Loading diagram

Schema

Every table ships with typed columns, referential integrity, and documentation.

enr_generation_monthly· Rows: 55,356
ColumnTypeDescription
generation_idvarchar(16)Generation row key. Primary key.
plant_idvarchar(8)The plant this row measures.
year_monthvarchar(16)Month of generation, 2016-01 to 2026-06. Import as text: spreadsheets convert values like 2022-08 to dates.
generation_gwhnumeric(10,2)Generation in gigawatt hours. Three documented rows report megawatt hours instead, three orders of magnitude off their plant trend; finding them is the exercise.
capacity_factor_pctnumeric(5,1)Generation over nameplate for the month, in percent. Respects technology bounds.
availability_pctnumeric(5,1)Share of the month the plant was available, in percent.
enr_outages· Rows: 340,798
ColumnTypeDescription
outage_idvarchar(16)Outage event key. Primary key.
plant_idvarchar(8)The plant that went out.
year_monthvarchar(16)Month of the event. Import as text.
start_datedateStart date of the event.
duration_hoursintegerDuration in hours.
cause_codevarchar(16)Coded cause: PLANNED, FORCED_MECH, FORCED_ELEC, FUEL, GRID or WEATHER.
cause_descriptionvarchar(32)The cause in words.

+2 more columns in enr_outages. The full schema ships with the download.

enr_plants· Rows: 502
ColumnTypeDescription
plant_idvarchar(8)Plant key. Primary key.
country_codevarchar(8)The market the plant sits in.
company_idvarchar(8)The owning company.
plant_namevarchar(56)Generated plant name. One name is deliberately shared across two countries, unlinked.
technology_codevarchar(16)The generation technology of the plant.
capacity_mwintegerInstalled capacity in megawatts.
commissioned_yearintegerYear the plant entered service. Renewable plants commission late in the decade; generation is always zero before this year.

+2 more columns in enr_plants. The full schema ships with the download.

enr_wholesale_prices· Rows: 1,008
ColumnTypeDescription
wholesale_idvarchar(8)Wholesale price row key. Primary key.
country_codevarchar(8)The market the price clears in.
year_monthvarchar(16)Month of the price. Import as text.
price_valuenumeric(7,2)Generated wholesale power price. Tracks the fuel index through the shock; the pass-through is asserted.
price_unitvarchar(16)Unit of the price: USD_MWH.
enr_fuel_prices· Rows: 378
ColumnTypeDescription
fuel_price_idvarchar(8)Fuel price row key. Primary key.
fuel_codevarchar(24)COAL_THERMAL, GAS_LNG or OIL_BRENTLIKE.
year_monthvarchar(16)Month of the index. Import as text.
price_indexnumeric(7,2)Generated price index, base 100 in 2016, with the 2021 to 2022 shock and partial normalisation.
enr_demand_monthly· Rows: 4,032
ColumnTypeDescription
demand_idvarchar(16)Demand row key. Primary key.
country_codevarchar(8)The market.
year_monthvarchar(16)Month of demand. Import as text.
sectorvarchar(24)residential, commercial, industrial or transport_other.
demand_gwhnumeric(10,2)Demand in gigawatt hours for the sector that month, consistent with generation.
enr_capacity_annual· Rows: 616
ColumnTypeDescription
capacity_idvarchar(8)Capacity row key. Primary key.
country_codevarchar(8)The market.
technology_codevarchar(16)The technology.
yearintegerCalendar year.
installed_mwintegerInstalled megawatts at year end, exactly consistent with plant commissioning years. The transition table.
enr_companies· Rows: 40
ColumnTypeDescription
company_idvarchar(8)Company key. Primary key.
company_namevarchar(40)Generated utility or producer name. Collisions with real utilities are a build failure.
home_country_codevarchar(8)The market the company is based in.
company_typevarchar(32)state_utility, independent_producer or industrial_captive.
enr_countries· Rows: 8
ColumnTypeDescription
country_codevarchar(8)Market key, ISO 3166-1 alpha-2. Primary key. The eight markets are the only real geography.
country_namevarchar(24)Country name in English.
country_descriptionvarchar(104)What is generated below this market.
enr_technologies· Rows: 7
ColumnTypeDescription
technology_codevarchar(16)Technology key. Primary key: COAL, GAS, HYDRO, SOLAR, WIND, NUCLEAR or GEO.
technology_namevarchar(24)The technology in words.
capacity_factor_lownumeric(5,2)Lower bound of the plausible capacity factor band for the technology.
capacity_factor_highnumeric(5,2)Upper bound of the plausible capacity factor band. Generation respects these bounds.

Sample Data

A snapshot of real rows from the dataset (values are fully synthetic).

generation_idplant_idyear_monthgeneration_gwhcapacity_factor_pctavailability_pct
GN00001PL0012016-01918.5272.589.8
GN00002PL0012016-02876.0669.283.2
GN00003PL0012016-03708.995661.6

Version History

v1.0.02026-08-11First release. Eight markets, 502 plants, seven technologies, monthly generation and prices, sector demand, annual capacity and 340,798 outage events, 2016-01 to 2026-06.

Related Datasets