ERCOT logo

SCED Energy Storage Resource Data (60-Day)

Per-battery, per-interval telemetry for every Energy Storage Resource in ERCOT, from the 60-Day SCED Disclosure Reports.

Native record
storage resource x QSE x SCED interval, disclosed 60 days later
5-minute (SCED), 60-day disclosure publication cadence
Evidence
Observed market data
Published observations from the named source
Time basis
Point-in-time records
UTC · event_time

Overview

Real-Time Co-optimization plus Batteries (RTC+B) created this subreport at go-live on 5 December 2025, which is why history starts there rather than earlier. Each row is one SCED run (roughly every five minutes) for one storage resource and its QSE, and it is the only source in the product that carries a battery's STATE OF CHARGE: soc_mwh alongside min_soc_mwh and max_soc_mwh, with the SCED dispatch target (base_point), telemetered net output, high and low sustainable and dispatch limits (hsl/lsl, hdl/ldl), ramp rates, telemetered resource status, per-service ancillary capability and awards (Reg-Up, Reg-Down, RRS-PFR, RRS-FFR, ECRS, Non-Spin), and start-up and minimum-energy offers. Two things follow that no other dataset gives you: fleet or per-unit state of charge at a point in time, and each battery's ENERGY capacity in MWh, which is what makes storage DURATION computable here — how many hours a battery can discharge at full power is max_soc_mwh divided by hsl, so one-hour, 1.5-hour, two-hour and longer-duration batteries can be counted, ranked and bucketed from this table rather than from a specification sheet. It is the only source in the product that carries battery energy capacity in MWh at all. Because ERCOT publishes the disclosure on a 60-day regulatory delay, the newest day available is always about two months old. Measured 2026-09-07: 22.3 million rows over 338 storage resources, with soc_mwh and max_soc_mwh populated on every row. The official source is ERCOT report NP3-965-ER, 60-Day SCED Disclosure Reports.

Query contract

Preserve one canonical row per (event_time, qse_name, resource_name) before aggregating.

Analysis rules

  • Storage duration is max_soc_mwh / hsl on the same row, per resource; take one row per resource (for example the latest, or a max over the window) before bucketing, never an average across intervals of a ratio.
  • A fleet state of charge at an instant is sum(soc_mwh) over one interval with one row per resource — deduplicate to the declared grain first, because a resource appears once per SCED run and summing across an hour multiplies the fleet by the number of runs in it.

Interpretation

  • This subreport begins at RTC+B go-live on 2025-12-05. There is no storage state of charge here before that date anywhere, which is a market-design boundary rather than missing coverage.
  • These records come from a disclosure ERCOT releases sixty days after the fact. The most recent day available is always about two months old. For recent or live storage behaviour, use the live grid feeds instead.

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

Schema42

Column
Type
event_timeDateTime64(6, 'UTC')
qse_nameLowCardinality(String)
resource_nameLowCardinality(String)
dme_nameNullable(String)
resource_typeNullable(String)
soc_mwhNullable(Float64)
base_pointNullable(Float64)
hslNullable(Float64)
lslNullable(Float64)
disclosure_dateNullable(Date32)
emil_idNullable(String)
doc_idNullable(Int64)
subreport_memberNullable(String)
ingested_atDateTime64(6, 'UTC')
repeated_hour_flagNullable(String)
telemetered_resource_statusNullable(String)
output_scheduleNullable(Float64)
hdlNullable(Float64)
ldlNullable(Float64)
telemetered_net_outputNullable(Float64)
ramp_rate_upNullable(Float64)
ramp_rate_downNullable(Float64)
as_capability_regupNullable(Float64)
as_capability_regdnNullable(Float64)
as_capability_ecrsNullable(Float64)
as_capability_nspinNullable(Float64)
as_capability_rrspfrNullable(Float64)
as_capability_rrsffrNullable(Float64)
min_soc_mwhNullable(Float64)
max_soc_mwhNullable(Float64)
as_awards_nspinNullable(Float64)
as_awards_rrsffrNullable(Float64)
as_awards_rrspfrNullable(Float64)
as_awards_ecrsNullable(Float64)
as_awards_regupNullable(Float64)
as_awards_regdnNullable(Float64)
bid_typeNullable(String)
start_up_cold_offerNullable(Float64)
start_up_hot_offerNullable(Float64)
start_up_inter_offerNullable(Float64)
min_gen_costNullable(Float64)
proxy_extensionNullable(String)

Sample data

