Technical writing

FEC Super PAC and Dark Money Data: The Federal Database Behind Outside Political Spending

· AI Analytics
FECSuper PACsDark MoneyCampaign FinanceFederal Data

The FEC independent expenditure database covers every Super PAC, 501(c)(4), and outside group that spent money to influence federal elections—over $4 billion in disclosed outside spending in the 2020 election cycle, plus dark money flowing through nonprofit organizations that are not required to disclose donors, traceable only through FEC filing patterns and IRS Form 990 data.

Citizens United and the Super PAC era

The legal architecture of modern outside spending was assembled in three decisions spanning four years. The first was Citizens United v. FEC (2010), in which the Supreme Court held 5–4 that the First Amendment prohibits the government from restricting independent political expenditures by corporations, associations, or labor unions. The decision struck down the prohibition on corporate and union independent expenditures that had been embedded in the Bipartisan Campaign Reform Act of 2002—the McCain–Feingold law that had banned soft money to national party committees and extended restrictions on electioneering communications in the final weeks before an election.

Citizens United did not touch the hard money limits that had governed direct contributions to candidate committees since the 1974 FECA amendments. What it removed was the bar on independent corporate and union expenditures—spending that expressly advocates for or against a clearly identified candidate, made without coordination with that candidate or their committee. After Citizens United, a corporation could spend unlimited sums on ads urging voters to elect or defeat a federal candidate, as long as that spending was independent.

The second decision followed two months later. In SpeechNow.org v. FEC (D.C. Circuit, March 2010), the court of appeals applied Citizens United's logic to individual contributions to independent expenditure-only groups. If independent expenditures by corporations posed no corruption risk under Citizens United, the court reasoned, then contributions to groups that made only independent expenditures could not pose a corruption risk either. The ruling meant that individuals could give unlimited amounts to a new category of committee: one that accepted unlimited donations but made only independent expenditures and never contributed directly to candidates. The FEC codified this in a series of advisory opinions issued through 2010, and the Super PAC was born.

The third decision, McCutcheon v. FEC (2014), eliminated the aggregate biennial limits on the total amount a single donor could give to all federal candidates and committees combined in a two-year election cycle. Before McCutcheon, donors faced an overall cap—roughly $123,200 in the 2014 cycle—on combined giving to all federal candidates and national party committees. McCutcheon struck the aggregate cap as an unconstitutional burden on free speech, leaving only the per-candidate and per-committee limits intact. The practical effect was to allow large donors to give the per-candidate maximum to an unlimited number of candidates simultaneously, substantially increasing the capacity for coordinated giving through a single donor.

Before Citizens United, campaign finance law rested on two pillars. The Bipartisan Campaign Reform Act of 2002 banned soft money—unlimited contributions to national party committees—and regulated electioneering communications in the windows before federal elections. Hard money limits—the per-candidate caps on direct contributions—had been in place since 1974 and were upheld in Buckley v. Valeo (1976). Citizens United and SpeechNow did not alter the hard money architecture. They created a parallel system in which unlimited outside money could flow to election-influencing activity through vehicles that were formally separate from the candidate committees they supported.

Super PAC disclosure requirements

Super PACs—formally designated “independent expenditure-only committees”—occupy committee type code O in the FEC committee master file. Unlike the opacity that surrounds 501(c)(4) dark money vehicles, Super PACs operate under robust disclosure requirements. Every Super PAC must register with the FEC, must report all contributions it receives on Schedule A, and must report all independent expenditures it makes on Schedule E.

The $200 threshold for itemized donor disclosure applies: contributions below $200 in aggregate from a single donor in a reporting period need not be individually itemized, though the total must be reported. Contributions of $200 or more require the name, address, employer, and occupation of the donor. Because Super PACs can accept contributions from 501(c)(4) organizations, a donor who gives to a 501(c)(4) that then transfers to a Super PAC appears in the FEC data only as the 501(c)(4)—the human source of funds is invisible. This is the structural gap that defines dark money.

