
Hourly Solar Power Forecast
PJM's RTO-wide hourly solar forecast by publication vintage.
Native record
RTO target hour x issue vintage
Evidence
Forecast data
Time basis
Interval-start records
Overview
solar_forecast_mwh is utility-scale output aligned with the metered Solar row in pjm.gen_by_fuel; solar_forecast_btm_mwh is a separate behind-the-meter load-side estimate with no published metered generation actual. Historical evaluation must select a vintage issued no later than delivery. Source: PJM Market Data.
Query contract
Analysis rules
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.
HTTP endpoint
POST /api/v1/datasets/pjm_hourly_solar_power_forecast/queryNeed the full history of this dataset in Snowflake, Databricks or your own storage? Data services delivers it on a schedule.
Schema6
Column
Type
event_timeDateTime64(6, 'UTC')evaluated_at_utcDateTime64(6, 'UTC')datetime_ending_utcNullable(String)solar_forecast_mwhNullable(Float64)solar_forecast_btm_mwhNullable(Float64)ingested_atDateTime64(6, 'UTC')Sample data
| event_time | evaluated_at_utc | datetime_ending_utc | solar_forecast_mwh | solar_forecast_btm_mwh | ingested_at |
|---|---|---|---|---|---|
| 2026-10-21 01:00:00.000000 | 2026-10-19 02:00:00.000000 | 2026-10-21T02:00:00 | 0 | 0 | 2026-10-19 02:42:36.717434 |
| 2026-10-21 00:00:00.000000 | 2026-10-19 02:00:00.000000 | 2026-10-21T01:00:00 | 0 | 0 | 2026-10-19 02:42:36.717434 |
| 2026-10-21 00:00:00.000000 | 2026-10-19 01:00:00.000000 | 2026-10-21T01:00:00 | 0 | 0 | 2026-10-19 02:42:36.717434 |
| 2026-10-21 00:00:00.000000 | 2026-10-19 01:00:00.000000 | 2026-10-21T01:00:00 | 0 | 0 | 2026-10-19 01:42:38.905479 |
| 2026-10-20 23:00:00.000000 | 2026-10-19 02:00:00.000000 | 2026-10-21T00:00:00 | 0.136 | 0 | 2026-10-19 02:42:36.717434 |
| 2026-10-20 23:00:00.000000 | 2026-10-19 01:00:00.000000 | 2026-10-21T00:00:00 | 0.117 | 0 | 2026-10-19 02:42:36.717434 |
| 2026-10-20 23:00:00.000000 | 2026-10-19 00:00:00.000000 | 2026-10-21T00:00:00 | 0.116 | 0 | 2026-10-19 02:42:36.717434 |
| 2026-10-20 23:00:00.000000 | 2026-10-19 01:00:00.000000 | 2026-10-21T00:00:00 | 0.117 | 0 | 2026-10-19 01:42:38.905479 |
| 2026-10-20 23:00:00.000000 | 2026-10-19 00:00:00.000000 | 2026-10-21T00:00:00 | 0.116 | 0 | 2026-10-19 01:42:38.905479 |
| 2026-10-20 22:00:00.000000 | 2026-10-19 02:00:00.000000 | 2026-10-20T23:00:00 | 770.916 | 0 | 2026-10-19 02:42:36.717434 |
| 2026-10-20 22:00:00.000000 | 2026-10-19 01:00:00.000000 | 2026-10-20T23:00:00 | 758.417 | 0 | 2026-10-19 02:42:36.717434 |
| 2026-10-20 22:00:00.000000 | 2026-10-19 00:00:00.000000 | 2026-10-20T23:00:00 | 753.402 | 0 | 2026-10-19 02:42:36.717434 |
| 2026-10-20 22:00:00.000000 | 2026-10-18 23:00:00.000000 | 2026-10-20T23:00:00 | 752.733 | 0 | 2026-10-19 02:42:38.086844 |
| 2026-10-20 22:00:00.000000 | 2026-10-19 01:00:00.000000 | 2026-10-20T23:00:00 | 758.417 | 0 | 2026-10-19 01:42:38.905479 |
| 2026-10-20 22:00:00.000000 | 2026-10-19 00:00:00.000000 | 2026-10-20T23:00:00 | 753.402 | 0 | 2026-10-19 01:42:38.905479 |
| 2026-10-20 22:00:00.000000 | 2026-10-18 23:00:00.000000 | 2026-10-20T23:00:00 | 752.733 | 0 | 2026-10-19 01:42:38.905479 |
| 2026-10-20 21:00:00.000000 | 2026-10-19 02:00:00.000000 | 2026-10-20T22:00:00 | 5892.857 | 286.149 | 2026-10-19 02:42:36.717434 |
| 2026-10-20 21:00:00.000000 | 2026-10-19 01:00:00.000000 | 2026-10-20T22:00:00 | 5805.867 | 286.149 | 2026-10-19 02:42:36.717434 |
| 2026-10-20 21:00:00.000000 | 2026-10-19 00:00:00.000000 | 2026-10-20T22:00:00 | 5801.221 | 286.149 | 2026-10-19 02:42:36.717434 |
| 2026-10-20 21:00:00.000000 | 2026-10-18 23:00:00.000000 | 2026-10-20T22:00:00 | 5783.72 | 286.149 | 2026-10-19 02:42:38.086844 |
| 2026-10-20 21:00:00.000000 | 2026-10-18 22:00:00.000000 | 2026-10-20T22:00:00 | 5782.45 | 290.357 | 2026-10-19 02:42:38.086844 |
| 2026-10-20 21:00:00.000000 | 2026-10-19 01:00:00.000000 | 2026-10-20T22:00:00 | 5805.867 | 286.149 | 2026-10-19 01:42:38.905479 |
| 2026-10-20 21:00:00.000000 | 2026-10-19 00:00:00.000000 | 2026-10-20T22:00:00 | 5801.221 | 286.149 | 2026-10-19 01:42:38.905479 |
| 2026-10-20 21:00:00.000000 | 2026-10-18 23:00:00.000000 | 2026-10-20T22:00:00 | 5783.72 | 286.149 | 2026-10-19 01:42:38.905479 |
| 2026-10-20 21:00:00.000000 | 2026-10-18 22:00:00.000000 | 2026-10-20T22:00:00 | 5782.45 | 290.357 | 2026-10-19 01:42:40.211807 |
Coverage
100.0% complete0 gap days72 days with data
Show coverage history
Coverage: 100.0%Days with data: 72Gaps: 0
2026
gaplessmore
