NYISO Generation Mix by Fuel
What is physically generating in NYISO, in megawatts by fuel, one row per interval.
Overview
1,143,328 intervals, 2015-12 to now, usable from 2018-01. Columns: gas_mw, dual_fuel_mw, other_fossil_mw, nuclear_mw, hydro_mw, wind_mw, other_renewables_mw. NYISO reports no coal (its last coal plant retired in 2020), no grid-scale solar as its own category (it sits inside other_renewables, and behind-the-meter solar is a separate feed), and no storage. Those columns are absent rather than present-and-NULL: a column exists here where the data exists. Wide rather than long: a whole interval's mix is one row, so shares are computed across columns in that row and the timestamp does not repeat once per fuel. "Which fuel is largest" is greatest() across the columns, or simply reading the row.
Query contract
Analysis rules
Interpretation
Access
Query from your own tools
Use the guarded HTTP endpoint directly, or connect an MCP client and load the dataset contract with describe_data before calling query_data.
POST /api/v1/datasets/nyiso_generation_mix/queryNeed the full history of this dataset in Snowflake, Databricks or your own storage? Data services delivers it on a schedule.
Schema9
event_timeDateTime64(6, 'UTC')gas_mwNullable(Float64)dual_fuel_mwNullable(Float64)other_fossil_mwNullable(Float64)nuclear_mwNullable(Float64)hydro_mwNullable(Float64)wind_mwNullable(Float64)other_renewables_mwNullable(Float64)sourceLowCardinality(String)Sample data
| event_time | gas_mw | dual_fuel_mw | other_fossil_mw | nuclear_mw | hydro_mw | wind_mw | other_renewables_mw | source |
|---|---|---|---|---|---|---|---|---|
| 2026-10-12 08:15:00.000000 | 2824 | 2940 | 0 | 3309 | 1562 | 537 | 199 | live |
| 2026-10-12 08:10:00.000000 | 2816 | 2952 | 0 | 3309 | 1550 | 535 | 197 | live |
| 2026-10-12 08:05:00.000000 | 2810 | 2958 | 0 | 3309 | 1550 | 516 | 198 | live |
| 2026-10-12 08:00:00.000000 | 2824 | 2987 | 0 | 3310 | 1563 | 495 | 198 | live |
| 2026-10-12 07:55:00.000000 | 2811 | 2998 | 0 | 3310 | 1570 | 479 | 196 | live |
| 2026-10-12 07:50:00.000000 | 2796 | 2999 | 0 | 3310 | 1564 | 465 | 197 | live |
| 2026-10-12 07:45:00.000000 | 2794 | 3022 | 0 | 3312 | 1562 | 461 | 197 | live |
| 2026-10-12 07:40:00.000000 | 2791 | 3038 | 0 | 3312 | 1558 | 457 | 195 | live |
| 2026-10-12 07:35:00.000000 | 2801 | 3045 | 0 | 3314 | 1568 | 437 | 197 | live |
| 2026-10-12 07:30:00.000000 | 2788 | 3043 | 0 | 3313 | 1556 | 417 | 196 | live |
| 2026-10-12 07:25:00.000000 | 2788 | 3075 | 0 | 3313 | 1554 | 404 | 195 | live |
| 2026-10-12 07:20:00.000000 | 2790 | 3115 | 0 | 3313 | 1566 | 400 | 196 | live |
| 2026-10-12 07:15:00.000000 | 2776 | 3150 | 0 | 3313 | 1542 | 398 | 198 | live |
| 2026-10-12 07:10:00.000000 | 2808 | 3174 | 0 | 3311 | 1565 | 389 | 198 | live |
| 2026-10-12 07:05:00.000000 | 2814 | 3156 | 0 | 3313 | 1566 | 363 | 195 | live |
| 2026-10-12 07:00:00.000000 | 2816 | 3152 | 0 | 3313 | 1567 | 338 | 196 | live |
| 2026-10-12 06:55:00.000000 | 2817 | 3137 | 0 | 3312 | 1565 | 334 | 198 | live |
| 2026-10-12 06:50:00.000000 | 2828 | 3144 | 0 | 3312 | 1571 | 318 | 199 | live |
| 2026-10-12 06:45:00.000000 | 2828 | 3155 | 0 | 3315 | 1559 | 312 | 196 | live |
| 2026-10-12 06:40:00.000000 | 2841 | 3158 | 0 | 3312 | 1553 | 317 | 195 | live |
| 2026-10-12 06:35:00.000000 | 2809 | 3165 | 0 | 3312 | 1543 | 322 | 194 | live |
| 2026-10-12 06:30:00.000000 | 2773 | 3160 | 0 | 3312 | 1552 | 320 | 196 | live |
| 2026-10-12 06:25:00.000000 | 2774 | 3191 | 0 | 3312 | 1561 | 313 | 195 | live |
| 2026-10-12 06:20:00.000000 | 2876 | 3208 | 0 | 3313 | 1564 | 302 | 196 | live |
| 2026-10-12 06:15:00.000000 | 2976 | 3229 | 0 | 3313 | 1531 | 292 | 196 | live |