event_timeqse_nameresource_namedme_nameresource_typesoc_mwhbase_pointhsllsldisclosure_dateemil_iddoc_idsubreport_memberingested_atrepeated_hour_flagtelemetered_resource_statusoutput_schedulehdlldltelemetered_net_outputramp_rate_upramp_rate_downas_capability_regupas_capability_regdnas_capability_ecrsas_capability_nspinas_capability_rrspfras_capability_rrsffrmin_soc_mwhmax_soc_mwhas_awards_nspinas_awards_rrsffras_awards_rrspfras_awards_ecrsas_awards_regupas_awards_regdnbid_typestart_up_cold_offerstart_up_hot_offerstart_up_inter_offermin_gen_costproxy_extension
2026-07-09 04:55:15.000000QTOTL5MYR_ESR2YTOTALESR3.371700-44.92026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON00-44.8972473144531-0.1182914.736814.736818.502418.46458.82750.368914.736803.371754.08833PTNo
2026-07-09 04:55:15.000000QTOTL5MYR_ESR1YTOTALESR5.8381-1.200000762939450-74.32026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON00-74.2999954223633-0.7124115.263215.263230.5230.5214.60.6115.263205.8381108.17660.0893PTNo
2026-07-09 04:55:15.000000QTOTL5CTW_ESR1YTOTALESR9.6402.3-148.52026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON02.29999995231628-148.5-1.3629.729.759.659.6303.733329.709.64214.353PTNo
2026-07-09 04:55:15.000000QTOTL4DAN_ESR2YTOTALESR9.317100-71.72026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON00-71.6616516113281-0.3614.5414.5429.598629.598614.69960.857614.5405.8108.17663PTNo
2026-07-09 04:55:15.000000QTOTL4DAN_ESR1YTOTALESR10.068700-75.32026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON00-75.2806930541992-0.3315.263215.263230.5230.5215.260.8915.263206108.17663PTNo
2026-07-09 04:55:15.000000QTOT16HRMS_SLR_ESR1YBELSTESR0-0.190182998776436002026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NONTEST-0.19018299877643600-0.190182020000000003PTNo
2026-07-09 04:55:15.000000QTENSKEUNICE_ESR1Y2WPERESR11.347500-32026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON00-3-0.320328.18.1002.2010.306263PTNo
2026-07-09 04:55:15.000000QTEN37SEVNF_ES_ESR1YSEVFLESR154.70100-1002026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON0100-100-0.3064410010039.9639.96202.1157012.54250.730.7219.283PTNo
2026-07-09 04:55:15.000000QTEN36TSECA_ES_ESR1YTIERSESR67.10100-1002026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON0100-100-0.627151001004040202.1157012.54250.71.5248.483PTNo
2026-07-09 04:55:15.000000QTEN34SLK_BESS_ESR1YMENTBESR186.7090002026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NONTEST0000404000000004003PTNo
2026-07-09 04:55:15.000000QTEN34PIN_BESS_ESR1YPINTPESR38.3790200-2002026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON0200-200-0.5889220020000000004003PTNo
2026-07-09 04:55:15.000000QTEN34HEADCAMP_ESR1YMOMEHESR28.2095-14.3000001907349150-1002026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON0125.483016967773-100-8.3919826.77526.77500000003003PTNo
2026-07-09 04:55:15.000000QTEN33SOLC_SLR_ESR2YIPQBESR324.4722-0.238323286175728160-1602026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NONTEST-0.238323286175728-0.238323286175728-0.238323286175728-0.238321601600000000324.47223PTNo
2026-07-09 04:55:15.000000QTEN33SOLC_SLR_ESR1YIPQBESR312.1339-0.223065420985222160-1602026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NONTEST-0.223065420985222-0.223065420985222-0.223065420985222-0.223071601600000000312.37383PTNo
2026-07-09 04:55:15.000000QTEN33QTUM_SLR_ESR2YIPQB2ESR170.5773-0.258396208286285160-1602026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NONTEST-0.258396208286285-0.258396208286285-0.258396208286285-0.25841601600000000280.97563PTNo
2026-07-09 04:55:15.000000QTEN33QTUM_SLR_ESR1YIPQB2ESR181.5854-0.253996461629868160-1602026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NONTEST-0.253996461629868-0.253996461629868-0.253996461629868-0.2541601600000000288.9343PTNo
2026-07-09 04:55:15.000000QTEN32BEXAR_ES_ESR1YBEXESESR91.5364-6100-1002026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON0100-100-3.70157100100009.80.8200010021.63PTNo
2026-07-09 04:55:15.000000QTEN32ARY_BESS_ESR1YBTCSESR20.9034-0.70059710741043120-202026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NONTEST-0.700597107410431-0.700597107410431-0.700597107410431-0.7006181800000001803PTNo
2026-07-09 04:55:15.000000QTEN30UTOPIA_ESR1YREGUTESR0.709903-9.92026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON02.99399995803833-9.89999961853027-0.01452330000000.713.39373PTNo
2026-07-09 04:55:15.000000QTEN30PIRATE_ESR1YREGSIESR5.3898-2.510-4.52026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON09.97999954223633-4.5-2.80313332.862.860.720.08674.900.713.29984.23PTYes
2026-07-09 04:55:15.000000QTEN30PALACIOS_ESR1YREGPAESR1.933502.5-2.52026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON02.49499988555908-2.5-0.0147133000.440100.6712.13PTNo
2026-07-09 04:55:15.000000QTEN30MUENSTER_ESR1YREGMUESR1.0529-0.40000009536743210-102026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON09.97999954223633-9.97999954223633-0.39171332.982.981.490.16673.900.713.28640.30.16263PTYes
2026-07-09 04:55:15.000000QTEN30MOORE_FL_ESR1YREGISESR0.693701.2-22026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NON01.24699997901917-2-0.02098332.12.11.1800.500.6712.13PTNo
2026-07-09 04:55:15.000000QTEN30MILTON_ESR1YREGMIESR000-9.92026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NOUT000033000000013.34013PTNo
2026-07-09 04:55:15.000000QTEN30MEDINA1_ESR1YREMEDESR00002026-09-06NP3-965-ER127117168460d_ESR_Data_in_SCED-06-SEP-26.csv2026-09-06 14:37:46.754702NOUT000077000000013.41723PTNo

Coverage

Published on a 60-day disclosure lag — ERCOT releases these reports 60 days after the fact, so the most recent ~60 days aren’t available yet. That trailing window is expected, not a gap in the data.

97.7% complete5 gap days212 days with data
Show coverage history ▾
Coverage: 97.7%Days with data: 212Gaps: 5
2026
2025
gaplessmore