Open the data portal

Ask a question in plain English and it writes the query for you, run a saved report, browse and filter any table, or write your own SQL — then download CSV or JSON. No account needed.

data.whofundstn.org →

The same figures you see across the site, refreshed daily. Donor names disclosed at $200+ per candidate.

Prefer raw files?

The portal exports any table as CSV or JSON, but here are 12 ready-made bundles for the 2026 cycle — stable links you can script against. They match exactly what you can browse on the site.

Generated July 27, 2026 at 8:28 AM CDT · Cycle 2026 · Donor names disclosed at $200+ per candidate.

  • Contributions

    contributions.csv

    Itemized donor totals per candidate (monetary + in-kind). Aggregated per campaign; donors below the $200 per-candidate disclosure threshold are not named. The candidate's own contributions are included and flagged in the self_funding column.

    18,339 rows · 2.24 MB

    Columns (13) candidate, office, party, status, donor_name, city, state, zip, employer, total_amount, num_contributions, kind, self_funding
  • Expenditures

    expenditures.csv

    Every itemized expenditure reported by visible candidates this cycle. Refunds excluded. Payee city/state/ZIP are as filed.

    25,160 rows · 3.18 MB

    Columns (11) candidate, office, party, status, payee, payee_city, payee_state, payee_zip, purpose, amount, date
  • Outstanding and repaid loans, deduplicated across filings. Self-loans are flagged.

    106 rows · 12.1 KB

    Columns (10) candidate, office, party, status, lender, amount, date_received, outstanding_balance, amount_repaid, is_self_loan
  • Candidate summaries

    candidate-summaries.csv

    One row per candidate with totals: contributions, refunds, in-kind, self-funding, loans, expenditures, and cash on hand.

    299 rows · 39.4 KB

    Columns (19) candidate, office, party, status, total_contributions, total_refunds, monetary_raised, inkind_received, total_self_contributions, total_loans, total_unitemized, total_expenditures, total_expenditure_refunds, total_unitemized_spent, total_spent, cash_on_hand, contributor_count, filing_count, is_incumbent
  • Filings & publication status

    filings.csv

    Every live filing from visible candidates: each row carries its publication/validation status (review_status) and whether its money is published. Count withheld rows yourself with published = 0.

    947 rows · 114.8 KB

    Columns (11) candidate, office, party, year, reporting_period, report_type, coverage_start, coverage_end, filing_date, review_status, published
  • PAC committees

    pac-committees.csv

    One row per registered Tennessee political committee (PAC): money raised and spent, and how its spending splits between TN candidates, other PACs, out-of-state recipients, and operating costs.

    554 rows · 53.9 KB

    Columns (13) name, portal_id, entity_subtype, total_raised, total_unitemized, total_spent, in_state_disbursed, to_tn_candidates, to_committees, outside_tn, operating_other, num_recipients, num_funders
  • PAC giving

    pac-giving.csv

    Every contribution a Tennessee PAC made, one row per recipient: who received it, the recipient type (tracked TN candidate, another PAC, out-of-state, or an untracked candidate), the recipient's state, and the amount. The 'follow the money' table for the PAC layer.

    8,310 rows · 924.4 KB

    Columns (8) pac_name, pac_portal_id, recipient_name, recipient_type, recipient_state, recipient_slug, total, num_contributions
  • Claim receipts

    claim-receipts.json

    Every computed money figure on the site — candidate totals, insight shares, PAC spend mix — with the inputs and source filings behind it. Totals also carry per_filing: what each individual filing contributed, each part labeled filing-stated (the filing's own summary says so) or derived (we aggregated its itemized rows). The machine-readable receipts for our "Why this number?" panels.

    6,341 rows · 17.20 MB

    Columns (9) claim_id, type, subject_slug, value, formula, inputs, sources, per_filing, unattributed
  • Federal Contributions

    federal-contributions.csv

    Itemized contributions to Tennessee's U.S. House and Senate candidates (federal FEC data), aggregated per candidate. Individuals who gave under the $200 per-candidate disclosure threshold are not named; organizations, businesses, and PACs are listed at any amount.

    14,555 rows · 1.87 MB

    Columns (13) candidate, office, party, status, donor_name, city, state, zip, employer, total_amount, num_contributions, kind, self_funding
  • Federal Expenditures

    federal-expenditures.csv

    Every itemized disbursement reported this cycle by Tennessee's federal (U.S. House & Senate) candidates, from FEC filings.

    7,909 rows · 1.04 MB

    Columns (11) candidate, office, party, status, payee, payee_city, payee_state, payee_zip, purpose, amount, date
  • Federal Candidate summaries

    federal-candidate-summaries.csv

    One row per Tennessee federal candidate with campaign totals: money raised, disbursements, loans, and cash on hand (FEC data).

    56 rows · 8.0 KB

    Columns (19) candidate, office, party, status, total_contributions, total_refunds, monetary_raised, inkind_received, total_self_contributions, total_loans, total_unitemized, total_expenditures, total_expenditure_refunds, total_unitemized_spent, total_spent, cash_on_hand, contributor_count, filing_count, is_incumbent
  • Federal Filings & publication status

    federal-filings.csv

    Every live FEC filing from Tennessee's federal candidates, including the ones held back: each row carries its validation status and whether its money is published. Count withheld rows yourself with published = 0.

    234 rows · 29.4 KB

    Columns (11) candidate, office, party, year, reporting_period, report_type, coverage_start, coverage_end, filing_date, review_status, published

Privacy & the contributions file

Contributions are exported in the same per-campaign aggregated form used on candidate pages: one row per donor per candidate, with the cumulative total and number of contributions. Individuals who gave less than $200 to a candidate are not named — they're counted in candidate summaries but not listed by name. Organizations, businesses, and PACs are listed at any amount. This matches the disclosure threshold used across the site (see About).

Citing this data

These files are free to use with attribution. If you publish work based on them, please credit Who Funds Tennessee and link back to whofundstn.org. The underlying figures are official totals as filed with the Tennessee Registry of Election Finance.

Spot a problem? Email tips@whofundstn.org with the candidate name and the row in question. Each candidate page links to the official source report the data came from.