CivAccount

Developers

Free UK council data API & embeds

Every figure on this site is available as a public API and as an embeddable widget. No API key required. Built on OGL v3.0 GOV.UK source data.

317

English councils covered

100

Requests / minute / IP

£0

To use — forever

Embed a council widget

Drop this iframe into any page — news article, estate agent listing, mortgage calculator, campaign site — to show council tax and budget for any of England's 317 councils. Replace kent with the council slug you want.

Full dashboard (recommended)

<iframe
  src="https://www.civaccount.co.uk/embed/council/kent"
  width="100%"
  height="720"
  loading="lazy"
  title="Kent council tax & budget — CivAccount"
  style="border:0;border-radius:12px"></iframe>

Single card

Card types: your-bill, tax-bands, spending, suppliers, financial-health, leadership

<!-- Just the "your bill" card -->
<iframe
  src="https://www.civaccount.co.uk/embed/council/kent/your-bill"
  width="100%" height="320" loading="lazy"
  title="Kent your bill"
  style="border:0;border-radius:12px"></iframe>

Attribution

Every embed footer includes a tiny CivAccount link and Open Government Licence credit. You don't need to add anything else.

JSON API

Base URL: https://www.civaccount.co.uk/api/v1. No key. 100 requests per minute per IP (60/min on councils search). All responses are JSON under CORS *.

Search councils

GET /api/v1/councils — requires search or type (SC, SD, UA, MD, LB). Max limit 20, slim records only.
Unfiltered enumeration is not offered — look up the councils you need individually using the endpoint below.

curl "https://www.civaccount.co.uk/api/v1/councils?search=kent"

Get one council

GET /api/v1/councils/[slug] — returns everything for that council (tax bands, budget, leadership, suppliers, grants, field-level source URLs).

curl https://www.civaccount.co.uk/api/v1/councils/kent
Example response (truncated)
{
  "slug": "kent",
  "name": "Kent",
  "ons_code": "E10000016",
  "type": "SC",
  "type_name": "County Council",
  "council_tax": {
    "band_d_2025": 1842.66,
    "band_d_2024": 1765.44,
    ...
  },
  "budget": {
    "total_service": 1234567,
    "education": 456789,
    ...
  },
  "detailed": {
    "council_leader": "...",
    "chief_executive": "...",
    "top_suppliers": [ ... ],
    "grant_payments": [ ... ]
  },
  "field_sources": {
    "chief_executive_salary": {
      "url": "https://...gov.uk/...",
      "accessed": "2026-04-13"
    }
  }
}

Billing authorities also carry band_d_2026 — the 2026-27 area Band D. County councils are not billing authorities, so their latest figure is band_d_2025.

Data change feed

GET /api/v1/diffs — returns commits that modified council data, with affected councils listed. Query param since (ISO date).

curl https://www.civaccount.co.uk/api/v1/diffs?since=2026-04-01

No bulk export

There is no whole-dataset CSV or JSON endpoint. Per-council lookups are the only way to pull structured data. Slugs are listed in the sitemap.

Where the data comes from

Every council record links to its own .gov.uk source. National aggregates are traceable to one of these:

Full methodology: civaccount.co.uk/methodology. Live data change log: /changelog.

Licence & terms

  • Data: source figures are OGL v3.0 Crown copyright; the compiled dataset is under the CivAccount Data Licence — quote figures and embed widgets freely (commercially too); no bulk copying. Attribution appreciated.
  • Code: MIT. Fork, build on it, ship it.
  • Rate limit: 100 req/min/IP (60/min on councils search). If you need more, get in touch.
  • AI / LLM crawlers: see /llms.txt for a curated index of canonical URLs.

Building something interesting with this data? I'd love to hear about it.

Get in touch