# GB Carbon Intensity by Postcode

> GB Carbon Intensity by Postcode is a paid API for AI agents from pennydatahq.com, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-31).

Returns the forecast carbon intensity (gCO2/kWh) and electricity generation mix for the current half-hour period in the GB grid region corresponding to a given postcode.

## Facts

- Endpoint: GET https://pennydatahq.com/api/carbon/:postcode?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/gb-carbon-intensity-by-postcode-532d3173
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ZeStxnuQTzf8JpceGfmyM

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability gb-carbon-intensity-by-postcode-532d3173
```

Example prompt: What's the carbon intensity of the electricity grid right now at postcode SW1A — tell me the gCO2/kWh figure, the intensity index, and the current generation mix by fuel type.

## When to prefer this

Use this endpoint when you need real-time, postcode-level carbon intensity data for Great Britain, especially when regional granularity matters (rather than a national average). It is ideal for carbon-aware scheduling, green energy dashboards, EV charging optimisation, or any agent workflow that needs to act on current grid conditions for a specific UK location. Prefer this over generic energy APIs when you need both the gCO2/kWh figure AND the generation mix in a single lightweight call at very low cost per lookup.

## Known failure modes

- Unsupported postcode (e.g. Northern Ireland BT postcodes not on GB grid) — returns error
- Invalid or malformed postcode format — may return 4xx error
- Upstream Carbon Intensity API unavailable — may return 5xx or stale data
- Postcode not recognised — region lookup fails
- Payment not included or insufficient — x402 payment required response

## How this service works

Forecast carbon intensity of Great Britain electricity for the current half hour in the region of a postcode, with the generation mix, as JSON.

## Output

A JSON object containing: the postcode outward code, the start and end timestamps of the current half-hour window (ISO 8601 UTC), the regional name and DNO area, the forecast carbon intensity in gCO2/kWh, a human-readable intensity index (very low / low / moderate / high / very high), and a generation mix object showing percentage contribution from each fuel type (e.g. wind, solar, gas, nuclear, biomass, imports).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "pathParams": {
     "type": "object",
     "required": [
      "postcode"
     ],
     "properties": {
      "postcode": {
       "type": "string",
       "description": "Great Britain postcode or outward code (the first half, such as RG10), with or without the space, any case. Northern Ireland (BT) is not on the GB grid and is not supported."
      }
     }
    },
    "queryParams": {
     "type": "object",
     "properties": {}
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "postcode"
     ],
     "properties": {
      "to": {
       "type": [
        "string",
        "null"
       ],
       "description": "End of the half hour, ISO 8601 UTC"
      },
      "from": {
       "type": [
        "string",
        "null"
       ],
       "description": "Start of the half hour, ISO 8601 UTC"
      },
      "region": {
       "type": [
        "string",
        "null"
       ]
      },
      "postcode": {
       "type": "string",
       "description": "Outward code"
      },
      "dno_region": {
       "type": [
        "string",
        "null"
       ],
       "description": "Distribution network operator area"
      },
      "generation_mix": {
       "type": "object",
       "description": "Percent by fuel",
       "additionalProperties": {
        "type": "number"
       }
      },
      "intensity_index": {
       "type": [
        "string",
        "null"
       ],
       "description": "very low, low, moderate, high or very high"
      },
      "intensity_gco2_per_kwh": {
       "type": [
        "number",
        "null"
       ],
       "description": "Regional forecast"
      }
     }
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/gb-carbon-intensity-by-postcode-532d3173/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from pennydatahq.com](https://www.zero.xyz/host/pennydatahq.com/llms.txt)
