How we know what we know.
This investigation follows public federal campaign-finance records. The method is simple in principle: identify a clearly defined group of donors, trace where their disclosed money goes, compare that pattern with a fair baseline, and state the limits clearly.
The website explains the story. The GitHub repository carries the audit trail: source files, code, exact table names, pipeline commands, and reproducibility notes.
Named public cohort, matched to federal contribution records.
Itemised FEC contributions, with amendments and conduits handled before publication.
Candidates, PACs, party committees, and fundraising vehicles.
Donor pairs connected because they backed some of the same recipients.
Last rebuilt Thu, 04 Jun 2026 09:03:10 GMT
What the site does.
The site uses federal campaign-finance records. It does not cover private giving, state races, dark-money vehicles, or donations below disclosure thresholds.
A gift to a fundraising platform or joint committee is treated differently from a gift that lands on a candidate committee. That distinction is central to the story.
A large number is not enough. The site asks whether the same pattern appears among a comparable South-Asian-surname donor baseline.
Shared recipients can show a political pattern. They do not prove coordination, affiliation, influence, or intent.
Who is being followed, and why.
The cohort is a named list of 38 people associated with public civil-society research on Hindu nationalist influence in the United States. The site does not ask readers to accept those labels on trust. It asks a narrower, verifiable question: what do public FEC records show about federal political giving by the named group?
Of the 38 names, 37 match to FEC contribution records. One returns no qualifying FEC contributions. We say so plainly rather than quietly dropping the name, so the cohort count and the matched count never diverge without explanation.
We do not state that any individual belongs to an organisation. The evidence shown here is contribution evidence: dates, amounts, recipients, locations at a generalised level, and links back to the underlying public record.
The original compiler of the list, and the stated criteria for inclusion, are still TO BE CONFIRMED (see SOURCE.md and issue #1). The background page names candidate civil-rights compilers, but that attribution is not yet confirmed and should be treated as flagged, not settled. Until it is documented, the honest scope is simply: the individuals named in the imported seed list. We do not over-attribute the list to any single organisation.
How a person becomes a record.
People do not appear in FEC records with a single permanent ID. They appear as names, addresses, employers, occupations, dates, and amounts. The matching step looks for records that plausibly refer to the same person, using name, state, and postal geography.
Public maps, network views, and donor pages use city, ZIP3, and a coarse area centroid only. We do not publish street addresses or full ZIP5. Exact street addresses are used solely for internal matching and are never republished. A publish floor also suppresses very small donors from public totals. Where a match is not strong enough, it stays out of any public claim about a named individual: aggregate claims use all three tiers, but named-donor claims rely on the two strongest tiers only.
Distinctive surname, name, state, and normalised street agree. Used for named-donor claims.
Distinctive surname plus first name plus state are persuasive, but some ambiguity remains. Supports named and aggregate claims.
Common surname plus first plus state plus ZIP3. Supports cohort totals, not a public named claim.
Are the giving patterns distinctive?
The site does not just total donations. It runs three tests on the same data and is candid about which ones land. The comparison group is built by anti-joining the cohort out of FEC donors with South-Asian-origin surnames, so the cohort is never compared against a pool that contains it. That baseline is not perfect, but it is far more honest than comparing the cohort with the entire American donor universe. The first two tests land; the third deliberately does not, and that is itself a finding.
39 percent of direct candidate dollars land on the 13 India Caucus members in the roster, against 15 percent for the heritage-matched baseline. Strongest, cleanest result: a concentration of destinations, the seat rather than the party.
Mean pairwise recipient overlap (Jaccard) of 0.146 against a baseline mean of 0.051 (95th percentile 0.074), over 1,000 draws. Read as a strong shared preference, not coordination, and note that large shared conduits such as ActBlue inflate the figure.
Median cross-cycle Adjusted Rand Index of 0.094. The sub-groupings reshuffle from cycle to cycle. This is not a stable network: shared preferences that reshuffle, not a coordinated machine.
Shared recipients are consistent with people who care about the same seats, the same caucus, and the same advocacy vehicles. They do not prove contact, agreement, or a chain of command. The overlap is also sensitive to a small number of very large shared recipients, above all the ActBlue conduit that almost everyone in this population uses, which raises pairwise overlap mechanically without implying any shared target.
How to read the graph without over-reading it.
Each dot is a donor. Two dots are linked when the donors funded some of the same recipients. A stronger link means their recipient lists overlap more tightly. The network is useful because it shows repeated patterns that a table of donations would hide.
The first public graph is deliberately conservative. It shows overlap, bridge donors, recipient hubs, and clusters. It does not label hidden factions or claim an organisation chart.
We are now testing a deeper graph where donors and recipients sit in the same network. The first snapshot finds 4 mixed donor-recipient communities across 346 recipients. We also compare transparent matrix methods with graph embeddings before exposing any new labels.
SVD is interpretable enough to discuss publicly. Node2vec and GraphSAGE may help prioritise review, but they remain internal research tools until their outputs are stable across election cycles and explainable to readers.
Not every recipient is the same kind of thing.
Conflating recipients would be unfair, so we keep two categories visibly separate. A gift to a mainstream Democratic fundraising vehicle is not evidence of a Hindu-nationalist donation, and the site never implies that every recipient, or every donor, sits in the Sangh ecosystem.
The Hindu American Political Action Committee (HAPAC) and Americans4Hindus are tied to the organised Hindu-nationalist advocacy ecosystem.
The Indian American Impact Fund, the Indian American Victory Fund, and ActBlue are conventional Democratic-aligned diaspora and fundraising vehicles, not Sangh organs.
Where the site characterises an organisation or individual, it also records the counter-position. The Hindu American Foundation and allied Hindu-American groups reject the Sangh-adjacent framing and emphasise religious-freedom and civil-rights work. The site links to both sides and does not adjudicate between them.
What we publish, and what we hold back.
Public maps, network views, and donor pages use city, ZIP3, and a coarse area centroid only. We never publish street addresses or full ZIP5. Exact addresses are used solely for internal matching and are never reintroduced anywhere in the public site. A publish floor suppresses very small donors from public totals.
How the supplementary material is used.
The partner supplied an enriched workbook with additional donor rows, aliases, ZIP summaries, and review notes. That material has been ingested and checked, but it is not blended into the headline totals automatically.
Its role is investigative: it helps find leads, test whether the public story is missing major recipients, and decide which names need manual adjudication. Until identity and conduit questions are settled, the workbook remains a research layer, not a public fact layer.
Useful leads, not headline evidence yet.
The partner workbook helps identify possible missing recipients, alias patterns, and donor records that need human review. It is not blended into the public story until each identity question and fundraising-route question is settled.
These are not final public identities. The same person can appear under several name and location variants, so the rows stay in review.
Workbook rows are normalised and lineage-preserved; aliases still need adjudication.
The public JSON suppresses street addresses and exact ZIP5 values.
Memo and earmarked rows are counted and flagged; final totals need conduit reconciliation before publication claims.
Site copy must continue to describe reported contributions only.
33 high-priority rows have confirmed address matches.
799 high-priority rows still carry ambiguity flags.
91% need adjudication before use in named claims.
The boundaries matter.
Campaign-finance data can show who gave money, when, and to whom. It cannot show private motive. It cannot prove coordination by itself. It cannot tell us what happened outside federal disclosure rules.
Where the technical method lives.
The website keeps the method readable. The repository keeps it reproducible: commands, source snapshots, generated data, tests, and the exact logic used to rebuild every chart.
How the numbers stay current.
A daily delta runs live: a scheduled job pulls new Schedule A receipts for cohort surnames since the last run, appends them, regenerates the JSON snapshots, and triggers a redeploy.
A monthly full refresh is planned but not yet operational. It would rebuild the current-cycle bulk data from FEC bulk downloads and re-run every analysis. We describe it as a roadmap item, not as a process that already runs. A per-cycle backfill is a manual workflow when a new cycle opens.
How to challenge the analysis.
Anyone named, or any organisation characterised, may challenge the analysis. If a match is wrong, a recipient or vehicle is misclassified, or a source should be added, open an issue. Corrections should point to a public record wherever possible. We prioritise identity and classification corrections. Method changes are recorded in the commit history, so the audit trail stays intact.