Large independent expenditures require accelerated reporting. The FEC Form 5 (Report of Independent Expenditures) and the 24-hour and 48-hour notice provisions require that any independent expenditure of $1,000 or more made within 20 days of an election be reported within 24 hours. Independent expenditures of $10,000 or more made more than 20 days before an election must be reported within 48 hours on FEC Form 24. These accelerated reports are available on the FEC's electronic filing system in near real time and via the OpenFEC API but are not incorporated into the cycle-end bulk files until the quarterly or post-election report is filed.

All FEC filings are publicly searchable on FEC.gov. The underlying data is downloadable in bulk from the FEC's bulk data portal. The 2020 election cycle saw approximately $2.3 billion in Super PAC spending alone—with the largest individual Super PACs affiliated with Senate and House leadership: the Senate Majority PAC (aligned with Democratic Senate leadership), the Senate Leadership Fund (aligned with Republican Senate leadership), the Congressional Leadership Fund (Republican House), and HOUSE MAJORITY PAC (Democratic House). The top presidential Super PACs in 2020 were Priorities USA Action (Biden-aligned) and America First Action (Trump-aligned). Total Super PAC spending across all races in the 2020 cycle exceeded $3.4 billion when presidential, Senate, and House races are combined.

The no-coordination rule is the structural constraint that makes Super PAC spending legally independent. If a Super PAC coordinates the content or timing of its advertising with a candidate's campaign, the expenditure is treated as an in-kind contribution to the candidate, subject to applicable contribution limits. The FEC's coordination rules use a two-part test involving a content standard (does the communication expressly advocate or was it made within the pre-election window) and a conduct standard (was it made pursuant to a request or suggestion from the campaign, using material nonpublic information, or involving substantial discussion with the campaign about the communication). In practice, enforcement of the no-coordination rule has been limited by the FEC's structural deadlock problems discussed below.

Dark money: 501(c)(4) organizations

The term “dark money” refers to funds that influence federal elections but are never disclosed to the FEC because they flow through organizations not required to file with the commission as political committees. The primary vehicle is the 501(c)(4) social welfare organization, named for the section of the Internal Revenue Code that confers tax-exempt status.

Under IRS rules, a 501(c)(4) may engage in political activity as long as political activity is not its “primary purpose.” The IRS has never defined “primary purpose” with numeric precision, and the standard has proven nearly impossible to enforce. The practical interpretation that has prevailed in the sector is that a 501(c)(4) may spend up to 49 percent of its total expenditures on political activity. A 501(c)(4) is not required to disclose its donors to the public under any federal law currently in force. It files IRS Form 990 annually, which is public, but Form 990 for 501(c)(4) organizations does not include Schedule B (the donor disclosure schedule that 501(c)(3) public charities file with the IRS but not publicly).

The canonical example of a dark money 501(c)(4) is Crossroads GPS, the organization founded by Karl Rove and former Republican National Committee chairman Ed Gillespie following Citizens United. In the 2012 election cycle, Crossroads GPS spent approximately $70 million on political advertising—none of which was disclosed to the FEC as campaign activity, because the organization structured its spending as issue advocacy rather than express electoral advocacy. The companion Super PAC, American Crossroads, disclosed its spending fully; the 501(c)(4) Crossroads GPS did not.

On the Democratic side, the Sixteen Thirty Fund—a fiscal sponsorship vehicle managed by Arabella Advisors, a Washington consulting firm—has served as a major dark money conduit. The Sixteen Thirty Fund raised approximately $1.7 billion between 2018 and 2024, flowing through a network of issue-advocacy organizations with names that vary by election cycle. Arabella's network of dark money vehicles, which also includes the New Venture Fund, the Windward Fund, and the Hopewell Fund, collectively constitutes the largest dark money infrastructure in American politics by disclosed aggregate revenue.

Americans for Prosperity, the Koch brothers' political network organization, and the Sierra Club Foundation's political arm represent 501(c)(4) vehicles at opposite ends of the ideological spectrum that have both deployed substantial dark money. In the 2012 cycle alone, the combined 501(c)(4) spending estimated by OpenSecrets exceeded $300 million. By the 2020 cycle, total estimated dark money exceeded $1 billion per election cycle, with the caveat that “estimated” is doing significant work—the figures represent educated inferences from 990 filings, not a direct count.

