UK Carbon Intensity Scraper: Grid CO2 & Fuel Mix
Pricing
Pay per usage
UK Carbon Intensity Scraper: Grid CO2 & Fuel Mix
Pull GB electricity carbon intensity and generation mix from the National Grid ESO Carbon Intensity API, nationally or per DNO region. No login, no proxy, no browser.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Naimur Hasan
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
8 days ago
Last modified
Categories
Share
UK Carbon Intensity Scraper
Pulls GB electricity carbon intensity and generation mix from the National Grid ESO Carbon Intensity API. No login, no proxy, no browser.
Input
| Field | Type | Notes |
|---|---|---|
scope | string | national or regional. Default national. |
period | string | current | today | last24h | next24h. Default today. |
includeGenerationMix | boolean | Add a column per fuel. Default true. |
Output
One row per half-hour settlement period (national) or per DNO region
(regional): from, to, region, regionId, actual, forecast, index,
plus biomass, coal, gas, hydro, imports, nuclear, other,
solar, wind and lowCarbonPercent when the mix is included.
Notes
- Intensity and fuel mix live on different endpoints.
/generationreturns the mix with no intensity attached, so asking only for it produces a fuel breakdown with every intensity column null. This Actor calls both and joins them on the settlement period'sfrom, leaving the mix null for a period the generation series does not cover rather than borrowing the neighbouring one. actualandforecastare different things and both matter. Future settlement periods have a forecast and no actual; recent ones have both and they frequently disagree by tens of gCO₂/kWh. They are kept as separate columns rather than coalesced.- The fuel mix arrives as a list, not as fields. Turning it into one column
per fuel means a fuel the API omits has to become an explicit
null, or rows silently shift columns between periods. - Zero is a real value here. Coal routinely reads
0and North Scotland's intensity genuinely hits0; neither is missing data. - The forecast window has no generation mix.
/generationsupports past windows only, sonext24hreturns intensity without fuel columns and the run logs that it did. Asking the generation endpoint for a forward window answers HTTP 400. pt24hreaches back from the timestamp you give it. Passing "now minus 24 hours" returns the window 24 to 48 hours ago, not the last day.- Regional scope is a current-period snapshot — the API has no regional
history at this endpoint — so
periodis ignored there. - There is no
/generation/today; today is expressed as an explicit UTC midnight-to-now window. All timestamps are UTC.