Methodology
The short answer
Every time-sensitive value carries a jurisdiction, an election, a primary source, a verification time, an accountable reviewer, and a next review time. When the review is overdue, the value is removed automatically and the official link takes its place.
What counts as a time-sensitive fact
Any value that can expire or change: an election date, a registration deadline, a ballot request or return deadline, polling hours, a result status, or a certification deadline. Each one is stored with the same fields.
- Jurisdiction and election name.
- Fact type and the value as it should be read.
- Time zone.
- Primary source, and the source publication date where the source provides one.
- The time it was last verified, and the accountable reviewer.
- The time the next review is due.
- The date after which the value is archived.
- A status: verified, under caution, withheld, archived, disputed, or on hold.
Verification cadence
The interval tightens as an election approaches.
| Time before the election | Review interval |
|---|---|
| More than 120 days | Weekly |
| 31 to 120 days | Twice weekly |
| 8 to 30 days | Daily |
| Final 7 days through poll closing | Every four hours for any value displayed here |
If we cannot meet the cadence a value requires, we do not display the value. We display the official link instead. That rule is enforced in code at the moment a page is requested, not at the last build, so an overdue value disappears without anyone deploying anything.
What each state means on the page
- Verified. Reviewed against the primary source within the required interval.
- Review due. The next review is approaching. The value is shown with a caution notice and the official link.
- Value withheld. The review is overdue. The value is removed, along with its structured data, and the official link is shown. If the page has little remaining value without it, the page also asks search engines not to index it while following its links.
- Archived. The election has passed. Action controls are removed and a visible archive notice appears.
- Sources disagree. Two official sources conflict. We say so and route to the election office rather than choosing.
- On hold. A value is under review after an unexpected change at the source.
Official destination checks
Outbound destinations are validated against a curated allowlist. Each entry records the destination, the publisher, the last automated check, and the last human review. An automated check confirms that a link resolves over HTTPS to the expected host. It never approves a new destination on its own. If a destination redirects somewhere unexpected, it is disabled until a person reviews it, and the affected page shows the directory instead.
We record the link check separately from the content update, so a link check never makes a page look freshly reported.
Reading Census data
Census voting and registration figures are survey estimates of reported behavior, not counts of ballots. We state the release, the table, the population, the denominator, and the margin of error whenever we publish a figure, and we do not compare figures that use different denominators. See women voter turnout for the full treatment.
Reading roll call votes
We cite the chamber, the vote number, the date, the question being voted on, and the result, and we link the official record. We distinguish procedural votes, cloture, amendments, motions to table, recommittal, and final passage, and we do not describe a procedural vote as a policy vote. See how Congress votes.
When a source goes down
If an official source is unreachable, we do not substitute a copy from a third party. We show the reader that the source is unavailable, keep the last verified state visible with its verification time, and route to the responsible election office.
Archiving
Pages tied to a completed cycle are archived with a visible notice, their action buttons are removed, and they link forward to the current guide. We do not update a date to imply freshness, and we do not redirect an archived cycle to the homepage.
Change history
This page has not been substantively changed since it was published on August 29, 2026.
Found an error? Report it and read the correction log.
Support this project
Help cover hosting, source review, accessibility, maintenance, and independent civic education.
- Payments go to the independent publisher of this site. Stripe names the receiving entity on the checkout page and on your receipt.
- Payments are not tax deductible, and do not go to a candidate, campaign, political party, or ballot committee.
- Support does not influence our factual coverage or editorial conclusions.
- Voter information on this site is free and stays free.
Checkout is hosted by Stripe. Amount and cadence are shown before you pay, and recurring support is never preselected. See the full support terms and how this publication is funded.