BPA Balancing Area Load and Generation

BPA balancing authority load, wind, solar, hydro, thermal, nuclear and net interchange every five minutes since 2007, as BPA publishes them, with the live seven-day feed beside the yearly workbooks.

One row per
feed x 5-minute instant
5-minute cadence
Evidence
Observed market data
Published observations from the named source
Time basis
Point-in-time records
UTC · event_time

Overview

Query contract
Preserve one canonical row per (feed, event_time) before aggregating.
Analysis rules
Pick one feed per question: annual_workbook for history, live_7day for the last day the workbook does not yet hold. Never sum the two feeds for the same instant.
Interpretation
BPA prints Pacific prevailing time; event_time is UTC, resolved in file order across daylight-saving changes.thermal_mw is total thermal until mid-2017; from then fossil_biomass_mw and nuclear_mw split it. Columns are NULL where a year did not print them.

Access

Download
Query it in SQL, download it, or read it with an API key. Download data
MCP
Connect an MCP client and load the contract with describe_data before calling query_data.BPA MCPAPI reference
HTTP endpoint
POST /api/v1/datasets/bpa_balancing_area_5m/query
Full history
Delivered to Snowflake, Databricks or your own storage on a schedule by Data services.
More coverage

Schema

18 columns
ColumnType
event_timeDateTime64(6, 'UTC')
feedLowCardinality(String)
load_mwNullable(Float64)
wind_mwNullable(Float64)
solar_mwNullable(Float64)
ver_mwNullable(Float64)
hydro_mwNullable(Float64)
thermal_mwNullable(Float64)
fossil_biomass_mwNullable(Float64)
nuclear_mwNullable(Float64)
net_interchange_mwNullable(Float64)
wind_basepoint_mwNullable(Float64)
wind_base_schedule_mwNullable(Float64)
solar_basepoint_mwNullable(Float64)
solar_base_schedule_mwNullable(Float64)
oversupply_mitigation_mwNullable(Float64)
source_fileString
ingested_atDateTime64(6, 'UTC')

Sample data

event_timefeedload_mwwind_mwsolar_mwver_mwhydro_mwthermal_mwfossil_biomass_mwnuclear_mwnet_interchange_mwwind_basepoint_mwwind_base_schedule_mwsolar_basepoint_mwsolar_base_schedule_mwoversupply_mitigation_mwsource_fileingested_at
2026-11-03 07:55:00.000000annual_workbook65181293∅4226∅1178115021212090.6462478637695343.779723882675171∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:50:00.000000annual_workbook66111354∅4281∅11791153181.5107100.4099273681640644.402437686920166∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:45:00.000000annual_workbook6589125.87805175781253∅4326∅11791152238112100.4838714599609444.477320194244385∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:40:00.000000annual_workbook6683102.56253∅4326∅11791152120129100.5578155517578144.5522027015686035∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:35:00.000000annual_workbook6583106.740737915039063∅4335∅11781149230149100.6317596435546944.627085208892822∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:30:00.000000annual_workbook6584121.533332824707033∅4326.5∅11791148235154100.7057037353515654.701967716217041∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:25:00.000000annual_workbook6698146.967742919921883∅4341∅11801149164150100.7796478271484454.77685022354126∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:20:00.000000annual_workbook67261554∅4820∅11781146619147100.8535919189453154.8517327308654785∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:15:00.000000annual_workbook6740148.792449951171884∅4493∅11761150287135100.9275360107421954.926615238189697∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:10:00.000000annual_workbook66901504∅4296∅11761153130124101.0951614379882844.9899749755859375∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:05:00.000000annual_workbook68241374∅4530∅11771153218106105.8533477783203134.488723278045654∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 07:00:00.000000annual_workbook6799128.17240905761722∅4528∅1180115222885110.6115264892578133.98747181892395∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:55:00.000000annual_workbook6777113.133331298828122∅4576∅1175114927977115.3697052001953133.6462674140930176∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:50:00.000000annual_workbook6806862∅4748∅1177115440284119.4249801635742233.5937464237213135∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:45:00.000000annual_workbook6884772∅4844∅1175114840488119.4971008300781233.5412254333496094∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:40:00.000000annual_workbook690777.199996948242192∅4782∅1175114832192119.569213867187533.4887044429779053∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:35:00.000000annual_workbook695188.972221374511722∅4800∅1176115331192119.641334533691433.436183452606201∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:30:00.000000annual_workbook694293.630950927734382∅5032∅1175114954795119.7134475708007833.383662462234497∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:25:00.000000annual_workbook694094.59999847412112∅5037∅11781148559102119.7855682373046933.331141471862793∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:20:00.000000annual_workbook7018882∅5052∅11761149489110119.857688903808633.278620481491089∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:15:00.000000annual_workbook70561022∅4878∅11771147295129119.9298019409179733.2260994911193848∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:10:00.000000annual_workbook70241082∅4863∅11781149318142120.3533325195312533.1735785007476807∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:05:00.000000annual_workbook70521252∅5131∅11761148569160133.6033325195312543.177140951156616∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 06:00:00.000000annual_workbook71431393∅5457∅11751152825182146.853317260742243.252082586288452∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506
2026-11-03 05:55:00.000000annual_workbook7186157.909088134765623∅5542∅11771153887192160.103317260742243.327024221420288∅WindGenTotalLoadYTD_2026.xlsx2026-11-03 09:45:36.212506

Coverage

Complete
100.0%
Gap days
0
Days with data
7,247
Show coverage history
Coverage: 100.0%Days with data: 7,247Gaps: 0
2026
2025
2024
2023
2022
2021
2020
2019
2018
2017
2016
2015
2014
2013
2012
2011
2010
2009
2008
2007
gaplessmore