Transparency & Methodology

How CampaignRadar Works

CampaignRadar collects campaign emails, scores them using a hybrid rule-based and AI system, tracks campaign finance filings, monitors policy positions, and maintains election date calendars across all 50 states. Every score, grade, and data point is derived from primary sources and explained here.

Nothing is a black box. This page documents every methodology decision we have made.

Data Sources at a Glance
Email intelligenceHybrid rule + AI
Campaign financeFEC + state ethics
Issue & policy trackingEmail + website AI
Election calendarAll 50 states
Candidate monitoringFEC daily check
Federal & state racesBoth tracked
Email Intelligence

How we get the emails

CampaignRadar subscribes to campaign email lists across federal and state races using a purpose-built subscription system. Each candidate is assigned a unique inbound email address so every message can be attributed to exactly the right campaign.

We only subscribe to publicly available campaign email lists. We do not intercept or access any private communications. Every campaign we track made a conscious decision to send mass emails, and CampaignRadar receives them as any member of the public would.

01
Subscribe at scale
Our system visits each campaign website, finds the email signup form, and subscribes using the candidate's unique inbound address. Each address is permanent and traceable to exactly one campaign.
02
Receive and parse
Incoming emails are parsed for subject line, body text, HTML content, sender authentication headers (DKIM, SPF, DMARC), and the sending platform within seconds of arrival.
03
Score and store
Each email is scored immediately using our hybrid system. Scores accumulate into a running grade for each candidate that updates with every new email received.
Scoring Dimensions

What we measure in every email

Each email is evaluated across four dimensions weighted to reflect what matters most for voter-facing communication: whether the email informs, whether it is honest about who sent it, and whether it respects the reader.

Dimension 01 · 30% weight
30%
Informative Content Ratio
How much of the email contains policy substance, factual claims, legislative updates, or civic information versus pure fundraising asks with no informational value?
Positive signals
Policy positionLegislation citedData or researchIssue advocacy
Negative signals
Pure fundraisingNo policy contentUrgency without context
Dimension 02 · 30% weight
30%
Transparency
Does the email include all legally required disclosures? Is the sender authenticated? Transparency scoring rewards campaigns that follow the rules and penalizes those that obscure who they are.
Positive signals
Unsubscribe linkPaid for by disclosureDKIM authenticatedPhysical address
Negative signals
No unsubscribeMissing disclosureAuthentication failure
Dimension 03 · 25% weight
25%
Tone & Manipulation
Does the email use fear, urgency, or emotional pressure to drive action? Fundraising is normal and expected. We penalize manufactured urgency and fear tactics, not legitimate deadline-based asks.
Negative signals
Urgency languageFear framingManufactured deadlineCatastrophizingALL CAPS subject
Dimension 04 · 15% weight
15%
Subject Line Quality
Is the subject line honest and descriptive, or does it use manipulation tactics to force an open? Subject lines are often the first and only thing a voter reads from a campaign.
Positive signals
Descriptive subjectAppropriate length
Negative signals
ALL CAPS"Last chance"Excessive punctuation
Deadline-Aware Scoring

Not all urgency is manufactured

Campaigns face real, legally mandated reporting deadlines. An email sent two days before a genuine filing deadline with urgent fundraising language is meaningfully different from the same email sent mid-month with no deadline in sight.

CampaignRadar cross-references the date each email was received against a database of real reporting deadlines and end-of-quarter dates. Urgency language is penalized on a sliding scale based on how close a legitimate deadline actually is.

Context
Timing
Penalty
Real filing deadline
Within 2 days
10% minimal
Real filing deadline
3–5 days out
40% small
End of quarter
Within 5 days
30% reduced
End of month
Within 3 days
50% moderate
No deadline nearby
Mid-month
100% full
AI Analysis

The role of artificial intelligence

Rule-based scoring is fast and consistent, but it can miss nuance. A campaign email that avoids every keyword on our manipulation list could still be subtly misleading. Every email also receives an AI analysis pass using Claude by Anthropic.

The AI evaluates each email with full context, understanding tone, intent, and purpose in ways that keyword detection cannot. It also generates the plain-language summary that appears on every candidate profile.

Rule-Based Score
40%
Consistent and Auditable
The rule-based score runs deterministic checks: keyword detection, disclosure presence, authentication headers, subject line analysis. Every decision is traceable and reproducible. The same email will always receive the same rule-based score.
AI Score
60%
Contextual and Nuanced
The AI score accounts for the full meaning of the email, reading it the way a voter would. It considers whether fundraising language is proportionate, whether urgency is contextually appropriate, and whether the overall email respects the reader. It also generates the plain-language summary shown on every profile.
Issue & Policy Tracking

What candidates are actually running on

Beyond email scoring, CampaignRadar extracts policy positions and issue tags from two sources: campaign emails and campaign websites. Each source is analyzed separately, then combined into a weighted profile of what a candidate emphasizes across their public communications.

Issue tags are assigned using AI analysis of full email and website text. CampaignRadar tracks emphasis, not position. A candidate who mentions immigration in 80% of their emails will show a high immigration score — regardless of which side of the issue they're on.