The dark money transfer mechanism works in two modes. In the first, a 501(c)(4) transfers funds directly to a Super PAC it controls or is aligned with. The Super PAC then reports the transfer on Schedule A, identifying the 501(c)(4) as the donor. The 501(c)(4) organization's name is public; the individuals who funded the 501(c)(4) are not. In the second mode, the 501(c)(4) spends directly on issue ads that fall outside the FEC's definition of independent expenditures or electioneering communications— ads that refer to candidates but use neither the “magic words” of express advocacy nor run within the pre-election window that triggers electioneering communication reporting. This second category is fully invisible in FEC data.

Electioneering communications

The term “electioneering communication” was defined by the Bipartisan Campaign Reform Act of 2002 to close the loophole through which organizations had avoided the FEC's express-advocacy definition. Under BCRA, an electioneering communication is any broadcast, cable, or satellite communication that refers to a clearly identified federal candidate, is targeted to the relevant electorate, and airs within 30 days of a primary election or 60 days of a general election.

Organizations that spend $10,000 or more on electioneering communications within a calendar year must file a disclosure report with the FEC identifying the funder of the communication. However—and this is the critical carve-out that Citizens United reinforced—a 501(c)(4) organization making an electioneering communication must disclose the organization itself as the funder but is not required to disclose the individual donors who provided the funds to the organization. The FEC report identifies which 501(c)(4) paid for the ad; it does not and cannot, under current law, pierce the nonprofit veil to identify the individuals behind it.

The distinction between an electioneering communication and an independent expenditure matters for disclosure. An independent expenditure explicitly advocates for the election or defeat of a candidate using what campaign finance law calls “magic words”—phrases such as “vote for,” “vote against,” “elect,” or “defeat.” An electioneering communication refers to a candidate in the pre-election window without necessarily using express advocacy language. Both categories require FEC disclosure of the spending organization, but neither requires disclosure of the underlying donors to a 501(c)(4) that funded the communication.

The DISCLOSE Act—the Democracy Is Strengthened by Casting Light on Spending in Elections Act—has been introduced in Congress multiple times since 2010. It would require 501(c)(4) organizations that engage in electioneering communications or independent expenditures to disclose the identity of donors who gave $10,000 or more. The bill passed the House in 2010, 2021, and 2022 but failed in the Senate each time, unable to reach the 60-vote threshold needed to overcome a filibuster. The 501(c)(4) donor disclosure gap is therefore not an oversight in campaign finance law; it is a structural feature that Congress has explicitly declined to close.

FEC filing types for outside spending

Understanding the FEC filing taxonomy is essential for working with outside spending data programmatically. The relevant forms and schedules are:

  • Schedule E — Independent expenditures. Filed as part of quarterly and semi-annual reports by Super PACs and any other committee that makes independent expenditures. Reports the payee, the candidate supported or opposed, the election (primary or general), the amount, the date, and whether the expenditure supports or opposes the candidate (support_oppose_indicator: S or O).
  • Form 24 (48-hour report) — Required when any person or committee makes an independent expenditure of $10,000 or more at any time other than within 20 days of an election. Must be filed within 48 hours of making the expenditure.
  • Form 5 (24-hour report) — Required when a person who is not a political committee makes an independent expenditure of $1,000 or more within 20 days of a primary, general, or special election. Also used by Super PACs during the 20-day pre-election window for expenditures above the threshold.
  • Form 9 — Electioneering communications disclosure. Filed within 24 hours of a spending aggregation that reaches $10,000 in a calendar year. Identifies the organization, the amount, the candidate referenced, and the broadcast dates. Does not require individual donor disclosure for 501(c)(4) filers.
  • Schedule A (Super PAC receipts) — Filed by Super PACs as part of their periodic reports. Lists every contribution received of $200 or more, with donor name, address, employer, occupation, amount, and date. When a 501(c)(4) contributes to a Super PAC, the 501(c)(4)'s name appears here as the contributor.

The FEC's electronic filings system makes all of these documents available in near real time at https://efts.fec.gov/EFOQ/. The OpenFEC API exposes them at structured endpoints: /v1/schedules/schedule_e/ for independent expenditures and /v1/schedules/schedule_a/ for Super PAC receipts. OpenSecrets (Center for Responsive Politics) cross-references and categorizes FEC filings into searchable donor and recipient profiles, adding ideological classifications and industry codes that the FEC itself does not provide.

