Open data
The figures behind this site's records, monthly reports and price cap pages, as static JSON files. Free to use under open licences, with no key and no sign-up.
Start here
The catalogue lists every file with its licence and fields.
Every dataset
curl -s https://www.ukenergydata.co.uk/data/v1/index.jsonRegional cap, one area
curl -s https://www.ukenergydata.co.uk/data/v1/regional-cap.json \
| jq '.data.regions[] | select(.slug == "london") | .rates.directDebit'Monthly means
curl -s https://www.ukenergydata.co.uk/data/v1/reports.json \
| jq -r '.data[] | "\(.month) \(.intensityMean) g/kWh"'Every file has the same shape
- generated: when the figures were produced, not when the site was deployed. ISO 8601.
- licence: id, name and URL.
- attribution: the credit line to use.
- source: each upstream source, with its own licence and credit.
- data: the dataset itself.
Times are UTC; dates are London dates. Prices are in pence including VAT as charged, costs in pounds.
Datasets
Great Britain electricity grid records
All-time records for the GB grid: the cleanest half hour and day, the highest wind, solar, import and zero-carbon shares, the lowest gas share, the last half hour with coal, and a summary for each year since 2017.
- URL
- https://www.ukenergydata.co.uk/data/v1/records.json
- Updates
- Recomputed from the full half-hourly history when the records are rebuilt; data.updated gives the time of the last run.
- Licence
- Creative Commons Attribution 4.0
- Credit
- UK Energy Data (ukenergydata.co.uk), from the Carbon Intensity API (NESO and partners)
- Fields
- data.coverage: First and last half hour covered, for intensity and for the generation mix (UTC).
- data.lowestHalfHour, data.lowestDay: Carbon intensity in g CO₂/kWh, with the half hour (from, UTC) or London date.
- data.highestWind, highestSolar, highestImports, highestZeroCarbon, lowestGas: Share of generation in per cent, with the half hour it happened (UTC).
- data.lastCoal: The last half hour with coal in the mix, and its share.
- data.yearly[]: Per calendar year: half hours covered, mean intensity, per cent of half hours under 100 g/kWh, wind and zero-carbon shares.
curl -s https://www.ukenergydata.co.uk/data/v1/records.jsonLoading…
State of the grid: monthly summaries
One summary per month of Great Britain's electricity: mean, cleanest and dirtiest carbon intensity, daily means, the generation mix against the same month a year earlier, balancing and constraint costs, and Agile Octopus price statistics for London.
- URL
- https://www.ukenergydata.co.uk/data/v1/reports.jsonOne file per month at https://www.ukenergydata.co.uk/data/v1/reports/{YYYY-MM}.json; now 2026-09, 2026-08.
- Updates
- Monthly, early in the following month.
- Licence
- Creative Commons Attribution 4.0
- Credit
- UK Energy Data (ukenergydata.co.uk), from the Carbon Intensity API (NESO and partners), NESO data (Supported by National Energy SO Open Data) and the Octopus Energy public API
- Fields
- data[] (reports.json): Every month published, newest first: month, title, url, file, and the headline figures below.
- summary[]: The report's findings as plain sentences, generated from the figures.
- intensity: mean, min and max (g CO₂/kWh, with half hour), cleanestDay and dirtiestDay (London date and mean), days[] (daily means), share (per cent by fuel), zeroCarbon, peakWind, halfHoursUnder100 and halfHours.
- lastYear: The same month a year earlier: mean intensity, share by fuel, zero-carbon share.
- balancing: NESO balancing cost and constraint cost (GBP), and generation turned down for constraints (MWh).
- agile: Agile Octopus in London (region C): mean, min and max (p/kWh inc VAT) and half hours below zero.
curl -s https://www.ukenergydata.co.uk/data/v1/reports.jsonLoading…
Ofgem energy price cap, Great Britain
The current Ofgem price cap for a dual-fuel home paying by Direct Debit (unit rates, standing charges, typical annual bill) and every cap since 2019.
- URL
- https://www.ukenergydata.co.uk/data/v1/price-cap.json
- Updates
- Quarterly, after Ofgem announces each cap (late February, May, August and November).
- Licence
- Open Government Licence v3.0
- Credit
- Contains public sector information licensed under the Open Government Licence v3.0 (Ofgem)
- Fields
- data.current: quarter, period, annualBill (GBP), elecUnit and gasUnit (p/kWh), elecStanding and gasStanding (p/day), VAT included as charged.
- data.typicalUse: Ofgem's typical yearly use in kWh, for electricity and gas.
- data.history[]: Each cap since 2019: quarter, annualBill (GBP), electricityUnit and gasUnit (p/kWh, null before late 2020).
- asOf, nextDue: When the figures were last checked, and when the next announcement is due.
curl -s https://www.ukenergydata.co.uk/data/v1/price-cap.jsonLoading…
Ofgem energy price cap by region
The current cap for each of the 14 electricity distribution areas and the GB average, for Direct Debit, payment on receipt and prepayment: electricity and gas unit rates and standing charges.
- URL
- https://www.ukenergydata.co.uk/data/v1/regional-cap.json
- Updates
- Quarterly, with each cap announcement.
- Licence
- Open Government Licence v3.0
- Credit
- Contains public sector information licensed under the Open Government Licence v3.0 (Ofgem)
- Fields
- data.period: The quarter the rates apply to.
- data.regions[]: One row per area: ci (Carbon Intensity region id, 0 for the GB average), gspGroup (letter, null for the average), slug and name.
- data.regions[].rates.directDebit, .onReceipt, .prepayment: electricityUnit and gasUnit (p/kWh), electricityStanding and gasStanding (p/day), VAT included as charged.
curl -s https://www.ukenergydata.co.uk/data/v1/regional-cap.jsonLoading…
GB electricity distribution areas: identifiers
The 14 distribution areas with every identifier you need to join datasets: Carbon Intensity API region id, GSP group letter (as used in Octopus tariff codes), name, and the network operator and licensee.
- URL
- https://www.ukenergydata.co.uk/data/v1/regions.json
- Updates
- When an area's operator changes.
- Licence
- Creative Commons Attribution 4.0
- Credit
- UK Energy Data (ukenergydata.co.uk); operator names as listed by Ofgem and the Energy Networks Association
- Fields
- data[]: ci (1 to 14), gspGroup (A to P, no I or O), slug, name, dno, licensee, dnoUrl.
curl -s https://www.ukenergydata.co.uk/data/v1/regions.jsonLoading…
For live data, go to the source
These files change a few times a month at most, so please fetch them no more than once an hour and cache what you get. For anything live, use the original APIs below and keep within their published limits.
Carbon intensity, national and for the 14 regions, with a 48-hour forecast and the generation mix.
Creative Commons Attribution 4.0. Credit: Carbon Intensity API (NESO and partners).
Generation by fuel, demand, frequency, interconnector flows and wind forecasts.
BMRS data licence. Credit: Contains BMRS data © Elexon Limited copyright and database right 2026.
Balancing costs, constraints, embedded wind and solar, demand forecasts.
NESO Open Data Licence. Credit: Supported by National Energy SO Open Data.
Agile and other tariff prices for every region.
Octopus states no open licence; check its terms before reusing prices.
Licences
- Records, reports and the area table are our own work, under CC BY 4.0. Credit UK Energy Data and the sources each file names.
- The price cap files are Ofgem’s figures, under the Open Government Licence v3.0.
- The monthly Agile figures are summary statistics only. Octopus Energy publishes no open licence for its prices, so the half-hourly prices are not included.
Questions
No. The files are public, need no key or sign-up, and can be fetched from a browser on any site.
Yes, under each file's licence: CC BY 4.0 for our summaries and records, the Open Government Licence v3.0 for Ofgem's figures. Both allow commercial use as long as you give the credit line shown above.
Use the attribution field in the file, which names us and the upstream sources, and link to this page where you can.
Within v1, fields are only ever added. Anything that renames or removes a field would go to a new /data/v2/ path, with v1 left in place.
The live figures come from the public APIs listed above, and those are the right place to fetch them: this site only passes Carbon Intensity requests through a short-lived cache to spare the publisher, and that cache is not an API we can promise to keep stable.