Source 01
Email Content
Every scored email is tagged with issue categories. Frequency and recency are both weighted — recent emails matter more than older ones.
Source 02
Campaign Website
CampaignRadar scrapes candidate websites and extracts issue positions from policy pages, about sections, and platform language.
Combined Score
Weighted Profile
Email and website scores are combined. Website positions carry more weight for stances; email frequency shows what the campaign actively promotes.
Categories tracked
12+ Issue Areas
Economy, healthcare, immigration, environment, education, crime, veterans, abortion, trade, civil rights, government spending, and national security.
Grading Philosophy

From A to F

A candidate's overall grade is the weighted average of all individual email scores on record. Each new email updates the grade immediately — there is no waiting period and no smoothing. A campaign that starts strong and then pivots to fear-based fundraising will see their grade fall in real time. A campaign that improves their communication quality over time will see it rise. The grade reflects the full body of work, not any single email.

A
82–100
Substantive content, transparent, no manipulation tactics
B+
72–81
Strong policy content, minor fundraising pressure
B
62–71
Mostly issue-focused with some urgency language
C+
52–61
Mixed content — policy present but fundraising dominant
C
42–51
Heavy fundraising, limited substance, moderate pressure
D
32–41
Significant manipulation tactics, poor transparency
F
0–31
Fear-based, misleading subject lines, or missing disclosures
Campaign Finance Data

Where the finance data comes from

Federal campaign finance data is sourced directly from the Federal Election Commission (FEC) using publicly available bulk data files — no API, no third-party aggregators. State-level finance data is sourced from individual state ethics and campaign finance commissions, downloaded and processed on our own infrastructure.

Finance data is refreshed automatically on every reporting deadline — keeping cash on hand, burn rate, and donor breakdown current throughout the cycle.

Federal source
FEC & State Ethics Filings
Federal data — candidate summaries, individual contributions, PAC contributions, and expenditures — downloaded directly from fec.gov. State-level data sourced from individual state ethics and campaign finance commissions, with no intermediaries.
What we show
Key Finance Metrics
Total raised, total spent, cash on hand, burn rate, average individual donation, PAC share, and spending by category. Spending categories are classified using disbursement codes and AI analysis.
Attribution
Public Record
All campaign finance data is public record. Federal data is in the public domain via fec.gov. State data is sourced from individual state ethics and campaign finance commissions. CampaignRadar is not affiliated with any government agency.
Election Calendar & Results

Dates, outcomes, and what they mean for the field

CampaignRadar tracks the full election lifecycle — not just when elections are scheduled, but what happens when they occur. Primary results determine which candidates advance, reshape the competitive field, and change who is relevant in the general. We track and display both the calendar and the outcomes.

Election dates are maintained for all 50 states, separately for federal and state races, sourced from the Federal Voting Assistance Program (FVAP) and verified against state secretary of state publications. Results are sourced from official state returns as they become available.

Primary elections
Dates & results
Primary dates vary from March to September across states. CampaignRadar tracks dates in advance and updates candidate records with results — who advanced, who was eliminated — as official returns come in.
Runoff elections
9 states tracked
AL, AR, GA, MS, NC, OK, SC, SD, and TX hold runoffs when no candidate wins a majority. Runoff thresholds, dates, and results are tracked and reflected on each affected candidate's profile.
General election
November 3, 2026
General election results will be captured by race as they are certified. Candidate profiles show a live countdown to their next election milestone — primary, runoff, or general — whichever comes first.
Candidate Monitoring

How we track active candidates

CampaignRadar imports candidate records daily from federal and state filings. For federal races, candidates with a 2026 election year designation in the FEC master file are imported — filtering out incumbents maintaining committees between cycles and former candidates who never formally withdrew.

Each day, status codes are checked for every tracked candidate. If a candidate's status indicates they are no longer seeking election in the current cycle, they are flagged as a dropout. Flagged candidates remain in the database for historical reference but are removed from active race views.

FEC Code
Status
Description
C
Active
Statutory candidate — officially running in 2026
F
Active
Candidate for future election — planning to run
N
Active
Not yet certified — filed but not yet qualified
P
Flagged
Prior cycle only — no longer seeking 2026 election
Missing
Review
Not found in filing — may have withdrawn

What we don't score

CampaignRadar grades how candidates communicate, not what they believe. We do not score, evaluate, or express any opinion on a candidate's policy positions, political ideology, party affiliation, or fitness for office.

A progressive Democrat and a conservative Republican can both earn an A. The scoring system is blind to politics. It only evaluates communication quality and financial transparency.

We do not score based on how often candidates send emails, how much they raise, or whether their campaigns are successful. A candidate who sends one excellent email scores better than one who sends twenty manipulative ones.

If you believe a score is in error, contact us. We review disputes and correct genuine errors in our data.

See the data for yourself

Browse candidate profiles across federal and state races in all 50 states. Grades, email histories, finance data, issue tags, and election dates on every profile.

Browse Candidates