Methodology
How every position on VoteVera is found, checked and corrected, in plain English. This page is the public copy and is updated with each data release.
What we publish
For each 2026 race we cover (U.S. Senate and Governor today, the House later), we publish a fixed set of short statements and, for each researched candidate, whether the public record shows them agreeing, disagreeing, or taking no clear position. Every agree or disagree comes with a verbatim quote, a link, a date and the type of source.
All of it is public on this site: every finding, every public challenge and agreement, and every ruling.
Who we research
Every candidate who qualified for the ballot is listed. We research a candidate if they are a Democratic or Republican nominee, an incumbent, raised at least $50,000 according to the Federal Election Commission, or reached 5 percent in a public poll. Everyone else appears as "Not researched: below our published threshold". The rule is the same in every state.
A researched candidate is marked Limited data when we could find sourced positions on fewer than 60 percent of the statements.
Candidate lists come from state election offices first. Federal Election Commission records and Wikidata are used only to cross-check. A race's list is marked final only after a person checks it against the certified state list.
The statements
Senate candidates are asked about a federal set of statements; Governor candidates about a set written for their state. Some races add up to four statements on issues specific to that race.
Every statement follows the same rules: one issue, declarative, answerable with agree or disagree, under 140 characters, with no loaded words, no party or ideology words, no candidate names and no slogans. It must be concrete enough that a public record can confirm or deny it. Across a set, "agree" lines up with either side at most 60 percent of the time.
A statement is published only after two reviewers, one left-leaning and one right-leaning, both rate its wording neutral.
How a position is found
An AI research assistant (Claude, made by Anthropic) searches each candidate's public record, one candidate at a time, using web search and page fetching only. For each statement it must return a stance, a confidence, and sources with the exact words. Sources are ranked, strongest first:
| Rank | Type | What counts |
|---|---|---|
| 1 | Vote record | Recorded votes: House Clerk, senate.gov, Congress.gov, state legislature journals. |
| 2 | Campaign or official site | The candidate's own words on a channel they control: campaign issues page, press release, official .gov page. |
| 3 | Questionnaire | A questionnaire the candidate answered for a nonpartisan organization. |
| 4 | Interview or debate | A debate or interview transcript or video. |
| 5 | Official post | A post from the candidate's verified official account, archived. |
| 6 | Press quote | A direct quote in reputable news coverage. |
Mechanical rules apply to every answer: no source, no position. An agree or disagree without a link, a verbatim quote of at most 300 characters and a date becomes "no clear position". Ballotpedia and Vote Smart are never cited because of their license terms. Positions only inferred from related views are never counted unless a person approves them. When sources conflict over time, the newest vote or self-stated position wins.
How it is checked
A second, independent pass checks every cited source. A program fetches each page and looks for the quote (it must match at least 85 percent of the words). A separate AI checker, with a different prompt and without being told the first stance, re-reads the page and reports whether the quote is there, whether the words are the candidate's own, and what stance it would record. Each page is also saved to the Internet Archive, so a deleted campaign page does not break the evidence.
A source counts as verified when either check finds the quote and the checker does not say the words belong to someone else. A position with no verified source is downgraded to "no clear position".
Review in three public phases
- Phase 1: AI findings, public. Research and verification results are published right away with the label "Preview data. Not yet reviewed." so anyone can inspect them before people sign off.
- Phase 2: public check. Anyone who signs in with an email address can agree with a specific finding or challenge it. A challenge must include a link and the exact quote that shows the finding is wrong or out of date. Posts are public immediately; anyone can report one, and a post reported by several people is hidden until it is looked at.
- Phase 3: rulings. Claude drafts a ruling on each challenge with its reasons, weighing the evidence by the same source ranking. The editor approves, edits or rejects the draft. Approved rulings are shown on the finding with the date and the reason.
Separately, a person reviews every flagged finding (verification problems, conflicting sources, inferred positions, the closest races) plus a random 20 percent sample of the rest. If the sample's error rate in a race is 5 percent or more, the whole race is reviewed by hand. Each finding shows whether a person has reviewed it.
Confidence
Confidence is capped by the strongest source: votes and the candidate's own channels can reach high; questionnaires and interviews medium at most; posts and press quotes lower. It is shown as High (0.8 or more), Medium, or Low (below 0.6).
Order and presentation
Candidates are listed alphabetically by last name in every race. Agree and disagree are always shown with a word and a symbol, never by color alone. Candidates and parties never get a color. Party labels are shown as words, as they appear on the ballot.
Data and code
The site reads the same versioned data files the VoteVera app uses. Each release has a date-stamped version and every race file a content hash, so any finding can be traced to the exact file it came from. Challenges and agreements posted here are exported as JSON for the phase 3 review.
Limits
Public records are incomplete, candidates change their minds, and AI makes mistakes. "No clear position" means we did not find one, not that the candidate has none. That is why every finding is open to challenge, and why a person approves every change.