TaxTracker TaxTracker

How it works

A plain-language guide to our pipeline: origination → collection → expenditure. This is about methodology, not how to submit data.

Public funds should be public knowledge. TaxTracker exists to honor sunlight laws, open-data mandates, and the simple belief that communities thrive when people can actually see how money moves. Transparency is not just good governance—it is the accountability mechanism that keeps public promises honest and empowers residents to push for better outcomes.

The pipeline

We aggregate public records, normalize them to a common schema, compile to JSON, and render pages.

What’s in a tax record

  • name, slug, status, type
  • jurisdiction (level, name, slug)
  • agency (name, slug)
  • rates[] (percent/amount; applies_to; cap)
  • revenue & revenue_year (latest annual USD)
  • sources[] (name + URL), updated_at, notes

Provenance & verification

  • Every fact links to an official source.
  • Edits via PR/Issues leave an auditable history.
  • Automated validation catches schema drift.

How pages are generated

Inventory reads _data/compiled/taxes.json. Per-tax pages are generated from that dataset (either via a build step or a Jekyll generator), ensuring the site reflects the latest data.

Roadmap

Contribute a tax from your jurisdiction

Start small—add one accurate record with an official source. We validate JSON and key ordering automatically.