πŸ’°
Campaign Receipts
The Standard

Methodology

How CampaignReceipts.com produces every politician profile. Read this once. Trust the rest.

Four verdicts

The verdict system

  • KEPT β€” The politician took the action they promised.
  • PARTIAL β€” Some action toward the promise, but incomplete delivery, OR outcome blocked by opposing party despite their full effort.
  • BROKEN β€” The politician's own vote or action contradicted the promise.
  • YOU DECIDE β€” Outcome depends on the reader's interpretive framework. Used sparingly.
Term scoping

Promises are contracts for the next term

A campaign promise made in 2024 cannot be graded in 2025. It is a contract for the next term β€” and that term has barely begun. So every promise on this site is anchored to the term it covers, and a verdict only locks in once that term ends.

  • Graded β€” the term has ended; the verdict is final.
  • Pending β€” the term is still in progress; we publish the promise but withhold the verdict. The politician page shows a "Live tracking" indicator instead of a kept-rate percentage.

For senators, the term is six years. For House members, two. For governors and presidents, four (with variation by state). For mayors and attorneys general, we honor each office's actual term length. The page header on every politician profile names the term boundaries you're looking at.

No career averages. A politician who served 1980–2024 made different promises in each of seven cycles. Averaging them into a single number erases meaning. Prior terms are displayed as separate scorecards on the politician page; we never collapse them into one aggregate.

Promise curation

How a politician's promise list is built

The biggest hidden trap in any promise tracker is who decides which promises get tracked. If the curator picks five flattering pledges, the politician scores well; if they pick five unflattering ones, the politician scores badly. Same person, different selection bias.

Our protocol: for each politician, identify the most-frequently-repeated commitments across three independent surfaces β€” (1) the official campaign website during the relevant cycle, (2) the politician's debate appearances and stump speeches, and (3) their voter-guide questionnaire responses. Promises that appear on two or more of these surfaces enter the list. Promises that appear on only one surface are excluded.

The minimum list size is 10 promises per cycle; the typical list is 15–25. When fewer than 10 surface, we flag the profile as "limited corpus" and treat its kept-rate as illustrative rather than conclusive.

Citation infrastructure

The primary-source archive

Every verdict on this site is grounded in a primary-source document β€” campaign-site policy pages, debate transcripts, signed pledges, official speeches. Many of those documents live on fragile hosts: a single third-party CDN, a wayback snapshot that could decay, a news outlet’s archive that has deleted older posts before. When a citation we depend on lives only at one fragile URL, we mirror the document to campaignreceipts.com/sources so the citation chain doesn’t break.

Each mirrored document lists its original host and at least one additional public mirror so anyone can independently verify our copy matches the canonical one. We don’t fabricate URLs and we don’t cite documents we can’t produce on request.

Verdict routing

When obstruction changes the verdict

Promises live or die in a system the politician doesn't fully control. Our routing rule keeps verdicts about the person rather than about the system:

  • Blocked by Congress β†’ PARTIAL. If the politician used the procedural tools available to them (introducing the bill, whipping votes, taking the public position) but the opposing caucus killed it, that is PARTIAL β€” movement without completion, not the promisor's fault. The case study names the obstructing party explicitly.
  • Blocked by courts β†’ case-by-case. If the policy was struck down because the politician's own design was unconstitutional, that's closer to BROKEN. If struck down on standing or a tangential ruling, that's PARTIAL. The reasoning text explains which.
  • Stalled by the politician's own caucus β†’ BROKEN. If the politician's party held the trifecta and the promise still didn't move, that's an own-action failure regardless of who voted against it on the floor.

The rule applies symmetrically across parties. A Democratic senator whose bill died in a Republican-held chamber gets PARTIAL credit; a Republican senator whose bill died in a Democratic-held chamber gets the same. We do not let partisan alignment of the obstructor shift the routing.

The core process

The 3-pass adversarial review

Every politician profile passes through three sequential reviewers β€” each a separate, isolated reasoning pass with a distinct partisan-perspective brief:

  1. 1
    Neutral researcher

    Pulls campaign promises from primary sources β€” campaign websites via the Wayback Machine, debate transcripts, voter-guide questionnaires. For each promise, searches the legislative record and cross-spectrum news. Assigns a verdict backed by at least 2 primary sources.

  2. 2
    Conservative-perspective reviewer

    Stress-tests the profile for left-leaning bias, missing context, and unfair verdicts. Flags any framing a thoughtful conservative reader would object to.

  3. 3
    Progressive-perspective reviewer

    Mirror-image β€” stress-tests for right-leaning bias, missing accountability moments, and overly generous framings.

A profile is only published when both partisan reviewers return zero high-severity objections. Disagreements trigger a re-run of the research pass with both critiques as context. Full review logs are stored as an audit trail.

On the underlying technology: the research and review passes are run by current-generation language-model systems with web-search access. They are not the source of authority β€” primary records and public votes are. The reviewers exist to catch one-sided framing in the writeup; the receipts themselves do the load-bearing work.

Methodology nuance

The obstruction-aware verdict rule

When a promised outcome was prevented by the opposing party β€” filibuster, refusal to take up, presidential veto, courts β€” the verdict considers whether the politician took the actions available within their caucus's power.

BROKEN is reserved for cases where the politician's own actions prevented the outcome. When obstruction came from outside their caucus's control AND they took the maximally available procedural action, the verdict is PARTIAL with the obstructing party named explicitly. The rule applies symmetrically to politicians of both parties.

Tier system

