ERCOT Net Load Forecast and Actuals

The below examples show the SQL for calculating Actual and Forecasted Net Load in ERCOT using tables available our Snowflake Marketplace Listing.

Net Load Actual

ERCOT net loadarrow-up-right shows the hourly net load across ERCOT. Net load is calculated by combining solar and wind generation and subtracting that from load. Net load is a clear metric that helps illustrate how much load is met by thermal and other dispatchable resources.

WITH solar_agg AS (
  SELECT
    ercot_solar_actual_and_forecast_by_geo_region_hourly.interval_start_local,
    -- actuals are repeated across multiple reports, 
    -- so we just select one using max()
    max(
      ercot_solar_actual_and_forecast_by_geo_region_hourly.gen_system_wide
    ) AS gen_system_wide
  FROM
    ercot_solar_actual_and_forecast_by_geo_region_hourly
  WHERE
    ercot_solar_actual_and_forecast_by_geo_region_hourly.gen_system_wide IS NOT NULL
  GROUP BY
    ercot_solar_actual_and_forecast_by_geo_region_hourly.interval_start_local
),
wind_agg AS (
  SELECT
    ercot_wind_actual_and_forecast_by_geo_region_hourly.interval_start_local,
    max(
      ercot_wind_actual_and_forecast_by_geo_region_hourly.gen_system_wide
    ) AS gen_system_wide
  FROM
    ercot_wind_actual_and_forecast_by_geo_region_hourly
  WHERE
    ercot_wind_actual_and_forecast_by_geo_region_hourly.gen_system_wide IS NOT NULL
  GROUP BY
    ercot_wind_actual_and_forecast_by_geo_region_hourly.interval_start_local
)
SELECT
  l.interval_start_local,
  l.interval_end_local,
  l.total AS load,
  s.gen_system_wide AS solar,
  w.gen_system_wide AS wind,
  l.total - s.gen_system_wide - w.gen_system_wide AS net_load
FROM
  ercot_load_by_forecast_zone l
  LEFT JOIN solar_agg s ON l.interval_start_local = s.interval_start_local
  LEFT JOIN wind_agg w ON l.interval_start_local = w.interval_start_local
WHERE
  l.total IS NOT NULL
ORDER BY
  l.interval_start_local DESC
LIMIT 1000;

Net Load Forecast

ERCOT net load forecastarrow-up-right is the forecasted net load levels for the current day and next six days in ERCOT. This is calculated by combining forecasted wind and solar generation and subtracting that from load forecasts. Net load is a clear metric that helps illustrate how much load is met by thermal and other dispatchable resources, which is particularly valuable as the net load peak has grown increasingly volatile.

Last updated

Was this helpful?