Data scope
The Current covers California statewide politics — ballot measures and statewide candidate races — for the May 2025 – April 2026 filing window. That window captures the bulk of qualifying-round money for the November 2026 ballot.
Out of scope for v1: local races, legislative races, federal filings, and anything reported after the April 2026 snapshot.
Sources
- CA campaign-finance filings (CalAccess) — every Schedule A, B, and C contribution reported to the Secretary of State. The raw tables include contributor name, employer, occupation, amount, date, and the recipient committee ID.
- FPPC ballot-measure registry — the official list of qualified and qualifying measures for November 2026, with authoritative IDs (e.g.
25-0022) and the committee numbers filed in support or opposition.
No other data sources are used. There is no manual curation layer between the raw filings and what you see.
Entity resolution
The same donor appears in CalAccess filings under dozens of spelling variants. Uber Technologies, Inc., UBER TECHNOLOGIES INC, and Uber Technologies are the same entity. The pipeline resolves them into one canonical record.
- Deterministic rules — lowercasing, stripping legal suffixes, removing punctuation, metaphone phonetic normalization, and exact-match on external IDs.
- LLM judge — the remaining ~0.5% of donor strings are passed to a language model with a structured decision prompt. All LLM decisions are stored and auditable.
Industry classification
Industry is inferred from the employer field each donor reports. The pipeline maps employer names to OpenSecrets industry codes.
- No employer listed — a significant share (often 30–40%) of individual-donor dollars have no employer on file. These appear as "not yet classified."
- Org donors — corporations and PACs get their industry from direct entity lookup against the OpenSecrets reference set.
Money through PACs
The pipeline follows multi-hop committee chains proportionally. When a donor gives $1M to a PAC that raised $10M total and spent half on a measure, the donor is attributed $500K toward that measure.
Attribution = donor contribution × (PAC's flow to target ÷ PAC's total inbound)
Applied recursively up to 6 hops. The invariant: sum of attributed terminal amounts always equals sum of direct inbound flows at root.
Diamond graph under-attribution: when a donor is reachable via multiple committee paths, only the first path is attributed (cycle guard). This means shared-path amounts will be under-attributed. Known limitation, documented here rather than papered over.
Coverage and limits
Late filings — CalAccess accepts amendments for weeks after a period closes. The snapshot captures filings available at time of import.
Missing employers — the fraction with no employer varies by committee. Grassroots candidates typically have higher unclassified rates.
Pre-snapshot committees — a small number were active before May 2025. The scope line on each screen states the window explicitly.
No legislative races — assembly, senate, and congressional races are not in scope for v1.
What this is not
The Current does not editorialize about whether any donor, candidate, or measure is good or bad. It shows the money as reported.
This is not a fundraising tool. There is no "support this candidate" link, no donation flow, no affiliate relationship with any committee or campaign.