Our Data Quality Standard
No data over bad data.
We would rather return nothing than return something wrong. This page explains what that means in practice: how we collect, validate, refresh and deliver every profile, email and phone number.
- verified work-email accuracy
- 99.3%
- profile refreshes per month
- 200M
- highly verified profiles, out of 1B+ collected
- 450M
- charged when we return nothing
- 0 credits
Principles
Three commitments behind every response
Freshness you can see
Every response carries the date of the last full profile refresh, not a light check on a few fields. Read it for free with
/checkbefore you decide how to resolve.Quality by construction
Validation runs at sourcing, at refresh and at delivery. Bots, fakes and unverified records are kept out of the database. They never reach your product.
Matching precision
We never return a guess. Identity resolution runs every check we have and returns a confidence-scored match, or null.
The data layer
We operate the whole pipeline, end to end
Since 2024 we no longer source data: we run the full infrastructure ourselves. That's what lets us guarantee what comes out of it.
Live collection
Publicly available professional data, sourced by us
Data validation
Bot & fake filtering, consistency checks, batch QA
On-demand refresh
Tiered schedule plus live re-sourcing
Entity mapping
People ↔ companies ↔ domains ↔ social IDs
Mapping validation
Confidence-scored identity resolution
Distribution
API, MCP, CLI, CSV: same schema everywhere
Validation layer
We don't resell data. We validate it.
Where we use external sources, we never trust their flags. Every result passes our own checks before it reaches you.
Deliverability checks
- MX records resolvedpass
- SMTP handshakedeliverable
- Catch-all detectionflagged
- Cross-source name/domain consistencymatch
Validated in real time, before delivery. Waterfall providers re-benchmarked monthly against ground truth.
Ownership checks
- Number existence & carrieractive
- WhatsApp / iMessage presencefound
- Partial-digit cross-checksconsistent
- OSINT cross-validationowner ✓
The number exists and belongs to the person, not just one of the two.
Identity checks
- Strict identity resolution0.96
- Bot & fake-account filteringupstream
- Consistency vs previous versionpass
- Sampling & QA per sourcing batchpass
Below the confidence threshold, the answer is null, never a best guess.
Verified profiles only
Why our numbers look smaller in benchmarks
Most providers count every record they hold. We only return profiles that passed verification. Fake accounts and bots are blocked upstream, so our coverage figures are lower, and our match is right.
Example · search “John Doe, Microsoft”
- John Doe · Microsoftbot
- John Doe · Microsoftfake
- John Doe · Microsoftverified
- John Doe · Microsoftbot
Keep them all and every match is a coin flip. We remove them, so the match is the real one.
Refresh engine
Two mechanisms keep the database fresh
Freshness is the hardest problem in B2B data. We don't solve it with a “30-day refresh” claim. We solve it with usage and with scoring.
Live API traffic
Every live person or company call re-fetches the source and updates the profile in our database. Usage keeps the data current by design.
Opt-out available by contract if you don't want your calls used for refresh.
Scored, tiered refresh
Every profile is scored on demand signals, job title and completeness, then assigned a refresh tier.
| Tier 1 | High demand | every 30 days |
|---|---|---|
| Tier 2 | Active profiles | every 90 days |
| Tier 3 | Long tail | on demand via API |
200Mprofile refreshes per month, with a last-updated timestamp on every response
Resolution modes
You decide how fresh is fresh enough
Freshness is a trade-off with latency and cost. We expose it instead of hiding it: check the date for free, then choose per request.
/check
FreeSend an ID or profile URL, get our last-updated date. Decide: cache, live, or skip.
"exists": true,
"experienceCount": 8,
"skillCount": 24,
"schoolCount": 3,
"lastUpdate": "2026-08-30T09:12:44.000Z"cache
from our databaseThe profile as stored, with its timestamp. Best for volume and latency-sensitive features.
- Mode
- Synchronous
- Latency
- ~500 ms P95
live
re-sourced nowGoes back to the source, re-validates, updates our database, returns the new version. For stale records and high-stakes decisions.
- Mode
- Async · webhook
- Freshness
- Real-time
How to benchmark us
Rank providers by precision, not by count
Most waterfalls rank providers by match rate because quality is hard to measure. But a high-count provider placed first pushes its false positives straight into your product. Put the most precise provider first, then let lower-confidence sources fill the gaps if you want more coverage.
Ranked by count
- Provider A92% · 71% right
- Provider B80%
- Provider C64%
Ranked by precision
- Provider C99% right
- Provider Bfills gaps
- Provider Alast resort
Compliance
Compliance-by-design. Built to be defensible.
Reverse Contact is designed to support GDPR/CCPA-aligned data practices. We maintain clear sourcing principles, respect data subject rights, and prioritize accuracy over guesswork.
- GDPR
- CCPA
Don't take our word for it. Benchmark us on your records.
500 free credits, 7 days, no card. Run a sample where you already know the truth and measure precision, not just fill rate.
- Profiles
- 1B+
- Refreshes / month
- 200M
- Response time (P95)
- 500ms