MARS has crossed from "a funding-and-M&A pipeline" into a general SEC-and-public-records entity graph. The deal core is production-grade today; the newer wealth, people, and event layers are large but carry the resolution debt you'd expect from name-only sources. The work left is not ingest — it's resolution and enrichment: draining ~1.7M unresolved persons, executing ~92K queued merges, and thickening the ~117K operating companies. Signals' pipeline is now live and backfilling the event layer that was empty a month ago.
Deals — the original mission and the surface real customers touch — are mature: integrity-tiered, deduped by content hash + range window, swept historically, and gated at write. 95–98% of deals sit in the consumer-usable verified/vouched tiers.
| Deal type | total | verified | vouched | warn | consumer-usable |
|---|---|---|---|---|---|
| Funding rounds | 83,755 | 29,828 | 49,395 | 4,307 | 94.6% |
| M&A deals | 42,598 | 5,821 | 35,503 | 840 | 97.0% |
| Private credit | 124,966 | 124,794 | — | 172 | 99.9% |
| Real estate | 19,394 | 2,317 | 14,197 | 2,880 | 85.1% |
The warn tier (extraction anomalies, unit-scale errors, huge-IPO escapes) is filtered from every consumer surface by contract, so the residual garbage never reaches a user. This is the layer to point a paying customer at today.
| Persons | 3,116,275 |
| Companies | 951,844 |
| Funds | 159,052 |
| Investors (RIA/PE/VC) | 102,476 |
| Institutions (schools) | 41,396 |
| Thermal assets (flare) | 16,132 |
| Advisors | 5,942 |
| Person ↔ person edges | 16,533,728 |
| Person relationships | 3,468,503 |
| Work-history links | 2,691,764 |
| Education links | 444,544 |
| Deal ↔ investor links | 144,395 |
| Deal ↔ article links | 115,451 |
MARS exists to cover private companies — the Crunchbase / PitchBook game — so the split that matters isn't "has SEC data," it's traded vs not. And a CIK is not a public-company marker: hundreds of thousands of private companies carry one because they filed a Form D private placement. On the real axis — ticker — the platform is overwhelmingly private:
| all companies | operating cos | with a funding deal | |
|---|---|---|---|
| Private (not traded) | 943,382 · 99.1% | 111,149 · 95.3% | 24,605 · 86% |
| Public (has ticker) | 8,462 · 0.9% | 5,537 · 4.7% | 4,116 · 14% |
So "77% carry a CIK" is a strength on private data, not a sign we're just reprocessing public filings — most of those CIKs sit on private Form D issuers, giving MARS SEC-grade identity resolution (strong-ID dedup, cross-linking, exact CIK/CRD joins) on companies CB and PB only hold as free-text names. Of the private set: ~728K are SEC-known (Form D), ~215K are purely news/web-sourced.
The 952K company rows split cleanly by entity_kind, and the "low coverage" numbers are almost entirely honest substrate, not a gap:
| entity_kind | count | what it is |
|---|---|---|
| sec_shell_unknown | 526,701 | Form-D issuer shells — a name + CIK, correctly thin |
| investment_vehicle | 189,926 | SPVs / funds filing as companies |
| unknown | 93,757 | awaiting the entity_kind classifier tail |
| operating_company | 78,241 | the real, enrichable companies (81% have a domain) |
| operating_company_thin | 24,327 | operating, domain present, sparse detail |
| foundation_nonprofit | 18,480 | 990-filers |
| op_co_no_domain | 14,118 | operating, no domain found yet |
~117K genuine operating companies is the consumer-facing set — and 95% of them are private (only 5,537 publicly traded). The thin fields — description (61K), domain (91K) — are concentrated in the shells by design; the enrichment gap that does matter is on these operating companies, and it's tracked.
Raw counts across all 952K look thin — but that's the shell dilution again (a Form-D issuer should have no employees or bios), so the meaningful denominator is the ~102K operating companies:
| Any deal (funding or M&A) | 77,492 | 8.1% |
| — funding rounds | 28,721 | 3.0% |
| — M&A | 55,398 | 5.8% |
| Investors (via deals) | 25,376 | 2.7% |
| People / employees | 150,677 | 15.8% |
| SEC officers (Form D) | 186,346 | 19.6% |
| At least one bio | 67,187 | 7.1% |
| Person relationship-links | 324,686 | 34.1% |
| Have a deal | 63,276 | 62% |
| Have people attached | 55,687 | 54% |
| Have ≥1 bio | 44,573 | 43% |
Among the companies a customer would actually look up: ~6 in 10 have a deal, ~5 in 10 have people, ~4 in 10 have bios. A genuinely connected graph on the set that matters.
Deals and people are the strong dimensions on operating companies (62% / 54%). Bios (43%) and investors are the thinner ones — bios because the ADV/web crawl skews toward RIA/finance firms, investors because we only capture named backers and many rounds don't disclose. Those two are the enrichment levers with the most headroom.
3.1M persons is the headline growth story and the headline debt. 1.72M (55%) are flagged entity_resolution_pending — but that debt is not evenly spread. It's concentrated entirely in the two name-only mint sources, while every strong-ID-anchored source is clean:
Read "pending" as "minted, awaiting dedup" — not "unminted." Every one of these rows is a real person with a real name in the graph. entity_resolution_pending=TRUE is the resolution status: a name-only mint (e.g. a property owner off a deed) can't be auto-confirmed as new-vs-duplicate against the rest of the graph without the resolver pass. The mint worked; the dedup is what's outstanding.
| Mint source | persons | unresolved | anchor | |
|---|---|---|---|---|
| deeds (property owners) | 843,680 | 843,680 | name + address only | 100% pending |
| bios (ADV / web crawl) | 1,241,236 | 759,417 | name, some CRD | 61% pending |
| mars (SEC / news) | 835,013 | 102,012 | CIK / news context | 12% pending |
| insider (Form 4) | 182,066 | 2,315 | CIK strong-ID | 1.3% pending |
The lesson is clean: where a strong ID exists (Form 4 CIK, ADV CRD, SEC), resolution is essentially solved. Where the source is a bare name off a property deed, it isn't — and can't be, without the deeds→persons linker and the tier-chain resolver doing their passes. "Production-grade persons" today = the ~1.4M strong-ID subset. The name-only tail is real data, correctly held out of consumer surfaces until resolved.
| Political donations | 268.5M |
| Foundation officers | 26.4M |
| FEC donors | 23.8M |
| Foundation grants | 13.2M |
| Property owners | 12.4M |
| Form 4 transactions | 11.5M |
The raw wealth substrate. Vast, and mostly unlinked to the person graph — that linkage is the value unlock, not the ingest.
| Signals deal events | 60,999 |
| Appointment events | 51,884 |
| Lawsuit events | 13,274 |
| Government events | 9,619 |
| Auditor-change / dividend | 11,205 |
| Bankruptcy / windfall / breach | 4,642 |
The event layer that was empty a month ago. Signals' pipeline is done and backfilling — this fills the biggest gap in the graph.
Also live and daily-fresh: adv RAUM history (399K PIT rows) + regulatory events (9.9K), lp_data fund performance/commitments, flare thermal observations (1.0M), tranche debt maturity wall (1.2M), 13F manager AUM (194K).
Three distinct queues, very different sizes and difficulty:
| Queue | open | how it drains | |
|---|---|---|---|
| Person resolution backlog | 1,721,679 | deeds linker + tier-chain resolver + strong-ID passes | the big one |
| Merge candidates (executable) | 46,514 | merge_entities.py — machine-decided, ready to run | mechanical |
| Merge review (needs judgment) | 45,333 | Qwen→Grok-web tier chain | LLM |
| Gate review backlog | 45,220 | deal-dedup drainer (live) + person review | draining |
| Companies pending | 814 | essentially solved | done |
Every mutation is logged to identity_decisions_v2 (6.97M rows) — the whole platform is reversible. The gate has processed 1.27M submissions (1.26M promoted, 45K in review, 32K cleanly rejected). Merging and un-merging are both gated verbs, so draining these queues is safe, auditable, and undoable.
merge_candidate rows are machine-decided and executable now; move merge_entities to an hourly cadence so the queue stays near-zero instead of accreting.The deal core and strong-ID entity graph are production-grade now — that's a real, sellable dataset with integrity contracts and reversibility. The wealth, people-tail, and event layers are large and growing fast but gated behind resolution work that is understood, tooled, and reversible — not blocked. Nothing here needs new ingest; it needs the resolver and linker to finish their passes. Signals coming online closes the event gap that was the most visible hole a month ago.
mars.*_v2 substrate.
Row counts from planner statistics + exact counts on canonicals. Deal tiers, resolution flags, and queue depths are exact.