ERCOT logo

LMP by Bus

Locational marginal prices for each electrical bus in ERCOT, produced by Security Constrained Economic Dispatch (SCED) roughly every five minutes.

Native record
event_time x bus_name
5-minute (SCED) publication cadence
Evidence
Observed market data
Published observations from the named source
Time basis
Point-in-time records
UTC · event_time

Overview

This is the finest public spatial view of observed ERCOT price variation and supports bus-level ranking, history, and basis analysis. A bus price or price spread alone does not identify a binding constraint, congestion component, or electrical relationship to another entity; those claims require direct component or attribution evidence.

Query contract

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

Analysis rules

  • Group only after preserving the declared grain: event_time, bus_name.

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

Schema7

Column
Type
event_timeDateTime64(6, 'UTC')
bus_nameLowCardinality(String)
lmpNullable(Float64)
dst_flagNullable(Bool)
emil_idNullable(String)
doc_idNullable(Int64)
ingested_atDateTime64(6, 'UTC')

Sample data

event_timebus_namelmpdst_flagemil_iddoc_idingested_at
2026-09-26 03:50:20.000000_T2∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000_PR_E_1∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000_LD2∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000_LD1∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000_BI_138L∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000_BI_138J∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000_AZ_L_D∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000_AZ_E_1∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000_AK__AK_G1∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZPT4671∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZPT4670∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZPT4669∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZIONHILL∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZIER_LN1∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZIER_LD1∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZIER_ALL∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZEPHYR∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZEN_____345S∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZEN_____345Q∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZEN_____345O∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZEN_____345M∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZEN_____345I∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZEN_____345D∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZEN_____345C∅∅∅∅2026-09-26 03:58:15.676463
2026-09-26 03:50:20.000000ZEN_____345B∅∅∅∅2026-09-26 03:58:15.676463

Coverage

Showing the last 218 days of a 3,556-day history (Jan 1, 2017 → Sep 26, 2026). This dataset holds 16.3B rows — too many to count day by day on every visit — so the calendar and the figures below cover the window from Feb 21, 2026.

100.0% complete0 gap days218 days with data
Show coverage history
Coverage: 100.0%Days with data: 218Gaps: 0
2026
gaplessmore