How we stay fair

Fairness you can check, not just trust

Nothing is truly unbiased — so instead of asking you to trust us, we make fairness measurable, visible, and enforced. Here's the whole method, in plain language.

Say, done, and true are kept separate

Three separate systems handle three separate jobs. One captures what a candidate says about themselves, only from sources the candidate controls. One documents what they've done, only from primary sources like votes and official records. One checks what's true, judging specific claims against a fixed six-value scale: Accurate, Mostly Accurate, Mixed, Mostly Inaccurate, Inaccurate, or Unverifiable. The three never blend — spin can't masquerade as record.

No source, no claim

Every claim you see links to the source it came from. A claim with no source is dropped before it ever reaches this site — that rule is enforced in the database itself, not by an editor's good intentions.

Silence is recorded, never filled in

If a candidate has no stated position on a shared issue, we say exactly that: "no stated position found." We never invent a position, and we never quietly drop the issue.

The Balance Audit is a gate, not a goal

Before a race can be published, an automatic audit checks that every candidate received comparable space and comparable scrutiny — the number of verified facts and fact-checks per candidate has to stay within fixed thresholds. If any candidate falls outside them, the race is held back, not published with a disclaimer. Equal treatment is structural.

The scrutiny counts, in the open

For every published race: how many verified facts we hold per candidate, and how many fact-checks were performed. You're welcome to check the math.

We show the ballot, not the filing list

The state's filing list includes everyone who ever ran for a seat, not everyone who will appear on Election Day. We show only the candidates with a printed line on the ballot — those marked Qualified (QUA) or Unopposed (UNO). We leave out candidates who were Defeated in the primary (DEF), who Did Not Qualify (DNQ), who Withdrew (WIT), or who were Removed (REM). We also leave out qualified write-in candidates: a write-in has no printed name on the ballot, only a blank line for voters to fill in themselves, so there is nothing on the ballot itself for us to show. This page shows the ballot as it will look in the booth, not every name that was ever in the race.

How we label the news

Every news card shows its publisher and whether the piece is reporting or opinion, so you always know what kind of writing you're looking at, and opinion pieces are set apart visually from reporting rather than left to blend in. Each card also discloses the source's political lean, when one is known — that is a label on where the outlet sits, not a verdict on the story itself; we don't do anything to a lean beyond disclosing it. Every candidate on the ballot gets the same number of news slots as every other candidate in their race, so heavier press coverage for one candidate never crowds the others off the page. That number comes from measuring how much coverage candidates actually get, and we have not measured it yet — until we do, every sourced story from the last 30 days is shown, ordered by the same rule for every candidate. If we can't fill a candidate's slots with sourced stories, we say so plainly — a shortfall is stated, never padded with unrelated or unsourced items.

We describe. You decide.

We never tell you who to vote for, never rank candidates, and never color-code parties. Candidate order follows one neutral rule (ballot order, otherwise alphabetical), applied identically everywhere. If anything here reads as slanted to you, use the "flag this brief" link on any candidate brief — skeptics are exactly who this page is for.