Data analysis applications

The FEC outside spending data supports a range of analytical applications. OpenSecrets aggregates FEC data into searchable committee profiles, donor histories, and outside spending summaries by race and cycle. Their Dark Money database cross-references FEC transfer data with IRS Form 990 filings to estimate total dark money flows by organization. FollowTheMoney.org provides additional coverage of state-level outside spending that overlaps with federal elections.

IRS Form 990 cross-referencing is the primary tool for tracing dark money. The methodology: identify every 501(c)(4) that appears as a contributor in the FEC Schedule A data, retrieve their 990 filings from the IRS bulk XML data or the ProPublica Nonprofit Explorer API, and compare the 990's reported total revenue and Schedule C political expenditures against the amounts transferred to Super PACs in the FEC data. When a 501(c)(4)'s 990 shows substantial revenue in excess of identifiable grants and donations, the unattributed excess represents inferred dark money—contributions from donors who cannot be traced through any publicly available source.

Geographical targeting analysis uses Schedule E data to map independent expenditure spending by congressional district and state in the final weeks of a campaign. The payee field in Schedule E identifies the media buyer or production vendor; the candidate field identifies whose race is being influenced. Combining Schedule E geographic data with Cook Political Report race ratings and FEC poll filings produces a picture of where outside money concentrates in competitive races versus where it reinforces safe seats.

Late-cycle spending pattern analysis exploits the timing structure of FEC reporting. The 48-hour and 24-hour reports that flow in during the final weeks before an election reveal the overall scale and direction of outside spending in real time. Academic research on Super PAC effectiveness—using regression discontinuity designs around the threshold at which a race becomes competitive enough to attract outside money— has found that Super PAC spending has measurable effects on electoral outcomes, particularly in Senate races and in districts where the spending is concentrated on anti-candidate advertising rather than candidate support.

Coordination detection uses patterns of shared vendors, overlapping personnel, and timing correlations between candidate campaign spending and Super PAC advertising buys as circumstantial signals. When a Super PAC and a candidate committee use the same media buying firm, air ads in the same media markets on the same dates, and the Super PAC's messaging tracks closely with the campaign's public messaging, the circumstantial case for coordination is strong even if the legal standard for proving it is not met.

FEC enforcement

The Federal Election Commission is a six-member bipartisan commission: three members from each major party, nominated by the President and confirmed by the Senate to six-year terms. By statute, no more than three commissioners may be of the same political party. Every significant enforcement action requires four votes. With a 3–3 partisan split, any matter where commissioners divide along party lines produces a deadlock and a no-action outcome.

The gridlock problem is structural and well-documented. Multiple commissioners from both parties have publicly acknowledged that the bipartisan design produces systematic under-enforcement, particularly in matters with high partisan stakes. The commission has deadlocked on some of the most significant outside spending cases in the post-Citizens United era, including matters involving coordination allegations against major Super PACs affiliated with both party leaderships. When the commission deadlocks, the matter is closed without penalty, without a finding of probable cause, and without any public determination that a violation occurred.

When the commission does act—conciliation agreements, civil penalties—the enforcement record on Super PACs and dark money is sparse. There have been few major enforcement actions against Super PACs for coordination violations since 2010. Citizens for Responsibility and Ethics in Washington (CREW), Common Cause, and the Campaign Legal Center have filed numerous FEC complaints against prominent Super PACs, most of which have been dismissed through deadlocked votes. The statute of limitations for FECA civil violations is five years; the FEC's typical resolution time of two to four years means that cases involving pre-election spending often run up against the limitations period before the commission can act.

The FEC maintains a public database of all Matters Under Review (MURs) at https://www.fec.gov/data/legal/search/enforcement/ and through the OpenFEC API at /v1/legal/search/?type=murs. The MUR database includes every complaint filed, every commission vote, and every conciliation agreement. Filtering the MUR database to cases involving committee type O respondents (Super PACs) reveals the full extent of the enforcement gap: the ratio of complaints filed to penalties assessed is dramatically lower for Super PAC coordination cases than for individual contribution limit violations.

