Open Data

Everything we maintain, in machine-readable form. Take it, check it, and use it — including to prove us wrong.

An organisation that asks governments to publish their surveillance records should publish its own. These files are the complete dataset behind every number on this site.

Two things worth knowing before you use them. Every record carries a sourcing tier, and a news-reported fact is not an established one. And every field that we have not established reads unknown — that is not the same as no, and rendering it as no would misstate the record. There is also an llms.txt index for retrieval systems.

Versioned endpoints

The current record set, with the provenance fields intact. Stable paths under /data/v1/.

  • v1/signal.json

    14 records

    Every Signal record with its structured facts, disputed claims, unknowns, and expanded sources. Each claim carries its evidentiary standing, so a consumer can tell an allegation from a conviction without parsing prose.

    CC BY 4.0

  • Jurisdiction dossiers: ALPR status, retention, outbound sharing, warrant policy, audits, contracts, and open questions. Unknown fields are emitted as the literal value "unknown" rather than omitted or coerced to false.

    CC BY 4.0

  • v1/alpr-locations.json

    118,665 records · 50/50 states

    Known ALPR locations with a precision level on every record, plus a coverage block naming every state we hold no data for. Absence of a record is not evidence of absence of surveillance.

    CC BY 4.0 · camera coordinates ODbL

  • v1/verification.json

    5 assessments

    Verified Unsurveilled assessments with criterion-level results and evidence. `badgeEligible` is computed from the evidence, so VERIFIED cannot be claimed by a record that does not support it.

    CC BY 4.0

Files and spreadsheets

Direct downloads, including the original v1 paths, which stay where they are because they are already cited.

  • Decisions and incidents with the sourcing tier attached to every record and the tier definitions included inline. Superseded by the versioned endpoints above, and kept because it is already cited.

    CC BY 4.0

  • The Decision Record as a spreadsheet: what each jurisdiction decided, what drove it, and what happened afterwards.

    CC BY 4.0

  • Documented harms as a spreadsheet, including the disputed-account field for contested entries.

    CC BY 4.0

  • unsurveilled-alprs.geojson

    118,623 coordinates

    Every mapped ALPR camera coordinate we hold, nationwide, as standard GeoJSON. Community-contributed observations from OpenStreetMap, not an inventory — see the methodology for exactly how the set was produced. Opens in QGIS, OsmAnd, Organic Maps, or any GIS tool.

    ODbL — © OpenStreetMap contributors

How to cite this

The datasets we produce — the Decision Record and Documented Harms — are released under CC BY 4.0. You may copy, adapt, and republish them, including commercially, with attribution. A citation like this is plenty:

Unsurveilled, Decision Record, retrieved [date], https://unsurveilled.org/data/

The map data is different and is not ours to relicense. It comes from OpenStreetMap contributors and remains under the Open Database License. If you republish it, carry that attribution. It travels inside the GeoJSON file so it cannot be accidentally separated from the data.

What the sourcing tiers mean

Every record carries a tier, and it is a field in the data rather than a footnote, so you can filter on it. If you are writing something that matters, filter to the strongest tier and check the sources yourself — they are all in the file.

  • primary-document / court-documented — an official release, contract, agenda, minutes, or a public court docket.
  • official-agency — the agency or a government official confirmed it publicly.
  • news-reported — established outlets report it and it is not denied, but we do not hold a primary document.
  • contested — the agency or vendor disputes the characterisation. Both accounts are in the record.

Known limitations, stated plainly

  • The Decision Record is not complete. It is what we have found and verified. Treat counts as a floor, never a census.
  • Documented Harms is a floor too, and by a large margin. It contains cases that became public. In two of the Arizona cases, one surfaced through a routine audit and one through two dispatchers' judgment — which suggests how much never surfaces at all.
  • The map is crowdsourced and incomplete. Nobody has surveyed every road. A blank area means nobody has mapped there, not that the area is unwatched.
  • Dates and counts we could not verify are marked rather than smoothed over. Where a field is empty, we did not have it.

Corrections and contributions

If you find an error, tell us — that is the most useful thing you can do with this page. If you have a decision or a case we are missing, send it with a source and we will add it. Contributions can be credited or anonymous, whichever you prefer.

We would rather be corrected than trusted.