DATA TRANSPARENCY

Methodology

Every number on GridGlass, documented: which values are raw public data, which are derived in-app, the exact formula for each, and where it comes from. GridGlass reads the self-refreshing GDA data lake — it is a display of official public data. Always verify against the primary source for operational use.

Data sources

Lake datasetProvidesCadence
Elexon FUELINSTTransmission generation per fuel (MW), interconnector flows5 min
Elexon FREQSystem frequency (Hz)~15 s
Elexon INDO / GridWatchNational demand outturn (MW); GridWatch is the fallback archive½-hourly / 5 min
Elexon PNPhysical Notifications — per-BMU notified output (largest single unit)near-real-time
PVLive nationalEmbedded solar out-turn (MW)½-hourly
NESO system_frequency1-second frequency (record extremes)1 s (archive)
NESO system_inertiaPublished Outturn & Market-provided inertia (GVA·s)½-hourly (settlement-lagged)
Derived/inertia_estimateGridGlass's fuel-mix inertia estimate, recorded (GVA·s)5 min
Derived/inertia_all_srcsMerged NESO outturn/market + per-BMU reconstructionsettlement-lagged
Interconnector registerLink names, countries, nameplate capacitiesstatic

Metric dictionary

MetricTypeDefinition / formula
Frequency (Hz)rawLatest FREQ.frequency reading.
Demand (GW)rawLatest INDO.demand; falls back to the GridWatch archive when INDO hasn't converged.
Generation (GW)derivedΣ of positive FUELINST.generation over domestic fuels (interconnectors excluded), plus embedded PVLive solar folded in as its own fuel.
Fuel mix (per fuel)rawPer-fuel FUELINST.generation (CCGT, COAL, NUCLEAR, WIND, …); embedded solar from PVLive. Synchronous (spinning) fuels flagged for the inertia split.
Renewable share (%)derivedrenewable MW ÷ generation MW × 100 (wind, solar, hydro, biomass, tidal).
Carbon intensity (gCO₂/kWh)derivedΣ(fuel MW × fuel intensity) ÷ total MW, using standard per-fuel carbon factors.
Interconnector flow (MW)rawPer-link FUELINST INT* value; + = import into GB, − = export.
Net interconnector (MW)derivedΣ of all INT* flows.
System inertia (GVA·s)derivedThe live figure is the synchronous fuel-mix estimate (below) — the real rotational energy present at T+0, counting spinning plant only. NESO Outturn Inertia (a lumped figure that also includes synthetic) is shown when concurrent, for comparison. Labelled “(est.)” when estimated from the mix.
Inertia estimate (GVA·s)derivedE = Σsynchronous Hfuel·(MW/pf) ÷1000 (H: Nuclear 4.5 s, CCGT/Gas 5.0, Coal/CHP/Biomass 4.0, OCGT/Hydro/PS 3.0; pf 0.9), computed live from the generation mix. It counts only synchronous machines — the kinetic energy physically spinning at T+0, the instant a loss must be arrested. It deliberately excludes “synthetic inertia”: a fast inverter/FFR response is measured-then-actuated with latency, contributes nothing to the first-instant RoCoF, and so is not inertia — counting it is a category error we refuse. NESO's Outturn is a lumped scalar that does fold synthetic in; the gap above this estimate is chiefly that synthetic slice (plus a small embedded/demand-side residual the transmission-metered mix can't see). Being transmission-metered and dispatched-MW-based, this reads as a mild lower bound on true synchronous inertia — the GDA model line settles that residual.
Largest credible loss (MW)derivedThe largest group that can trip on a common mode — per interconnector cluster (Sellindge = IFA+ElecLink, North Sea = NSL+Viking) sum the live positive imports; each standalone link and the largest single generating unit (from PN) are also candidates; the worst wins. Not the FRCR's fixed 1,800 MW.
RoCoF · if LCC trips (Hz/s)derivedSwing equation: RoCoF = f₀·ΔP ÷ (2·E), with f₀ = 50 Hz, ΔP = the largest credible loss, E = live system inertia. The RoCoF that would follow if that loss occurred now.
RoCoF · today (Hz/s)derivedSteepest rise and fall of frequency so far today: max/min of (fi − fi-1) ÷ Δt over consecutive FREQ samples. A 15-second average (the live feed's cadence), not sub-second instantaneous RoCoF.
Grid RPMderivedRPM = (frequency ÷ 50) × 3000 — the synchronous speed the frequency implies.
Records (all-time)derivedFull-history min/max per dataset (peak demand, peak wind/solar, lowest inertia, greenest half-hour, frequency extremes), each with the moment it occurred; physically-credible band filters reject corrupt spikes.

Freshness, alignment & fallbacks

  • Each tile shows the timestamp of its latest lake row (“updated X ago”). The lake's natural currency varies by feed, so staleness is judged relative to the board's freshest tile, not wall-clock now — a feed lagging the newest by > 3 h is badged stale.
  • Demand uses INDO where present, else the GridWatch archive (which lags a few weeks) — badged accordingly.
  • Solar (PVLive, ½-hourly) is folded into the mix at its latest published value; on the generation stack, fuel and solar bands are clamped to a shared time range so the edges stay flush.
  • Inertia estimate vs measured — and synthetic. The live estimate counts transmission-synchronous plant only: the real spinning energy present at T+0. NESO's Outturn is a lumped figure that also folds in procured “synthetic inertia” — a fast inverter response that, not being present at the instant of a loss, we hold to be a category error and refuse to count as inertia. The GDA model resolves NESO's scalar back into real vs synthetic (e.g. ~100 published ≈ ~75 real + ~25 synthetic; grey + synthetic ≈ the lumped figure, decomposing almost cleanly). The gap is largest at the midday solar trough. The History chart plots all three lines; the Regulator page sets the FRCR floor context.
  • RoCoF resolution. The live “today” RoCoF is averaged over the 15-second frequency feed, so it stays well below the 0.125 Hz/s protection line even during real sub-second events. The counterfactual (if-LCC-trips) RoCoF is the security-relevant one.

Provenance

GridGlass redisplays already-public data acquired by the GDA lake and applies deterministic, documented transforms (the formulas above). This is display of public information — it is not inference or forecasting, and carries no forward-looking horizon guard. Values are “as published” in the lake; for operational decisions, always verify against the primary source (Elexon BMRS, NESO Data Portal).