energy_generation_state
Plant-level electricity generation and fuel consumption from EIA Form 923, at state grain. One row per plant × prime_mover × fuel_type × year (2013–2026). EIA-923 does not carry county; join to energy_generators_county on plant_code to get county-level generation.
tier —admin_record
overview
overview
186,152 plant-prime-fuel-year rows. State-grain because EIA-923 does not carry county directly.
current vintage — 2024 final + 2025 monthly + 2026 partial
history — EIA-923: 2008-present in source
provenance
source & licensing
authority
U.S. Energy Information Administration
dataset
Power Plant Operations Report (EIA-923)
license
—
citation
U.S. Energy Information Administration. Form EIA-923 - state-grain generation, 2013-2026.
schema
fields
| name | type | definition |
|---|---|---|
| balancing_authority_code | string | EIA code identifying the balancing authority responsible for maintaining the real-time balance of electricity supply and demand in the grid region where the plant operates. |
| country_id | string | ISO alpha-2 country code (always 'US' for domestic tables). |
| elec_fuel_mmbtu | float64 · million British thermal units (MMBtu) | Fuel energy consumed specifically for electricity generation, excluding any fuel used for non-electric heat or steam applications. Always less than or equal to total_fuel_mmbtu for combined heat and power plants. |
| fuel_typekey | string | AER fuel type classification code identifying the primary energy source consumed by the plant (e.g., NG = natural gas, COL = coal, SUN = solar). |
| naics_code | string | North American Industry Classification System (NAICS) code describing the operator's primary industry sector.Joins dim.naics_codes on naics_code. |
| net_generation_mwh | float64 · megawatt-hours | Annual net electricity generation, equal to gross generation minus electricity consumed by the plant itself for station use. Higher values indicate greater electricity output delivered to the grid. |
| operator_id | string | EIA-assigned identifier for the entity responsible for operating the plant. |
| operator_name | string | Legal name of the plant operator as reported to EIA. |
| plant_codekey | int64 | EIA-assigned numeric identifier for the power plant. Matches plant_code in energy_generators_county for cross-table joins.Joins dim.plants on plant_code. |
| plant_name | string | Name of the power plant as reported to EIA by the operator. |
| prime_moverkey | string | EIA code identifying the mechanical device that drives the generator (e.g., ST = steam turbine, GT = combustion turbine, PV = photovoltaic, WT = wind turbine). |
| sector_name | string | EIA utility sector classification (e.g., Electric Utility, Independent Power Producer) describing the operator's regulatory and market role. |
| state | string | Two-letter USPS abbreviation for the state in which the plant is located. |
| state_id | string | 2-character FIPS code identifying the state.Joins dim.states on state_id. |
| total_fuel_mmbtu | float64 · million British thermal units (MMBtu) | Total fuel energy consumed across all end uses — including both electricity generation and direct heat production — expressed in MMBtu. Higher values indicate greater total energy input to the plant. |
| total_fuel_quantity | float64 · original reported units (tons, Mcf, or barrels) | Physical quantity of fuel consumed, reported in the unit native to the fuel type — short tons for coal and biomass, thousand cubic feet (Mcf) for natural gas, and barrels for petroleum products. Compare across plants only after converting to a common energy unit such as MMBtu. |
| yearkey | int64 | Reference year of the observation. |
relationships
joins
primary key
plant_code, prime_mover, fuel_type, year
common joins
energy_generators_county on plant_code
energy_scorecard_county_year on (plant_code -> county_id, year)
usage
how to use this table
method
Plant-level EIA-923 generation aggregated to plant x prime_mover x fuel x year. State assignment from plant location field.
do not use for
County-direct queries (join to energy_generators_county on plant_code); end-use sectoral consumption.
known issues
Same EIA-923 caveats. State grain limits county-level analysis.
last updated · May 5, 2026