Two review tiers β€” and how a profile gets upgraded

Not every profile receives the full 3-pass adversarial review. We use a two-tier system:

  • Full review β€” Research pass + Conservative-perspective reviewer + Progressive-perspective reviewer + adjudication when reviewers disagree. Reserved for politicians most likely to be screenshot-mocked if biased: leadership, presidential candidates, partisan flanks, controversial figures.
  • Standard review β€” Single research pass with the stable prompt. Produces the same primary-source receipts but does not run the adversarial reviewers. Used for rank-and-file politicians where the marginal cost of full review exceeds the marginal benefit.
  • Sourced from the SEALED book β€” Scorecard imported from the SEALED Press book's full case-study research (currently: Trump 2016).

Auto-upgrade by reader interest: we track page-view counts on individual politician pages. When a Standard-review profile crosses a traffic threshold (currently set at 1,000 monthly views, subject to revision), it gets queued for promotion to Full review. The rationale: profiles that draw real reader attention deserve the deeper editorial process, and bias is more consequential where more readers see it.

Every politician page shows its current tier in the sidebar. You can see exactly what level of review the verdicts received.

Symmetric framing

Stakes-naming rule

When a promise has documented real-world stakes β€” number of people affected, dollar amounts, casualties β€” those stakes are named explicitly in the case study, regardless of whether they help or hurt the politician. Symmetric stakes-naming applies across both KEPT and BROKEN verdicts. Selectively-cited political quotes are treated as equivalent to manufactured paraphrase.

Consistency check

Monthly verdict-routing audit

The biggest risk to a directory of this size is drift β€” the same situation routed to PARTIAL on one profile and BROKEN on another, simply because different research passes handled them. Two safeguards prevent that:

  • 5% monthly spot audit. Every month we randomly sample 5% of all verdicts and re-route them under the rules above. Discrepancies are corrected and the routing rules are tightened wherever the audit surfaces ambiguity.
  • Public audit log. When a verdict changes as a result of an audit, the change is recorded with a date, the original verdict, and the routing reason. The log is linked from every politician page.
FEC integration

How we classify donor profiles

For federal candidates with reported activity, we surface FEC-sourced donor data on a per-politician /donors page and tag each politician with one of five donor profiles:

  • Grassroots β€” individual contributions β‰₯70% of total raised AND large-donor share ≀50%.
  • Corporate β€” political-action-committee contributions β‰₯30% of total raised.
  • Self-funded β€” candidate's own contributions β‰₯25% of total raised.
  • Mixed β€” anything else, the most common bucket. Most senators land here because their large-donor share crosses the grassroots threshold even when PAC share is low.
  • Unknown β€” no FEC data (state-level candidates, joint-fundraising-committee structures, or no reported cycle activity).

Source: FEC OpenAPI v1. Industry rollups use a conservative 9-category keyword classifier on the contributor's employer and occupation fields β€” false positives hurt credibility more than missing tags, so we leave most donors industry-untagged when unsure.

Get a correction

Dispute a verdict

Found a factual error? Email disputes@campaignreceipts.com with the politician's name, the specific verdict, and the source you believe contradicts our finding. We respond within 7 days. Verified corrections are applied with a public changelog.

For reporters

How to cite CampaignReceipts.

CampaignReceipts is a sourcing layer, not the source of record. Every verdict points to primary sources (debate transcripts, Federal Register, Congress.gov, agency filings). Cite the primary source first; cite us for the verdict-level synthesis only when the synthesis is the thing being claimed.

When to cite the primary source directly

If you're quoting a politician's campaign-stage promise verbatim, or referring to a specific instrument (TPP withdrawal memo, Executive Order 13770, TCJA, the July 28 2017 skinny-repeal vote) β€” cite the primary source we link, not us. Example:

"...the second presidential debate (Commission on Presidential Debates, October 9, 2016)..."

When to cite CampaignReceipts

When you're referring to the term-scoped verdict itself β€” the synthesis of dozens of receipts into a single grade. Each verdict has a stable RCPT-ID and a fragment anchor. Format:

# Citation
CampaignReceipts. RCPT-DJT-2016-004: Healthcare β€” The biggest broken promise. Retrieved May 16 2026 from https://campaignreceipts.com/politician/donald-trump-2016#rcpt-djt-2016-004

Every promise and scorecard has a "Cite as: RCPT-..." footer line printed inside the Receipt itself so the ID is unambiguous on screenshot.

What's safe to cite today

  • The Trump 2016 final scorecard (81 promises graded, 34.6% kept) β€” full case studies + primary-source receipts on the four chapter-defining promises.
  • The source archive β€” Wayback-mirrored campaign policy pages with full-page screenshots as evidentiary receipts.
  • The methodology itself (this page) β€” for "how the grades were assigned" attribution in a methods footnote.

What's not citation-ready yet

Live-tracking profiles (current term in progress) β€” verdicts are pending until the term ends. Cite the primary source we link, not the tracker page, until a final scorecard ships. Non-featured promise rows for any politician may have a verdict but no full case study yet; if the row you want to cite doesn't have an expandable case study with primary-source receipts, treat it as preliminary and cite the underlying source directly.

Commercial use

The data is free to read and free to cite in journalism with attribution. For commercial republishing or embedding scorecards in a paid product, email us and we'll sort a license. Working journalists β€” say hi here β†’

The source methodology

The same methodology used in SEALED β€” the published 144-page book that graded all 145 of Trump's 2016 promises with primary-source receipts. sealed2016.com β†’