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.
Listed before briefed
A race reaches this site in two steps. First it is listed: we show who is on the ballot and nothing more. That means the names printed on the ballot — from the Florida Division of Elections' general-election candidate list for state and federal races, and from each county Supervisor of Elections' candidate list for county seats — each candidate's party as they filed it, their official campaign site where we have opened the page and confirmed it names the candidate and the office, and whether the seat was already decided. All of that is public record, and every candidate in the race gets the same card.
Then it is briefed: what each candidate says, what they've done, and what's verified appear only after the race passes the Balance Audit. A listed race never shows a position — not a partial set, and not the ones we happened to find first. Until the brief clears, the page says it is in review.
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.
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Maxwell Alejandro Frost | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| James Pericola | 0 | 0 |
| Joe Strada | 0 | 0 |
| Ralph Groves | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Branden Scrivener | 0 | 0 |
| Gus Michael Bilirakis | 0 | 0 |
| Kimberly Overman | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Brian Lambert | 0 | 0 |
| Kathy Castor | 0 | 0 |
| Mike Beltran | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Laurel Lee | 0 | 0 |
| Robert People | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Kelly Kirschner | 0 | 0 |
| Mark Davis | 0 | 0 |
| Sydney Gruters | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Brent Andersen | 0 | 0 |
| Debbie Wasserman Schultz | 0 | 0 |
| Kedner Maxime | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Casey Askar | 0 | 0 |
| Pia Dandiya | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Oliver G. Gilbert III | 0 | 0 |
| Te Mayonna Brown | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Jared Moskowitz | 0 | 0 |
| Peter Jassenoff | 0 | 0 |
| Scott Singer | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Deborah Ann Meidinger Hosey | 0 | 0 |
| Mario Diaz-Balart | 0 | 0 |
| Nicole Locklin | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Eliott Rodriguez | 0 | 0 |
| Maria Elvira Salazar | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Carlos A. Gimenez | 0 | 0 |
| Eddy Rojas | 0 | 0 |
| Phil "Felipe" Ehr | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Bale Dalton | 0 | 0 |
| Christopher Dennison | 0 | 0 |
| Ryan Elijah | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Jennifer Jenkins | 0 | 0 |
| Mike Haridopolos | 0 | 0 |
United States Representative
| Candidate | Verified facts | Fact-checks |
|---|
| Dan Green | 0 | 0 |
| Darren Soto | 0 | 0 |
Commissioner of Agriculture
| Candidate | Verified facts | Fact-checks |
|---|
| Joey Mendoza Atkins | 0 | 0 |
| Wilton Simpson | 0 | 0 |
Attorney General
| Candidate | Verified facts | Fact-checks |
|---|
| James Uthmeier | 0 | 0 |
| Jose Javier Rodriguez | 0 | 0 |
Broward County School Board, District 1
| Candidate | Verified facts | Fact-checks |
|---|
| Maura McCarthy Bulman | 0 | 0 |
Broward County School Board, District 4
| Candidate | Verified facts | Fact-checks |
|---|
| Nicole Morst | 0 | 0 |
Broward County School Board, District 7
| Candidate | Verified facts | Fact-checks |
|---|
| Cynthia Alceus Dominique | 0 | 0 |
Miami-Dade County Commission, District 2
| Candidate | Verified facts | Fact-checks |
|---|
| Marleine Bastien | 0 | 0 |
Miami-Dade County Commission, District 5
| Candidate | Verified facts | Fact-checks |
|---|
| Rob Piper | 0 | 0 |
| Vicki L. Lopez | 0 | 0 |
Miami-Dade County School Board, District 1
| Candidate | Verified facts | Fact-checks |
|---|
| Katrina Wilson | 0 | 0 |
| Linda Cothiere | 0 | 0 |
Governor
| Candidate | Verified facts | Fact-checks |
|---|
| Byron Donalds | 0 | 0 |
| Charles Burkett | 0 | 0 |
| David Jolly | 0 | 0 |
| Dean Ocean Abrams | 0 | 0 |
| Frank J. Russo | 0 | 0 |
| Jeffrey Peter "Dr. Jeff" Datto | 0 | 0 |
| Moliere "Moe" Dimanche | 0 | 0 |
| Scott Eckhard Jewett | 0 | 0 |
Hillsborough County Commission, District 1
| Candidate | Verified facts | Fact-checks |
|---|
| Harry Cohen | 0 | 0 |
| Jackie Toledo | 0 | 0 |
Hillsborough County Commission, District 3
| Candidate | Verified facts | Fact-checks |
|---|
| Gwen Myers | 0 | 0 |
| Luiz F. F. Garcia | 0 | 0 |
Hillsborough County Commission, District 5
| Candidate | Verified facts | Fact-checks |
|---|
| Neil Manimala | 0 | 0 |
| Stacy Hahn | 0 | 0 |
Hillsborough County Commission, District 7
| Candidate | Verified facts | Fact-checks |
|---|
| Aileen Rodriguez | 0 | 0 |
| Joshua Wostal | 0 | 0 |
Hillsborough County School Board, District 2
| Candidate | Verified facts | Fact-checks |
|---|
| Brittany Lyssy | 0 | 0 |
| Daniela Simic | 0 | 0 |
Orange County Commission, District 2
| Candidate | Verified facts | Fact-checks |
|---|
| Kamia Brown | 0 | 0 |
| Mike Crabb | 0 | 0 |
Orange County Commission, District 7
| Candidate | Verified facts | Fact-checks |
|---|
| Patricia Rumph | 0 | 0 |
| Vicki Vargo | 0 | 0 |
Orange County Commission, District 8
| Candidate | Verified facts | Fact-checks |
|---|
| Jeannette Quinones Hernandez | 0 | 0 |
| Victor M. Torres Jr. | 0 | 0 |
Orange County Mayor
| Candidate | Verified facts | Fact-checks |
|---|
| Chris Messina | 0 | 0 |
| Tiffany Moore Russell | 0 | 0 |
Orange County School Board, District 2
| Candidate | Verified facts | Fact-checks |
|---|
| Gloria Reina O'Neal | 0 | 0 |
United States Senator
| Candidate | Verified facts | Fact-checks |
|---|
| Angie Nixon | 0 | 0 |
| Ashley Moody | 0 | 0 |
| Neil J. Gillespie | 0 | 0 |
Listed, not yet briefed (17 races)
These races show who is on the ballot, but their briefs are still in review, so there is nothing to count yet. No count here is not a count of zero.
- Broward County Commission, District 2
- Broward County Commission, District 4
- Broward County Commission, District 6
- Broward County Commission, District 8
- Broward County School Board, At Large 8
- Broward County School Board, District 6
- Chief Financial Officer
- Hillsborough County School Board, District 4
- Hillsborough County School Board, District 6
- Miami-Dade County School Board, District 2
- Miami-Dade County School Board, District 8
- Orange County Clerk of the Courts
- Orange County Commission, District 4
- Orange County Commission, District 6
- Orange County School Board Chair
- Orange County School Board, District 1
- Orange County School Board, District 3
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.
Some seats are settled before November, and we list them rather than leave a gap — a voter whose seat was decided should be able to see who holds it and why it isn't on the ballot. They come in two kinds, and we keep them apart. A seat is unopposed when nobody filed against the candidate: Florida law (F.S. 101.151(7)) then keeps the contest off the ballot, and the candidate takes the office. A seat was decided in the primary when a candidate won it outright in August, as Florida's nonpartisan county races, such as school board, do when someone clears half the vote. Both are missing from the November ballot, for opposite reasons: in one, no one ran against the winner; in the other, people did, and an election was held. Saying "no one filed" about a seat that was won in a contested election would be untrue, so we never merge the two.
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.
A card does not carry the outlet's political lean; the outlet's own page does, next to where the rating came from. Every outlet we draw from has a page that says one of three things:
- A rating, when an independent rating agency such as AllSides has published one — shown as they published it. It describes where the outlet sits, not the story; we never score articles, and we never correct or offset a lean.
- No independent rating, when no rating agency covers the outlet. That is true of most local newsrooms — the agencies rate national and large-metro outlets — and we say so rather than guess one.
- Lean does not apply, for sources that are primary documents rather than journalism, such as a government filing or an official record.
An outlet whose ratings exist but have not been reviewed yet says "Not yet reviewed" — a gap on our side, not a fact about the outlet.
Stories are also tagged with the issues they cover, from one fixed list of 11 categories: Economy & Affordability, Education, Healthcare, Housing, Environment & Water, Immigration, Insurance & Property Costs, Public Safety & Crime, Elections & Voting, Retirement & Benefits, and Abortion Policy. A model does the tagging, and only after a story is already stored. Whether a story is stored is settled before any model sees it: it has to come from an outlet on our list, name a candidate on the ballot, and be approved by a person. Tagging adds a label and never decides what is stored, and a story without a tag still appears — just without an issue label.
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.
How we order what people say about a ballot question
We write no case for or against an amendment. Each ballot question page collects what other people have published about it and puts each link in one of five groups, by what kind of source it is:
- Official documents — the ballot text, the resolution that put it there, a staff or revenue analysis.
- Research — studies and analyses with a method behind them, from universities, institutes and policy groups.
- Reporting — a newsroom explaining or covering it.
- Positions — a named person or organisation making the case: editorials, the sponsor, an advocacy group.
- Commentary — takes from people speaking for themselves: a video channel, a podcast, a blog.
The group decides where a link sits on the page, most established first. Nothing else does — not the outlet's lean, not whether it is a video or an article, and never our opinion of it. A video can sit in any group depending on who made it. Official documents and reporting are shown to everyone first; positions and commentary are shown under the side they argue for, in two columns of equal size. A ballot question is published only when both sides are represented; until then the page shows the ballot text alone.
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.