How we rate promises
Two reviewers rate every promise independently, using the same written rules. We publish only what they agree on, or what a third reviewer decides when they don't.
Which statements count as promises
A promise is a commitment to one specific action or outcome that can later be shown to have happened or not. We use the definition from the Comparative Party Pledges Project, a network of researchers who have studied more than 20,000 election pledges.
- We use only the candidate's own words: campaign websites and platforms first, then campaign releases and debates, then direct quotes in the news.
- Vague statements such as "fight for working families" are left out, because nothing could show they were broken.
- Promises with several parts are split into one row per part.
- Every quote links to a copy saved on the Wayback Machine, with a fingerprint of the page, so anyone can check it was not changed.
The three ratings
What happened
- Kept. It happened as worded.
- Partially kept. Some of it happened: less, later or narrower than promised.
- In progress. A formal step is underway.
- Broken. Rejected, reversed, made impossible, or a stated deadline passed.
- Not yet rated. No formal step yet, or the rating is still under review.
How hard the governor pushed
From no action, to talk only, to a formal step such as a bill or an executive order, to spending political capital (a veto, a special session, tying it to the budget), to trying every option. Backing something contrary counts as undermining the promise. Every level needs documented evidence. We never rate intentions.
What stood in the way
For promises not kept, we record the main obstacle: the opposing party in the legislature, the governor's own party, courts, the federal government, voters, the budget, or the governor changing position. Where a person blocked it, we name them and link the record.
The ratings are kept separate on purpose. A promise blocked after a real fight and one that was never attempted both end up "not kept", but they say very different things about a governor.
Senators are rated on what they did first
A senator can rarely make a law happen alone: it takes 50 or 60 colleagues, the House and the president. So for senators the main measure is effort. Did they introduce the bill, vote as promised, and push for it? We still record whether the promise was kept, and show it second.
Some promises a senator can keep alone, such as "I will vote against" or "I won't take corporate PAC money". Those are rated on the senator's own action. When a promise stalls, we record whether it was the other party, the senator's own party, the House, the president or the filibuster that stopped it.
Governors and senators are never mixed in one number. Each office is compared only with itself.
When we rate
We rate every promise again at fixed review dates: 100 days after inauguration, one year in, after each legislative session, and at the end of the term. Each review uses only evidence dated before it.
How much the reviewers agree
We measure agreement with Cohen's kappa, which corrects for agreement by chance. Below 0.6 we stop, revise the rules and rate again.
Comparing the parties fairly
- Everyone was chosen by a rule set before any rating. Governors: every governor who flipped a seat in 2026, plus every Republican who won an open seat, since no Republican flipped one. Senators: every senator elected to a seat they did not already hold, whether by flipping it or winning it open. Races not yet called (Alaska and Mississippi) and seats to be filled by appointment are left out.
- Reviewers do not see the governor's name or party while rating, although the state is shown because they need it to find evidence.
- We show ranges, not just single numbers, because a dozen governors is a small group.
Locked in before the first rating
Before anyone took office, we froze the list of officials, every promise, and these rating rules, and published a fingerprint of each. This is called pre-registration, and the frozen copy is archived on Zenodo. It means we can't drop an awkward promise or change the rules once results start coming in without it showing.
Races called after the freeze are added under the same rules and marked "added after pre-registration".
Disagree with a rating, or found an error?
Every promise page has a button to ask for a review or report an error. Anyone can use it, including the officials' offices. Requests and answers are public.
- Every fix is listed on the corrections page with its date and what changed. Nothing is changed silently, and earlier versions stay in the public history.
- A quote can't be changed after the freeze unless a correction explaining it is logged. The site won't build otherwise.
- A rating changes only through the same two-reviewer process that produced it.
Data and rules
The full rules are in the codebook. All data, including every rating and disagreement, is published openly.
Cite this data: Willems, A. (2026). Pledge Ledger: campaign promises of governors and senators elected in 2026 [Data set]. Zenodo. https://doi.org/10.5281/zenodo.24047632
Who runs this
This tracker is built and maintained by Andrew Willems as a personal hobby project. It has no funding and is not affiliated with any campaign, party, employer or advocacy group.
I'm a registered Democrat and my views usually line up with progressive policy. I'm telling you that so you can weigh my work with it in mind. It's also why the tracker is built so you don't have to take my word for anything:
- Both parties are judged by the same written rules, and the governors and senators were chosen by a rule set before any rating.
- Every quote links to a saved copy of its source, and every rating lists its evidence.
- No rating is published unless two reviewers agree, or a third settles the disagreement with a written reason.
- Who rates which promise is set by a public random draw, not by me.
- All data, including disagreements, is public, and anyone can ask for a review.
I don't have a final say over ratings. If I rate promises, I'm one of two reviewers like anyone else, and I can't settle a disagreement I was part of. Every change goes through a public pull request and automatic checks that apply to me as well: ratings can't be edited or deleted, the frozen promise list can't change without a logged correction, and the site won't build if any of these rules is broken.
If you think a rating reflects my politics rather than the evidence, please open a review request. Those are the reports I most want to get.