ERCOT logo

Load Forecast (MTLF)

ERCOT's mid-term load forecast (MTLF) for the Texas grid, giving the expected electricity demand for each of the next seven days at hourly resolution.

Native record
weather zone x target hour x forecast vintage x model
hourly (7-day forecast) publication cadence
Evidence
Forecast data
Forward-looking values with an explicit issue time
In Ask the Grid
Zones on the ERCOT map
Values for the live grid surface

Overview

The forecast is broken out by ERCOT's eight weather zones plus a system-wide total, and a new vintage is issued every hour, so you can also see how the outlook for a given day shifts as it approaches. Operators use this to plan generation and reserves, while traders and researchers use it to anticipate price and tightness conditions and to study how forecasts evolve and where they miss. The official source is ERCOT report NP3-565-CD, Seven-Day Load Forecast by Weather Zone.

Query contract

For each target hour, select the row flagged in use from the latest source_time vintage that was actually available by the analysis cutoff. For forecast accuracy, source_time must be no later than event_time; keep both columns in the result so issue time and target time remain distinct.

Analysis rules

  • Do not sum forecast vintages.

Interpretation

  • system_total_mw is a forecast of gross system electricity demand, not net load and not the generation required after renewable output. Actual-minus-forecast is a gross-demand forecast error; a wind or solar generation shortfall does not by itself cause that error.
  • Never evaluate a historical forecast with a source_time after its event_time. That is a hindsight vintage, not a forecast that operators could have used.

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/ercot_load_forecast/query

Schema17

Column
Type
event_timeDateTime64(6, 'UTC')
source_timeDateTime64(6, 'UTC')
modelLowCardinality(String)
coast_mwNullable(Float64)
east_mwNullable(Float64)
far_west_mwNullable(Float64)
north_mwNullable(Float64)
north_central_mwNullable(Float64)
south_central_mwNullable(Float64)
southern_mwNullable(Float64)
west_mwNullable(Float64)
system_total_mwNullable(Float64)
in_use_flagNullable(Bool)
dst_flagNullable(Bool)
emil_idNullable(String)
doc_idNullable(Int64)
ingested_atDateTime64(6, 'UTC')

Sample data

event_timesource_timemodelcoast_mweast_mwfar_west_mwnorth_mwnorth_central_mwsouth_central_mwsouthern_mwwest_mwsystem_total_mwin_use_flagdst_flagemil_iddoc_idingested_at
2026-10-02 05:00:00.0000002026-09-25 03:30:00.000000X154551926.657332.33011635.5116127.900410035.79985082.91991903.6659499.7702truefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 03:30:00.000000M15465.92581847.51957549.85841741.137915181.00789466.07234874.31691490.658857616.4974falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 03:30:00.000000E315493.40041813.57584.18021825.7915100.59969487.12994843.68021305.7557454.0303falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 03:30:00.000000E215574.20021758.180174321796.8815023.29989453.254888.12011511.1357437.0602falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 03:30:00.000000E1148081716.727837.41991697.189914515.59209.21974875.68991376.5256036.2594falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 03:30:00.000000E163842140.87017762.14011838.6116684.599610476.79984985.83011489.3761762.2197falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 03:30:00.000000A615070.02731808.3287133.55271547.21914581.03718703.96094778.26511770.52455392.9141falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 03:30:00.000000A314340.01661763.0147038.72661590.813715218.07239095.9184772.90481892.87155712.337falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 02:30:00.000000X15432.79981923.767333.291634.3316137.0996100415055.87991909.459467.5593truefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 02:30:00.000000M15465.54491847.42167549.41261741.359915181.00789466.19244874.31051490.994957616.2446falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 02:30:00.000000E315492.90041813.487583.25981826.1115100.59969487.29984843.751305.2957452.6896falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 02:30:00.000000E215573.79981757.927433.00981797.180115023.29989453.44044888.16021511.8957438.7001falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 02:30:00.000000E114807.59961716.57836.83981697.3414515.59209.464875.68991378.556037.4293falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 02:30:00.000000E16383.40042140.87997760.39991838.9516684.599610476.79984985.64991488.7761759.4495falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 02:30:00.000000A615070.02731808.3287133.55271547.21914581.03718703.96094778.30321770.52455392.9522falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 02:30:00.000000A314340.01661763.0147038.70361590.813715218.07239095.9184772.90481892.87155712.314falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 01:30:00.000000X154441928.427304.51640.8516128.510039.79985053.91021908.1159448.09truefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 01:30:00.000000M15396.19141835.1847594.33981743.986915216.50599413.72954864.48731489.450757553.8755falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 01:30:00.000000E315492.79981813.357581.60011826.915100.59969487.44044843.79981304.4557450.9397falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 01:30:00.000000E215241.29981709.157664.50981811.930115267.29989217.049848451509.2157265.4493falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 01:30:00.000000E114807.70021716.157835.75981696.6414514.79989209.88964875.83981377.356034.0792falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 01:30:00.000000E16383.20022140.87997757.521839.6116684.599610476.70024985.47021488.180161756.1602falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 01:30:00.000000A615055.9591796.38997132.3121544.854414515.23148677.56844772.32711768.113355262.7555falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 01:30:00.000000A314337.65331754.68027037.94631587.905315216.25399093.73634774.39941892.708455695.2831falsefalse∅∅2026-09-25 04:12:16.810619
2026-10-02 05:00:00.0000002026-09-25 03:30:00.000000X154551926.657332.33011635.5116127.900410035.79985082.91991903.6659499.7702truefalse∅∅2026-09-25 03:42:42.988596

Coverage

100.0% complete0 gap days3,383 days with data
Show coverage history
Coverage: 100.0%Days with data: 3,383Gaps: 0
2026
2025
2024
2023
2022
2021
2020
2019
2018
2017
gaplessmore