How to read this page
Every number in InfraMap Pro is one of four kinds, and the product labels which:
- Reported: as published by EIA, EPA, FERC, an ISO or RTO, USGS or NASA.
- Calculated: a stated formula applied to reported values, such as a capacity factor, a basis or a period average.
- Modeled: the output of an InfraMap model, such as physical potential, expected generation, modeled curtailment, modeled revenue or the price heatmap.
- Assumed: a stated input, such as the production tax credit window or a regional comparison hub.
Modeled values (physical potential, expected generation and modeled curtailment) are part of InfraMap Pro. The methods are documented here for everyone.
Each section below ends with its limits: what the number does not establish. The datasets themselves are described on Data sources.
Plant catalog and projects
The map lists every EIA plant with at least one generator or battery reported as operating (status OP) in the August 2026 EIA-860M, which is provisional. Monthly records join the final 2025 EIA-860 on the exact EIA plant ID and generator ID, with no fuzzy matching. Standby, out-of-service, proposed and retired units are excluded. Batteries form the Energy Storage category; flywheels and compressed-air storage are excluded. Pumped storage keeps its own technology class and also appears under the Energy Storage filter.
Fuel groups follow the EIA energy source code: Solar, Wind, Hydro, Nuclear, Natural Gas, Coal, and Other for every remaining code. A plant’s headline fuel is the group with the most operating nameplate MW.
Projects and hybrids
A project is one map entry. When one EIA plant ID reports both operating generation and batteries, it is one hybrid project. A separate storage-only plant joins a generation plant only when all of these hold:
- its 2025 EIA-860 storage record says it directly supports another unit;
- the named plant and generator exactly match an operating generator at a mapped generation plant;
- both plants are in the same state and within 3 km of each other;
- every link from that storage plant points to the same single target.
Distance alone never merges plants. The current catalog has 14,233 EIA plant records grouped into 14,225 projects, 529 of them hybrids. The project ID is the parent EIA plant ID; component IDs resolve to it, stay searchable, and keep their own records in the Details tab.
Project capacity is EIA-860M nameplate MW: generation MW plus battery MW. Fuel totals sum disjoint generator ratings, and fleet totals count each project once. Battery energy (MWh) and maximum discharge rate come from exact matches in the 2025 annual storage schedule.
The operating date shown is the earliest reported operating year and month among a project’s operating units.
Map locations and plant footprints
Markers use the EIA coordinates of the plant’s operating units. For 714 solar and wind plants whose EIA point lies more than 1 km outside their own mapped footprint, the marker moves to a display centroid: the area-weighted centroid of the plant’s USGS solar array polygons, or the centroid of the convex hull of its USGS turbine points. The original EIA coordinates stay in the plant details.
Footprints join on the source’s own EIA plant ID (USGS eia_id, OpenStreetMap ref:US:EIA), never on name or distance. 11,446 current plants link to 87,119 records: 6,619 solar arrays, 70,532 turbines and 9,968 OpenStreetMap plant outlines. Records too far from the EIA point, or with a state or technology conflict, go to review instead of being matched.
- EIA operating status is a provisional monthly survey report. It does not establish current dispatch, interconnection rights or deliverability.
- Combined nameplate is equipment capacity, not a simultaneous export or interconnection limit. Battery MWh is a reported rating, not measured usable energy.
- Storage without an explicit EIA unit link stays a separate project, even when it is co-located or contracted with a generator.
- The operating date is not a contractual commercial operation date. Repowered units can make it later than the site’s first operation.
- Display centroids are derived locations, not corrections to EIA. Footprints can predate the current inventory and do not show an electrical connection.
Generation and capacity factor
Monthly net generation comes from EIA-923 and its predecessor surveys (EIA-906/920, and for 2000 the EIA-759 and EIA-906 forms). 2000 to 2025 use final files; 2026 is provisional year-to-date, currently through July. Plant net generation sums the plant-level generation and fuel records by exact plant ID. Generator-level records are never added on top.
- Blank cells stay null. Zero and negative values are kept as reported.
- If any component of a plant is unreported in a month, the plant total for that month is null. Overlapping reports for the same component and month become null rather than being summed.
- Yearly values sum the months that exist and say how many of 12 were reported. Nothing is annualized.
- For plants that report annually, EIA allocates the annual total across months. The original reporting-frequency codes are kept in downloads.
Capacity factor
The denominator is the nameplate in service at the time, not today’s: same-year EIA-860 ratings for 2010 to 2025, and same-month EIA-860M ratings in 2026. So capacity factors start in 2010. A month gets no factor when the dated inventory cannot support the whole month, for example a commissioning, retirement or unresolved uprate in that month, or a missing rating. Current capacity is never substituted.
For hybrids, battery net output is subtracted and battery MW is left out of the denominator. Pumped storage gets no factor. Values below 0% or above 100% stay visible. This differs from EIA’s published capacity factor, which uses net summer capacity.
Battery flows use battery rows only: charging, gross discharge and storage net. Battery utilization (%) = discharge MWh ÷ (dated battery MW × hours) × 100. A discharge-to-charge ratio can be calculated for a period, but it is not round-trip efficiency.
ERCOT hourly generation
For ERCOT projects in the reviewed crosswalk, the Hourly view shows ERCOT settlement-metered net energy (SMNE) for the project’s reviewed resource IDs. An hour needs four complete quarter-hours from every contributing resource; otherwise the combined hour is unavailable. Combined-cycle train readings take precedence over component readings so nothing is counted twice. Days follow the ERCOT operating day (Central time).
The crosswalk covers 611 grouped projects above 20 MW in ERCOT. 589 have reviewed resource IDs and nodes for every eligible generator, 7 are partial and 15 unresolved. Identity needs evidence tying the EIA plant to named ERCOT resources; name similarity and nearest nodes do not count. Daily capacity factor in this view uses current nameplate and needs every hour.
- Monthly values for annual respondents are EIA allocations, not meter readings.
- Net generation is a plant-level survey value. It does not identify the export meter or curtailment.
- A missing month is not zero, and partial years are not annualized.
- Capacity factor is not availability, efficiency or accredited capacity. The agent’s wind capacity-factor ranking is a separate screening estimate on current nameplate.
Physical potential
Physical potential is the net energy a plant’s dated equipment could have produced from the weather it actually experienced, assuming full availability and no curtailment. No potential model is fitted to reported generation. Potential is computed per EIA generator; a project gets a value for a month only when every non-storage component has one. Monthly totals use the plant’s local calendar month, and hourly values are keyed to UTC.
Solar
NSRDB irradiance, temperature and wind (ERA5 where NSRDB is unavailable) drive a model of plane-of-array irradiance, cell temperature, DC output and inverter clipping, using EIA-860 equipment and tracking data. Assumptions: angular reflection losses, 0.5% a year module aging from commissioning, and a 10% DC loss allowance that includes 2% soiling.
Onshore wind
HRRR winds where available and ERA5 elsewhere, interpolated to hub height and adjusted for air density. Equipment comes from EIA-860 and the USGS turbine database, with published power curves where a turbine model matches and stated proxies where it does not, minus a 10% farm-loss allowance.
Recent days
From September 1, 2026 a recent series uses NOAA GOES satellite irradiance and HRRR 80 m wind scaled to hub height. It refreshes about every six hours, with roughly a three-hour source delay.
Thermal
June to September use EIA net summer capability, December to February net winter capability, and other months the midpoint. Dated EIA-860 and EIA-860M inventories set which generators count. Thermal potential is monthly only and covers 3,473 projects from January 2010 to August 2026.
Other technologies and coverage
Solar thermal (CSP) uses a separate direct-normal-irradiance, turbine and storage model checked against NREL SAM. Conventional hydro is modeled only inside mixed plants and assumes enough water. Historical solar and wind files cover 2010 to 2025; a 2026 archive runs to October 1, 2026 on equipment through August, with September carrying the August inventory forward as a stated assumption. Where equipment timing or ratings are uncertain, the chart shows a sensitivity range (the sum of component bounds, not a confidence interval).
A continuity check of the recent series on four 2025 days (160 projects) found regional solar energy within −3.8% to +11.4% of the reviewed archive and wind within −4.7% to +6.9%. That check does not measure annual accuracy.
- Output below potential is not assigned a cause. It can reflect curtailment, outages, other limits, physical losses or model overprediction.
- Thermal potential is a seasonal capability baseline. It ignores hourly temperature, cooling-water limits, fuel constraints, outages and economic dispatch.
- Snow, shading and bifacial gain are not modeled. All values are provisional, recent values more so.
- Plants with unsupported technologies, incomplete component coverage or unresolved meter boundaries show no potential.
Expected generation
Expected generation estimates a plant’s monthly non-storage net generation from its physical potential and its own earlier reported output. It is a retrospective hindcast, not a forecast: past dispatch, outages and losses enter together through the plant’s history, and the model does not separate them. It covers January 2010 to September 2026 (thermal to August 2026), and a month gets a value only when same-period potential exists. It uses no price inputs; price-conditioned variants were tested in October 2026 and did not beat it.
How it is calculated
For a target month in year Y, training uses only reported months up to September of Y−1. Each training month gives a ratio r = actual MWh ÷ potential MWh. The plant ratio R is the potential-weighted mean of r over a trailing window, shrunk toward a peer prior P (the median ratio of other plants with the same technology in the same state, or nationally when the state has fewer than 10):
A same-calendar-month ratio S adds seasonality once a plant has at least 12 training months and two observations of that month:
Settings from 2020 on are fixed per technology, chosen on January 2017 to September 2019 data: solar 60-month window, s = 0.5, k = 12; wind 36 months, s = 0.35, k = 6; thermal 36 months, s = 0.65, k = 0. Plants that report annually train only on complete annual totals at least two years old. Plants with little history fall back to peer priors, then to an annual-output prior, then to cold-start priors built from comparable plants’ earlier annual capacity factors. Cold-start estimates are capped at potential and carry a sensitivity range, which is not a calibrated probability interval.
Validation
WAPE = Σ|expected − actual| ÷ Σ|actual|. Signed bias = Σ(expected − actual) ÷ Σ|actual|, positive when the model overestimates. On retrospective months from 2010 to the latest available 2026 month:
| Technology | WAPE | Bias | Months | Projects |
|---|---|---|---|---|
| Solar | 14.2% | +0.7% | 245,097 | 7,212 |
| Wind | 15.2% | +0.3% | 106,170 | 1,357 |
| Thermal | 26.4% | +1.7% | 223,534 | 1,816 |
| Mixed generation | 24.8% | +4.8% | 4,929 | 57 |
| Mixed renewables | 18.9% | −6.8% | 567 | 9 |
- Retrospective only. It uses realized weather and revised EIA data, so it is not what could have been predicted at the time.
- It covers today’s fleet, not retired plants. Aggregate error does not guarantee accuracy for any single plant.
- A gap between actual and expected does not establish curtailment, outages or recoverable energy.
- It does not simulate bids, costs or price-driven dispatch, and it has no hourly profile.
Modeled curtailment
Modeled curtailment is not operator-reported curtailment. It is an hourly estimate of energy a wind or solar plant likely withheld, from its physical potential and the real-time price at its node.
How the estimate works
For each plant-hour, the model scales physical potential by a response learned from ERCOT plants:
Prices fall into 13 bins with edges at −100, −50, −30, −23, −10, −5, 0, 5, 20, 50, 100 and 500 USD/MWh. The credit state is the share of plant capacity inside an assumed production tax credit window. 250 fitted ERCOT plants (145 wind, 105 solar) use their own response; every other plant uses the pooled response. Expected curtailed hours is the sum of hourly event probabilities, not an observed duration. Monthly totals sum valid hours in the plant’s local month, and a month is complete only when every hour has an estimate.
The response was fitted on January to April 2026, on dispatch-reduction estimates built from ERCOT’s public 60-day dispatch disclosures (high sustained limit minus telemetered output). Plants whose EIA ID is divisible by five were held out. On July 1 to 28, 2026, fitted wind plants were about 27% low against the reference and fitted solar plants about 27% high. Held-out plants transferred weakly.
The cohort is 1,943 plants in the seven ISO and RTO markets (896 wind, 1,047 solar): CAISO 442, MISO 386, PJM 369, ERCOT 365, SPP 263, ISO-NE 72, NYISO 46. A plant needs a reviewed resource-level pricing node. Mixed-fuel, storage, concentrating solar, offshore wind and zone-priced plants are excluded. Hours run from January 2014 where potential and a complete real-time node price overlap.
With and without the production tax credit
Plants inside a production tax credit (PTC) window earn the credit only when they generate, so they tend to keep running at more negative prices. Credit receipt cannot be observed, so the model shows two bounds:
- Lower bound, with PTC (solid line): each generator earns the credit for 120 months after its original EIA operating month, for wind first operated after 1993 and solar after 2021.
- Upper bound, without PTC (dashed line and band): the same response with no credit in any hour.
Outside a credit window the bounds are equal and no band is drawn. A step in the lower bound when a window ends comes from this assumption, not from observed behavior. Across the covered fleet, 2025 totals 23.0 TWh with the credit and 48.4 TWh without it.
Fleet screens and comparisons
The agent and the MCP server compare modeled curtailment across the whole eligible cohort before ranking. Comparisons use matched calendar months in both periods, need at least 95% valid hours each month, and exclude plants without baseline history (new plants are reported as new entrants).
A change splits exactly into a volume effect, (Pc − Pb) × (rb + rc) ÷ 2, and a rate effect, (rc − rb) × (Pb + Pc) ÷ 2, where P is potential and r is loss share in the baseline (b) and comparison (c) periods. The split is arithmetic and does not identify a cause.
Operator-reported regional history
Operator-published totals are served separately as market context: CAISO monthly wind and solar curtailment, 2015 to 2025, from its Monthly Renewables Performance Report; and SPP’s annual mean curtailed MW for wind and solar combined (1,483 MW in 2024, 1,382 MW in 2025) from its market monitor’s State of the Market report. In an October 2026 check, the model’s covered CAISO solar fleet was higher than CAISO’s reported totals and moved in the opposite direction from 2024 to 2025. Fleet scope and definitions differ, so this is a diagnostic, not a plant error rate.
- An estimate, not measured curtailment. Transfer outside the fitted ERCOT plants and to other markets is unvalidated.
- Hourly mean prices omit sub-hourly dispatch, offer curves, contracts, outages and network limits.
- Neither bound establishes credit receipt, credit election, repowering or contract terms. The range is a scenario spread, not a confidence interval.
- Today’s plant-to-node mapping is applied to past years. Whole-market reported totals never validate or allocate curtailment to a plant.
Price nodes, hubs and basis
Node assignment
A plant’s pricing node is the market location whose published price InfraMap shows for that plant. Assignments are reviewed against ISO registries (some carry the EIA plant ID), the plant’s own EIA-860 node designation when it equals a current official node, ISO unit registries matched on name plus at least two independent attributes, and FERC EQR delivery points. ERCOT plants use a reviewed crosswalk from EIA generators to ERCOT resources. Nearest-node and name-only matches are rejected, and a zone, hub or load node never counts as a resource node.
An October 16, 2026 review gave every plant in the seven markets one of four outcomes: a pricing node; a zone or load price location, labeled as such; no node, with a sourced reason (for example net metering, a distribution program, behind-the-meter load or a pending registration); or unresolved, with a note on what was checked. 97% of market capacity has a price location.
| Market | Plants | Node | Zone or load | No node, documented | Unresolved |
|---|---|---|---|---|---|
| CAISO | 1,617 | 1,042 (101.1 GW) | 5 | 403 (1.8 GW) | 167 (0.4 GW) |
| ERCOT | 988 | 882 (178.3 GW) | 14 | 39 (0.5 GW) | 53 (0.4 GW) |
| ISO-NE | 1,414 | 275 (33.6 GW) | 427 (1.7 GW) | 614 (2.0 GW) | 98 (0.4 GW) |
| MISO | 2,330 | 778 (200.3 GW) | 85 (1.4 GW) | 639 (5.8 GW) | 828 (5.1 GW) |
| NYISO | 1,096 | 274 (41.5 GW) | 11 | 796 (3.1 GW) | 15 (0.1 GW) |
| PJM | 2,058 | 760 (216.9 GW) | 39 (0.8 GW) | 983 (4.8 GW) | 276 (1.7 GW) |
| SPP | 845 | 554 (120.8 GW) | 7 | 276 (1.9 GW) | 8 (0.1 GW) |
| All seven | 10,348 | 4,565 (892.6 GW) | 588 (5.0 GW) | 3,750 (19.9 GW) | 1,445 (8.1 GW) |
For the largest unresolved plants, research added nodes in labeled tiers, including a reviewed-inference tier where no published source names the node for the plant. Where a plant’s EIA balancing-authority code points to the wrong market, the plant is assigned to the market that prices it. The Prices tab shows each plant’s outcome and its sources.
Comparison hubs
Every priced node gets a comparison benchmark. A published hub membership wins. Otherwise the node gets a disclosed regional comparison. The card and Prices tab name the relationship, for example “Published hub member” or “Same-region comparison hub, not membership”. A hub chosen by the user overrides the default.
| Market | Published membership | Regional comparison when there is none |
|---|---|---|
| CAISO | Trading hub map (NP15, SP15, ZP26) | South of Path 26 uses SP15, north uses NP15, by the 2026 NQC resource list |
| ERCOT | Hub membership by resource bus | The settlement point’s load zone hub; Panhandle nodes compare with West Hub |
| ISO-NE | None | The internal hub, as a system comparison for every node |
| MISO | None published | By plant state, to the matching MISO hub; Minnesota, Wisconsin, Iowa and the northern plains use Minnesota Hub |
| NYISO | Published generator zone | None needed |
| PJM | Published hub definitions | By node zone, for example Dominion to Dominion Hub, ComEd to N Illinois Hub, western zones to Western Hub |
| SPP | Published hub definitions | By reserve zone: 1, 2 and 5 to North Hub, 3 and 4 to South Hub, 21 to Western Hub (from April 1, 2026) |
Basis
Positive basis means the node priced above the hub; negative means below. A node at $70 and a hub at $50 give +$20/MWh. Average basis uses only hours where both prices exist, and monthly and yearly values weight every hour equally. Zero stays zero, negative prices stay negative, and a missing hub is never replaced by another hub.
Day-ahead and real-time
Day-ahead (DA) and real-time (RT) are separate series and never substitute for each other. Values are total LMP (ERCOT: settlement point price) at hourly grain. Where an ISO publishes sub-hourly RT prices, the hour is the mean of its intervals and needs every interval. Hours are keyed to UTC, and monthly and yearly periods use each market’s local calendar.
| Market | Real-time hour | Market clock | Archive starts |
|---|---|---|---|
| CAISO | Mean of 12 five-minute intervals | Pacific | Oct 2023 |
| ERCOT | Mean of 4 fifteen-minute settlement point prices | Central | Jan 2014 |
| ISO-NE | Operator hourly | Eastern | Nov 2015 (DA), Jun 2017 (RT) |
| MISO | Operator hourly, final when published | Eastern Standard (UTC−5) | Apr 2005 |
| NYISO | Operator integrated hourly | Eastern | Nov 1999 |
| PJM | Operator hourly | Eastern | Apr 2023 |
| SPP | Mean of 12 five-minute intervals | Central | Mar 2014 |
A scheduled refresh adds recent days and revisits them 1, 2, 7 and 30 days later, so final prices replace preliminary ones. Archive starts are market-wide; each node’s history starts when the ISO first published it.
Price chains
When an ISO renamed a node, one market replaced another, or a plant was re-registered, the plant keeps one continuous price history: a price chain of dated segments, each one node in one market. Each hour comes from exactly one segment and is paired only with that segment’s hub, so basis is never computed across a node change. Charts mark each change with a dashed line.
A link counts only when a source ties the earlier node to the plant for that window, such as an ISO file showing old and new IDs on the same resource on adjacent days. 590 chains cover 340 plants (92.9 GW), including SPP’s move from the Western Energy Imbalance Service (WEIS) to the SPP RTO on April 1, 2026. Models use predecessor hours only after the plant’s latest repower or physical change.
Map price layers
Prices need a free account. Free accounts see every price and basis with each node under an alias; node names are part of Pro. Node points show the average DA or RT price at each location for a week, month or year, from January 2025. Means use complete hourly prices; a location with missing hours is marked partial. Some nodes have no published location and are drawn at the linked plant. The node card compares a node with its hub when both are complete for the period.
The heatmap interpolates complete-period node averages: each grid point uses up to eight nearest price series from the nearest market within 180 km, weighted by (1 − d²/R²)² ÷ d², where d is distance and R is 180 km. Markets never blend. Colors run through fixed anchors at −50, 0, 25, 50 and 100 USD/MWh.
- A node association does not establish historical settlement, a contract delivery point or delivered generation.
- A regional comparison hub is an InfraMap policy, not an official assignment or a settlement basis.
- Averages are time-weighted, not generation-weighted. Hourly averages cannot reproduce sub-hourly settlement or capture rates.
- The heatmap is a visualization, not an observed local price or a market boundary.
Modeled revenue and capture
Modeled revenue is a historical merchant energy-value scenario, available through the agent and the MCP server for up to 24 months at a time:
A month counts only when generation is reported and at least 95% of its hours have a valid price. Day-ahead and real-time, and each mapped node, are separate scenarios and are never summed. PPA settlements, capacity and ancillary payments, RECs, tax credits and costs are excluded.
Exact capture rates are not computed. A capture price needs export energy at the original settlement interval, matching prices and a dated settlement node. Monthly generation has no within-month shape, so the product reports that capture is unavailable rather than estimating it. For eligible ERCOT projects, hourly SMNE times hourly node price gives a closer energy-weighted estimate, still not settlement capture.
- Not reported revenue, receipts, profit or a forecast. All output is treated as merchant.
- Valuing output at the monthly mean price ignores generation shape, so it overstates value for output concentrated in low-price hours.
Emissions
The Environmental tab shows annual CO₂, SO₂ and NOx mass reported to EPA’s Clean Air Markets Division, for reporting years 1995 to 2025, in US short tons. EPA has already apportioned shared stacks to its units; InfraMap does not re-apportion them.
EPA units link to EIA plants through the PUDL CAMD–EIA crosswalk, keyed on EPA facility and unit ID. A unit-year links when that year’s crosswalk names exactly one EIA plant, or, with no entry for that year, when every crosswalk year names the same plant. Names and coordinates are never used. Of 123,526 EPA unit-years, 94,816 link to 1,289 current plants.
A plant-year pollutant total is “Not reported” when no linked unit reported, or when any linked unit has a blank for that pollutant. Partial sums are not shown.
- Covers EPA-reporting units linked to the catalog only. It is not a complete inventory of units or pollutants.
- A year can contain seasonal or partial reporting. No emissions rate per MWh, marginal or lifecycle emissions are calculated.
Ownership and offtake
Ownership and offtake are part of InfraMap Pro. The methods are documented here for everyone.
The Details tab keeps reviewed conclusions separate from reported records. Reported records come from FERC Market-Based Rate (MBR) exports joined on exact EIA plant and generator IDs, EIA-860 2025 generator ownership with owner fractions, and MBR generator-specific PPA records. FERC ownership and control stay distinct; control alone is not ownership.
Reviewed conclusions are dated findings from public filings (FERC, SEC, utility reports and FERC EQR contracts), each citing its document and page. An ownership conclusion must cover every operating generator in scope, and incomplete coverage is labeled “Partially verified”. Announced transactions are not treated as completed. Offtake conclusions are typed, for example energy PPA, utility supply or merchant sales. EQR contract conclusions use the 2026 Q2 EQR archive and need an exact seller, agreement and buyer and an active generator link. Contract MW are never added across rows. Research covers operating projects above 50 MW outside ERCOT.
EQR hourly sales
For 431 plants, the Hourly view can show hourly FERC EQR energy sales for Q2 2026. Sales streams link through reviewed delivery points or through exact FERC company IDs to a single EIA asset. Only energy quantities count, a row counts only when its interval falls within one hour, and multi-hour sales are never apportioned. The chart sums all audited streams for each hour; an hour with an incomplete interval is unavailable.
- Ownership and contract records do not establish physical delivery, the share of output contracted, or REC ownership.
- “Not yet verified” means no qualifying evidence was found, not that there is no owner or PPA.
- EQR records are settlement transactions, not meter data. A delivery point may not represent the whole plant.
Grid regions
Balancing-authority (BA) membership is recorded per unit, from the BA code each operating generator and battery reports in the August 2026 EIA-860M. Reviewed transitions with documented effective dates take precedence for the units they cover. A historical date with no observation stays unknown rather than inheriting today’s assignment. A BA filter returns a project only when every operating unit resolves to the requested BA.
The region shapes on the map come from public DOE boundaries plus SPP-published SPP East and West polygons, and are for display only. Membership never comes from polygon containment, because published boundaries overlap and lag transitions. SPP East is BA code SWPP; SPP West (SWPW) is active from April 1, 2026, and a request for “SPP” includes both. 10,210 of 14,225 projects resolve to one of the seven ISO and RTO markets.
- BA membership does not establish a settlement node, market participation or deliverability.
- Codes are self-reported in a provisional survey and can lag a transition. SPP West coverage is still incomplete.
ERCOT battery operations
For ERCOT battery projects with verified resource IDs, the panel shows hourly operation in two measurement regimes, split at ERCOT’s RTC+B go-live on December 5, 2025:
- Before: legacy settlement-metered net energy only. An hour needs four complete quarter-hours.
- After: estimates from ERCOT’s 60-day dispatch disclosure for energy storage resources. Telemetered power is integrated over the hour; positive power counts as discharge, negative as charge, and net = discharge − charge. An hour is published only with full coverage.
- The two regimes are different measurements and do not form one continuous metered series.
- Neither measures round-trip efficiency, state of charge, ancillary awards or revenue.
Water and watershed stress
Water use. The Environmental tab charts annual cooling-water withdrawal and consumption in million US gallons from EIA thermoelectric cooling water data, 2014 to 2024. Withdrawal and consumption are different measures and are never added. A year without 12 valid months is marked partial.
Watershed stress uses the USGS Surface water Supply and Use Index (SUI):
InfraMap uses each HUC12 watershed’s mean of the monthly values for water years 2010 to 2020, in the USGS classes: Very low ≤ 0.2, Low 0.2–0.4, Moderate 0.4–0.6, High 0.6–0.8, Severe > 0.8. The map draws HUC8 watersheds as the mean of their HUC12 values; plant tests use the plant’s own HUC12.
Plant test. 727 plants with 2024 cooling water records are placed in the HUC12 at their coordinates, or in a nearby HUC12 named for the river EIA reports as their source. Saline, Great Lakes, reclaimed-water and dry-cooled intakes are not tested. A plant is flagged when its watershed is High or Severe and its withdrawal or consumption is in the top quarter of its fuel group for 2024. In 2024, 33 plants are flagged: 19 gas, 11 coal and 3 nuclear.
| Fuel group | Plants | Withdrawal | Consumption |
|---|---|---|---|
| Natural gas | 484 | 4,905 | 1,042 |
| Coal | 149 | 150,229 | 2,804 |
| Nuclear | 54 | 673,271 | 9,226 |
| Other | 40 | 12,839 | 440 |
- SUI is a modeled surface-water index. It does not describe aquifers and can understate shortage on large regulated rivers.
- The test uses the plant’s location, not its intake. It is not a measure of current drought, permits or water rights.
- Cooling-pond plants report circulation as withdrawal. Blank volumes are unreported, not zero.
Natural resource layers
Gas and oil reserves show EIA proved reserves as state totals at the end of 2024: wet natural gas in billion cubic feet and crude oil with lease condensate in million barrels. States EIA does not report separately show “Not reported separately”.
Wind and solar resource show NASA POWER annual climatology for 2001 to 2020: mean wind speed at 50 m (m/s) and all-sky surface solar irradiance (kWh/m²/day), on the source’s native grid with no interpolation, for the contiguous US.
- Reserve fills do not locate deposits. Proved reserves are not resources or production.
- Resource cells are coarse regional context. 50 m wind is not hub-height wind, and these layers are not inputs to the potential model.
General data rules
- Exact joins. Every join resolves a project to its component EIA plant and generator IDs, then uses exact source identifiers. Name similarity, nearest location and polygon containment can create a review candidate, never a match.
- Missing, zero and negative. Unreported values stay null. Reported zeros stay zero and negative values stay negative. An aggregate that needs every component is null when any is missing; partial sums appear only with their coverage.
- Periods and clocks. Hourly series are keyed to UTC interval starts. The repeated fall-back hour stays as two hours. A yearly value needs every month; otherwise it is labeled partial. Nothing is annualized, extrapolated or zero-filled.
- Units. MW (AC nameplate unless stated), MWh, USD/MWh nominal with no inflation adjustment, US short tons, million US gallons.
- Provisional data. EIA-860M, 2026 EIA-923, recent potential and preliminary real-time prices can be revised. Refreshes replace provisional values.
- Survivorship. The catalog holds today’s operating plants. Retired plants are absent, so historical cohorts lean toward survivors.
The agent and MCP server
The agent answers questions by calling read-only tools over the same data the map uses. Every project fact and number must come from a tool result in the same conversation, and derived figures are computed by query, not mentally. Answers state the period, market, units and scope of each number, and keep observed data, calculations, model estimates and inferences apart. A gap between observed and modeled values is never split among causes unless a tool measures that cause. The agent can run a few web searches for current public facts the data cannot hold, such as a new PPA, and cites the page and date.
The MCP server exposes the same tools to any MCP client. Its reference tools serve the reviewed definitions behind this page: 62 terms, 17 method topics and 32 primary references, reviewed October 1, 2026.
- The agent can be wrong. Its answers are not investment, legal or engineering advice; check the cited sources before relying on them.
- Answers cover only what the tools return. Missing inputs are named, not filled.
- Web-sourced facts are outside the reviewed datasets and are only as current as the cited page.