Methodology
How the live figures are sourced, derived, estimated and paused.
This page explains where the numbers on The World Electricity Clock come from, how we label them, and what we do when a source misbehaves. The clock shows near-real-time electricity prices and generation from official grid sources. It is provisional data, not for trading or operational decisions.
Sources and licences
We publish only sources whose licence clearly allows commercial redistribution, and we show the required attribution on every page that uses them.
| Market | Source | Licence basis |
|---|---|---|
| Great Britain | Elexon, BMRS / Insights Solution | BMRS data licence, copyright notice required |
| Denmark | Energinet, Energi Data Service | Creative Commons Attribution 4.0 |
| Australia (NEM) | AEMO, NEMWEB | AEMO general copyright permission, attribution required |
| Taiwan | Taipower via data.gov.tw | Open Government Data License, Taiwan v1.0 |
| Exchange rates | Frankfurter, ECB reference rates | Free use of blended rates |
Other grid operators are collected for research only and are not shown. The ENTSO-E Transparency Platform is not used.
Badges
Badges are not drawn next to each number; every figure still carries one in the page code, and the ⓘ panels name it.
Every number carries one of three badges. Metered means the value is taken directly from the operator’s published figure. Derived means we computed it from metered values: totals, sums, the renewable share, or a currency conversion. Estimated is reserved for values modelled beyond simple arithmetic. Carbon figures are Estimated: metered generation multiplied by a published lifecycle emission factor is a model, not a measurement.
Interval conventions
Intervals differ by source, and we store every timestamp as the start of the interval in UTC.
- Great Britain: generation is five-minute, stamped at interval start (documented); prices are half-hourly settlement periods converted to UTC from local midnight, and we check each against the API start time.
- Denmark: day-ahead prices are 15-minute, generation is five-minute, both stamped at interval start in UTC (documented). That positive means import in the exchange line is inferred.
- NEM: prices are five-minute and the file stamp is the interval end, so we subtract five minutes (documented). Market time is fixed at UTC+10 with no daylight saving.
- Taiwan: about ten-minute readings with one timestamp, treated as the interval start (inferred).
Quality gates
We reject suspect values; we never clip them to a plausible number. A night-time solar reading is accepted up to the larger of 50 MW or 2 percent of installed capacity, and small negative solar values are plant auxiliary load and are shown as metered. A price is rejected only if it lies beyond twice the known cap or floor of its market. If more than 20 percent of critical zones, meaning those that carry a price or load, are stale, the page shows a stale band and the previous release stays in place. A metric whose newest point is older than three times its interval is shown as paused, with the last value and its time.
Demand
Great Britain demand is Elexon’s initial national demand outturn (INDO), published per half-hour settlement period and badged Metered. Taiwan demand is Taipower’s published current system load (台灣電力公司今日系統供需狀況), badged Metered. NEM regional demand is AEMO’s dispatch total demand, badged Metered.
Denmark publishes no near-real-time consumption field, so Danish demand is calculated by us and badged Derived. For each five-minute row of Energinet’s ElectricityProdex5MinRealtime dataset, per price area:
- DK1 load = ProductionGe100MW + ProductionLt100MW + OffshoreWindPower + OnshoreWindPower + SolarPower + ExchangeGermany + ExchangeNetherlands + ExchangeGreatBritain + ExchangeNorway + ExchangeSweden
- DK2 load = ProductionGe100MW + ProductionLt100MW + OffshoreWindPower + OnshoreWindPower + SolarPower + ExchangeGermany + ExchangeSweden
- Denmark load = DK1 load + DK2 load, published only when both areas reported the same five-minute stamp.
Exchange values are positive for imports into Denmark. The internal DK1–DK2 link (ExchangeGreatBelt) is excluded because it nets out inside Denmark, and the Bornholm link is excluded because it is already part of DK2’s Swedish exchange. Energinet’s dataset description lists exchange with Germany, Sweden, Norway and the Netherlands; the Great Britain link (Viking Link) also appears in the data and is included, because leaving it out produced totals far above Energinet’s settled gross consumption, while including it matched that settled figure closely in our spot checks. Until Energinet documents this identity, the Danish demand figure stays Derived and this definition stands.
Records
A record is the most extreme value of its kind in our own data window for one market, described as “record since” the first date we hold, never as an all-time figure. A new extreme starts as provisional. It becomes confirmed when a second, independent reading supports it: for feeds that re-publish recent intervals (Elexon, Energi Data Service) a later batch fetched at least 15 minutes after the first must show the same value within 2%; for feeds that publish each interval only once (AEMO, Taipower) a later batch fetched at least 15 minutes afterwards must exist while the original value is still unrevised and unflagged. Each record page states which of the two confirmation bases applied. A record that is revised, flagged or not confirmed within 72 hours is retracted, and the retraction stays visible.
Record pages are not offered to search engines while a market’s data window is shorter than 90 days, because with only a few weeks of history almost any reading would be a record. After that, only confirmed records that beat a previous confirmed record can be indexed, at most three per day.
Currency conversion
Prices appear in local currency first. The dollar figure is Derived: we convert with the ECB reference rate from Frankfurter and show the rate date. Taiwan has no price in our feed, so there is no conversion.
Carbon estimate
The carbon figure uses lifecycle median factors from IPCC AR5 Working Group III, Annex III, in our table version v1 dated 23 October 2026. It is badged Estimated (metered generation × published factor), on the clock’s CO₂ counter as well as in the carbon estimate. Oil has no AR5 median, so 650 g/kWh is shown as a proxy. Denmark is excluded because its thermal output is not split by fuel. Fuels in the ‘other’ group are not counted, so the figure is a partial estimate rather than a measured intensity.
Revisions
Operators revise their data. A value shown now may change later, and we keep a revision history instead of overwriting silently. Editorial pages show a modified date only when their text changes.
The electricity clock
The counters on the home page and at the top of each market page add up energy since 00:00 UTC. For each market we take its metered readings for today and join them with straight lines (a trapezoid integral), and count the last reading over its own reporting interval, because sources stamp each value at the start of the interval it covers; a gap longer than two reporting intervals is left out, never filled. That total is the anchor, and it is the number written into the page itself.
Between readings your browser continues the count at the last metered rate: anchor + rate × time since the last reading. It does so for at most 15 minutes. After that the market stops adding and the counter reads “paused · waiting for data” until a new reading arrives. Only markets that report every 30 minutes or faster, and whose data is current, are counted; the hourly, delayed U.S. EIA-930 total is shown on its own line and does not tick. Every minute the page fetches fresh anchors; a correction never runs the counter backwards, it waits for the metered total to catch up or moves forward smoothly over three seconds. Each market starts counting at its first reading of the UTC day, so on a market’s first day the total covers only part of the day. The CO₂ counter multiplies metered generation by the published factor table and is marked Estimated. The counters redraw on every screen frame: the small digits after the point are kilowatt-hours (kilograms for CO₂) of the same bounded flow, and “MWh every second” is the current metered rate divided by 3,600. When no market yet has a full metered day, “Since you opened this page” still runs on the latest fresh readings under the same 15-minute limit.
A market enters a “today” total only when its readings cover at least 95 % of the UTC day so far, starting at 00:00 UTC; until then the page shows its current rate (“now”) and lists it as a partial day. “Metered to” is the latest time that more than half of the counted markets have reached; markets still behind are listed in the ⓘ panel. Great Britain’s counter uses Elexon FUELINST, the five-minute generation of every transmission-connected fuel type, because the half-hourly demand series arrives about an hour late; interconnector imports are excluded (that power is generated abroad) and pumped storage counts net, so the figure is British generation, not consumption.
Hub counters
Below the main counter the home page lists where the electricity is used (each counted market’s own anchor; the rows always add up to the main counter to the kilowatt-hour, and the delayed U.S. operators sit in a separate block that never ticks) and eight cards. The wholesale-spend card multiplies each market’s metered demand by its published price for the same period (Great Britain: the half-hourly Market Index price; Australia: the 5-minute regional price), converts to US dollars at the ECB rate, and follows the same honest-flow rule as the energy counters; it runs down while a price is negative. A market counts only with a full metered day of both series. The wind-versus-gas stopwatch adds up the time in which metered wind was above metered gas. The sunset countdown uses the NOAA solar-position equations for a fixed reference point (Odense for Denmark, Taichung for Taiwan) and only markets with fresh metered solar. The cheapest and most expensive cards compare the latest published prices in USD and count how long the leader has been on top, stopping 15 minutes after its latest price. The carbon card divides estimated CO₂ by metered generation of the grids listed and is marked Estimated. Nothing on these cards is extrapolated beyond the 15-minute limit.
Cheapest hours
An hour is a local clock hour of the market’s own calendar day, so a clock-change day has 23 or 25 hours. Its price is the average of the prices inside it: four 15-minute day-ahead prices in Denmark (Energinet, Energi Data Service); in Australia, 5-minute dispatch prices for hours already past and AEMO’s 30-minute pre-dispatch prices for hours still to come (NEMWEB PredispatchIS). An hour without data stays empty.
What we do not do
We make no forecasts of our own. The only forward-looking figures on the site are AEMO’s published pre-dispatch prices on the Australian cheapest-hours pages, labelled “forecast by AEMO”. Prices, demand and every other figure hold their last published value until the next reading arrives; the only moving numbers are the clock counters described above, which tick for at most 15 minutes past a real reading, and countdowns to fixed, already published times. We give no trading, investment or operational advice. If a source goes quiet we say so rather than guess.