The contrast with SEC enforcement is instructive. The Securities and Exchange Commission employs approximately 4,600 staff with a budget of roughly $2 billion annually. It has subpoena power and a track record of multibillion-dollar civil penalty actions. The FEC employs approximately 340 staff with a budget under $100 million. It lacks independent subpoena power in civil matters, requiring a court order for compelled document production. The structural design choices that limit the FEC's enforcement capacity are not inadvertent.

Python: querying the FEC API for Super PAC data

The following script queries the OpenFEC API for the largest independent expenditures in the 2024 cycle and the top Super PACs by total receipts. Register a free API key at api.data.gov/signup; the DEMO_KEY placeholder works for low-volume development queries.

import requests
import pandas as pd

# FEC API — free key at api.data.gov
API_KEY = "DEMO_KEY"
base = "https://api.open.fec.gov/v1"

# Get largest independent expenditures in a recent cycle
params = {
    "api_key": API_KEY,
    "cycle": 2024,
    "is_notice": False,
    "sort_null_only": False,
    "sort": "-expenditure_amount",
    "per_page": 20,
    "page": 1,
}
resp = requests.get(base + "/schedules/schedule_e/", params=params, timeout=20)
data = resp.json()
results = data.get("results", [])
print("FEC 2024 cycle independent expenditures — largest (showing top 20):")
for r in results[:10]:
    spender = (r.get("committee_name") or "")[:40]
    amount  = r.get("expenditure_amount", 0)
    candidate = (r.get("candidate_name") or "")[:30]
    support = r.get("support_oppose_indicator", "")
    print("  ${:<12,.0f}  {:<40}  {} {}".format(amount, spender, support, candidate))

# Top Super PACs by total receipts
params2 = {
    "api_key": API_KEY,
    "cycle": 2024,
    "committee_type": "O",   # Super PAC
    "sort": "-receipts",
    "per_page": 10,
}
resp2 = requests.get(base + "/committees/", params=params2, timeout=20)
data2 = resp2.json()
pacs = data2.get("results", [])
print("\nTop Super PACs by receipts (2024 cycle):")
for p in pacs[:10]:
    name      = (p.get("name") or "")[:50]
    receipts  = p.get("receipts", 0)
    print("  {:<50}  ${:>12,.0f} receipts".format(name, receipts))

The /v1/schedules/schedule_e/ endpoint returns individual independent expenditure records with the spending committee, the candidate, the support/oppose indicator, the payee, the amount, and the date. The /v1/committees/endpoint with committee_type=O returns Super PAC summary data including total receipts and disbursements for the specified election cycle.

For analysis of 501(c)(4) transfer flows into Super PACs, filter Schedule A receipts by contributor_type=committee and cross-reference the contributor committee ID against the IRS Exempt Organizations Business Master File to identify whether the contributing committee is a 501(c)(4). The IRS BMF is available in bulk from irs.gov as a CSV file updated monthly, keyed by Employer Identification Number. The FEC does not record EINs in its committee data, so the join must be performed on committee name string matching, which requires normalization and fuzzy matching to handle name variations between FEC filings and IRS records.

For bulk analysis across full election cycles, the FEC bulk data files are more efficient than the API. The Schedule E bulk file (indep{YY}.zip in the FEC bulk data portal) contains all independent expenditure records for a cycle in a single pipe-delimited flat file. For real-time monitoring of late-cycle outside spending, the API is preferable because the 24-hour and 48-hour reports appear there before they are incorporated into the bulk files.


For the FEC bulk data files covering individual contributions, PAC-to-PAC transfers, and candidate committee spending—the foundational dataset behind Super PAC disclosure: Follow the money: mapping dark money and Super PAC flows with FEC bulk data →

For the FEC enforcement record—how the Matters Under Review database documents coordination complaints, foreign national contributions, and straw-donor schemes: FEC campaign finance enforcement: the federal database behind Matters Under Review →

For IRS Form 990 data on 501(c)(4) social welfare organizations—the nonprofit financial filings used to estimate dark money flows and trace 501(c)(4) expenditures against FEC transfer records: IRS Exempt Organizations: the federal database behind 1.26 million US nonprofits →