MISO logo

MISO Price Locations

Every MISO location that carries a price, as three columns: location_id, name, and kind.

Native record
one row per priced location and kind
slow-moving dimension, refreshed every 6 hours publication cadence
Evidence
Reference data
Stable context used to interpret other datasets
Time basis
Point-in-time records
UTC · static reference

Overview

325 rows — generator (274), interface (22), zone (21), hub (8). This is the dimension the MISO price, and where applicable constraint, tables join to, and it is the one place a location's type is decided: resolve "which hubs exist", "is this a zone or a node", or "give me the readable name for this id" here rather than inferring a type from a name prefix. For MISO, name equals location_id (the node name, e.g. ALTE.1ROCKGEN). MISO publishes no pricing-node registry, so this dimension is assembled from grid.entities rather than from a MISO feed. It covers MISO's hub and zone roll-up, which is coarser than a full nodal set. The same three columns exist for every market, so the equivalent question in another ISO is the same query against that ISO's table.

Query contract

Treat (location_id, kind) as the row identity. This is a current dimension snapshot, not a history: it describes the locations that exist now and carries no validity dates.

Analysis rules

  • Counting rows by kind describes the market's current location inventory. It does not describe how many locations were priced on some past date.
  • Join fact tables on location_id, and add kind to the join when the fact table also carries kind — the pair, not the id alone, is the identity.

Interpretation

  • A location existing here does not mean it has a price in any particular interval; check the price table for that.
  • kind is a classification of the priced object, not of the physical equipment behind it, and carries no capacity, voltage, or geography. Location geography lives in grid.entities.

Schema3

Column
Type
location_idLowCardinality(String)
nameLowCardinality(String)
kindLowCardinality(String)

Sample data

location_idnamekind
AECIAECIinterface
ALTE.1ROCKGENALTE.1ROCKGENgenerator
ALTE.COLUMBAL1ALTE.COLUMBAL1generator
ALTE.COLUMBAL2ALTE.COLUMBAL2generator
ALTE.EDGG5G5ALTE.EDGG5G5generator
ALTE.ROCKGEN2ALTE.ROCKGEN2generator
ALTE.ROCKGEN3ALTE.ROCKGEN3generator
ALTW.ALTWALTW.ALTWzone
ALTW.BRLGTN5ALTW.BRLGTN5generator
ALTW.JOUNEALS4ALTW.JOUNEALS4generator
ALTW.LANSIN4ALTW.LANSIN4generator
ALTW.LEDYARDALTW.LEDYARDzone
ALTW.OTTUMW1ALTW.OTTUMW1generator
AMIL.ALSEYCTG1AMIL.ALSEYCTG1generator
AMIL.BALDWI51AMIL.BALDWI51generator
AMIL.BALDWI52AMIL.BALDWI52generator
AMIL.BWSS_BFAMIL.BWSS_BFgenerator
AMIL.BWSS_SFAMIL.BWSS_SFgenerator
AMIL.CLINTO51AMIL.CLINTO51generator
AMIL.COSF_BFAMIL.COSF_BFgenerator
AMIL.COSF_SFAMIL.COSF_SFgenerator
AMIL.EDWARDS2AMIL.EDWARDS2generator
AMIL.EDWARDS3AMIL.EDWARDS3generator
AMIL.NEWTON21AMIL.NEWTON21generator
AMIL.PPIAMIL.PPIgenerator

Coverage

No time-indexed data — coverage isn’t applicable to this dataset.