Proof
Measured, not marketed.
Four numbers carry this page: 890 ms median and 1,463 ms at p95 for a single check, 154 s median for a full sweep, and 548 domains covered by every sweep. All four come from the measurement runs in tech paper v5 — and below them sits the methodology, a curl to reproduce the whole thing, and the competitors’ numbers with sources. Where a competitor beats us, we print it.
Preview build — figures locked at launch.
Fast enough to live inside a signup flow or a support screen — the user is still reading when the answer lands.
19 calls in 20 finish under a second and a half. Set your timeout at three seconds and stop thinking about it.
Submit the job, pour a coffee, collect 548 per-domain answers. Live at request time — never a cached snapshot.
The registry derived from the California CPPA Data Broker Registry — the legally mandated filing list, plus curation, derivation published.
Methodology
How the numbers were made — so you can unmake them.
A benchmark you can’t reproduce is an advertisement. Here is what was measured, how the percentiles are defined, and a one-line curl that runs the same test against the same endpoint. The meter means your benchmark costs a dime.
What was measured
Wall-clock time from request sent to complete response received, against the live API. Single checks
are timed on POST /v1/verify;
sweeps are timed from job submission on POST /v1/scan
to the job report reading complete. Figures are from the tech paper v5 measurement runs.
The request shape
Every timed check used the production request body — firstName, lastName, email, domain — against broker and people-search domains, the class the product is built for. No warm-up requests were excluded from the tally; slow runs count.
Percentiles, defined
Median (p50): half of measured calls finished faster than this. p95: 19 out of 20 finished faster; the remaining 1 in 20 was slower, and we’d rather tell you that than show you an average that hides it. Averages flatter; percentiles confess.
Cold, not cuddled
Checks were measured cold, with no cached answers served — each timed call did its public-surface lookups at request time. Sweep timing includes queueing, fan-out across all 548 domains, and report assembly.
# Time one real check against the live endpoint. # One completed answer = one dime on the meter. A failed # call bills $0.00 — even the one you use to test that claim. curl -s -o /dev/null \ -w "status: %{http_code} total: %{time_total}s\n" \ https://api.sirveil.ai/v1/verify \ -H "Authorization: Bearer sv_live_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{ "firstName":"Jane", "lastName":"Doe", "email":"[email protected]", "domain":"examplebroker.com" }' # Loop it 100 times, sort, and read your own median and # p95. Total cost of auditing us: about ten dollars.
If your numbers disagree with ours, email [email protected] with the run — we’ll publish the discrepancy or fix the cause, whichever the data says.
Cost efficiency
The arithmetic. Bring a calculator, catch us lying.
No market studies, no “up to 97% savings” — just division you can check on the back of the invoice we send you.
The field
Checked against the leaders. Sources cited. Losses included.
Every claim below was verified on the vendor’s own pages in August 2026, and each card links its source. Anything we couldn’t verify there, we cut — the same rule we apply to ourselves. One of these vendors beats us on coverage, and the card says so.
Exposure & removal
Optery
They beat us on coverage. Optery’s business API page advertises “over 635+” data brokers — more sites than our 548-domain registry, and we’re printing that in our own benchmark page because that’s the house rule.
Where we differ: we found no published per-call price and no self-serve key on that page — access starts with an email to support and a scheduled meeting, with prepaid-yearly or month-to-month plans. Our price is on the page and the key is self-serve.
Source: optery.com/api — checked August 2026.Self-serve challenger
Apify — Personal Data Exposure Report actor
Respect where due: a published $1.00 per exposure report, pay-per-event, no subscription — the only other vendor we found preaching the metered religion.
The listing scans 18 broker and people-search sites directly (23 sources counting breach databases) in a quoted 2–5 minutes per subject. Our sweep covers 548 domains for $0.35 in a measured median of 154 seconds. Same shape of product; different order of magnitude.
Source: apify.com — actor listing — checked August 2026.Enrichment data
People Data Labs
Credit to them: pricing is genuinely published — person APIs from $0.28 per credit at the entry tier (350–2,500 credits/month), one credit consumed per successful match, tiers set by how many credits you purchase.
It’s a different product: a credit buys one cached profile record — “who is this person?” Our call buys a live indexed / not-indexed verdict with evidence — “where are they exposed, right now?” And our meter has nothing to purchase in advance.
Source: support.peopledatalabs.com — Pricing & credits — checked August 2026.Identity resolution
Pipl
Pipl’s API pricing page redirects to a login screen; the public routes to access run through a contact-sales form. That is the entire verifiable pricing story, so it is the entire card.
Our position: no public number exists to compare, and we won’t invent one — try the link yourself. Our two numbers are printed on every page of this site.
Source: pipl.com/api/pricing (login-gated) · pipl.com/contact-us — checked August 2026.People-search data
Endato / EnformionGO
Metered like us — billed per match, self-serve signup. Published unlike us: their help center says the per-match rates live inside your account dashboard (“Keys tab → Pricing section”), so you learn the price after you sign up, not before. A per-match dollar figure circulates in third-party write-ups; we couldn’t verify it on Endato’s own public pages today, so it isn’t here.
Source: go.enformion.com — “How do I view my cost per match?” — checked August 2026.What we cut, and why: a widely-quoted Pipl monthly minimum, an Endato per-match price, and competitor first-report timings all failed today’s verification pass on the vendors’ own pages — so they’re not on this page. If we can’t cite it, we don’t print it. That rule cost us some flattering comparisons; it’s still the rule.
Compare us yourself — the questions to ask any vendor, including us.
Honest refusals
“Couldn’t tell” is an answer. Guessing isn’t.
Decidability is class-dependent, and pretending otherwise is how this industry sells fiction. We benchmark our refusals because they’re part of the product.
Decidable by design
Broker and people-search domains exist to be publicly findable — so a public-surface check returns a real indexed or not_indexed verdict, with the queries and evidence attached.
Undecidable, admitted
Login walls and noindex’d sites can’t be verified from the public surface — by us or by anyone honest. Those return indeterminate, with the reason: a completed, billed answer that tells you exactly what could not be seen, instead of a fake “no.”
Refusal over confidence theater
A typical sweep reads about 5 indexed / 522 not indexed / 21 indeterminate. Those 21 are the benchmark you should ask every vendor about — a scanner that never says “couldn’t tell” is guessing somewhere, and you’re paying for the guesses.
Ten dollars audits the whole page. The meter starts at zero.
Get a key, run the curl a hundred times, and compare your percentiles to ours. Worst case, you’re out the price of lunch and holding the receipts.