Accuracy & corrections

A record is only worth what its errors cost it

The feeds exist to be a trustworthy record, which means the accuracy rules aren't a policy page written after the fact — they are how the system is built. The governing principle, verbatim from the project's engineering docs: a wrong claim is worse than a hedged or omitted one.

The rules the pipeline enforces

How posts stay honest

  • Official sources only. Posts are generated from Congress.gov and from the EU's official registers (the European Parliament's open-data service, the Publications Office, and the OEIL Legislative Observatory) — never from news coverage or social media.
  • Numbers are never written by AI. Vote tallies, dates, bill numbers and budget figures are copied from the record verbatim. If the record lacks a number, the line is omitted — not estimated.
  • Fail closed. When an action in the record is ambiguous — a procedural step the classifier can't confidently place — the system logs it and stays silent rather than guessing on air.
  • Real clocks only. "The President has ten days (Sundays excepted)" is a constitutional fact, so the feed states it. Trilogue timing is not published, so the feed says that instead of inventing a timetable.
  • Uncertainty stays in words. Genuine branch points are marked "expected", "possible", "if and when" — likelihood claims always carry their basis, and never dress a guess as a fact.
  • AI is labeled. The plain-English summaries are AI-written and carry an explicit [AI-Generated] tag, positioned so it can never be misread as labeling the procedural facts, which are not AI-written.
  • Non-binding means saying so. Parliamentary resolutions that change no law always carry "non-binding" in the post; a political agreement is never called a law, and "in force" is never conflated with "applies to you now".

When we get it wrong

Corrections are visible, never silent

Automated systems reading government databases will sometimes be wrong — because of our own bugs, and sometimes because the record itself is amended after the fact. What we promise is not perfection; it's that no error is fixed quietly. An erroneous post is corrected in the open. The post itself carries a Corrected flag, the values that changed are marked, and a footer says what it used to say, when it changed and why. On X the correction goes out as a reply to the original post. Every correction is listed in our public corrections log.

Report an error

Spotted a discrepancy between a post and the official record? Email accuracy@billtracking.org with a link to the post and to the official source. Every report is read.

Credit, if you want it. Confirmed reports are credited in the log entry — your name or your X handle, your choice, and only if you explicitly opt in. Reports are otherwise anonymous. (For students: a credited correction to a public record is a nice thing to be able to link to. Instructors — there's a ready-made exercise built on exactly this.)

Corrections log

Every confirmed correction is listed at billtracking.org/corrections — what the post used to say, what it says now, the date it changed, why, and, where a correction has one, its source. That page is generated from the published record itself, so it cannot fall behind the posts it describes, and it says so plainly when there is nothing to log.

Reader votes

How the reader vote is counted

Readers can vote Yea or Nay on a bill. It is reader sentiment, not a poll of anyone's electorate — the people who voted are the people who happened to read the post, and they are not a sample of anything. The method is published here so that a figure taken from this site can be checked against how it was produced.

  • One account, one vote per bill. That is the only reason voting asks you to sign in — it is what stops the same account counting twice. Change your mind and your vote changes; withdraw it and it leaves the count.
  • Counts are exact. Never rounded, banded or jittered. A cited number is the number.
  • Every place inside the bill's own legislature is named, with its count. US states on a US bill, member countries on an EU one. There is no minimum below which one of them is hidden or merged into "other", and every split shows how many people it is — so "Wyoming, 1 vote, 100% Yea" reads as one person rather than as a percentage. Votes from outside that legislature are counted together in one row, and votes with no country in another, so no vote is dropped.
  • Location is optional, self-reported and coarse. Country, and US state — never finer, never verified, and never derived from your IP address. A place row means "readers who selected Belgium", not "readers in Belgium". Votes with no location still count in the overall total.
  • A vote carries the location you had when you last cast it. It is recorded on the vote itself, so a reader who later moves country does not silently rewrite figures already published.
  • Who voted which way is never published. It is never shown to anyone or attached to a profile — there are no public profiles and no public vote histories, and only counts are published. Deleting your account removes your votes from every future count.

What this cannot promise: in a very small or very lopsided place row, somebody who already knows a particular reader voted could guess how. That comes with publishing any aggregate at all — a minimum group size would move the line, not remove it — and it is why the location is optional in the first place.

How we protect the reader vote

Voting needs an account, and an account needs a Google or Apple sign-in. One account casts one vote per bill. Tapping the other choice moves your vote; tapping the one you already chose withdraws it. Deleting your account removes every vote you cast.

Counts are exact. We never round them, and every split shows how many people it is, so a one-person row reads as one person.

We keep a daily history of each bill's counts, by place, and we count the votes that leave with deleted accounts. That way a fall in a total can say votes left, rather than people changed their minds.

We don't fingerprint devices, we don't verify the location you give us, and the count we keep of a departed vote identifies nobody.

Two limits worth knowing. One account is one vote, but nothing stops a determined person creating several accounts across both platforms; what makes that hard is Google's and Apple's own account constraints, not ours. And these are the readers who chose to vote, not a sample of anyone's electorate.