Skip tracing & people search across the US. Look up anyone by name, address or phone and get current + past addresses, phone numbers, relatives, aliases and a profile link. Real-time public records, no subscription or API key. Flat $6.5/1K, pay only for matches. Lawful B2B use only.
All notable changes to this Actor will be documented here. All data comes from
free, publicly available public-records sources.
[0.21.4] — 2026-08-22
Fixed — address search returns identified residents again
Restored live address-result pages to the standard search cascade instead of
relying on incomplete archived coverage.
Protected address pages are now retrieved through a direct HTTP request path,
while confirmed no-matches and unavailable lookups remain free.
[0.21.3] — 2026-08-22
Fixed — accurate bulk address jobs
Removed the sample name from the input form and safely ignore that legacy
sample when it is still present in a bulk address-only input.
Address matches without a person's name, phone, or email are now returned as
free no-result statuses and are never charged.
Every submitted lookup is represented in the output, including free statuses
for inputs that could not finish within the run budget.
The main table now shows the search type and original input, and the input
documentation clearly explains that fields are independent OR searches.
Large batches stop retrying a temporarily unavailable route after repeated
failures, allowing the remaining inputs to finish quickly and predictably.
[0.21.2] — 2026-08-15
Fixed — large batches now run fast and reliably
Big multi-name batches complete in seconds instead of failing: result merging
was heavily optimized and parallel fetching is now capped, so large runs stay
stable.
Empty records (no name, phone or address) are never delivered or charged.
[0.21.1] — 2026-08-15
Fixed — no more timed-out runs on slow sources
Every fetch path now strictly respects the run's time budget, which ends well
before the platform timeout. A slow or temporarily unreachable source can no
longer stretch a run until it times out with nothing delivered — you always
get the results that were found, and unprocessed lookups are skipped (free)
instead of failing the whole run.
[0.21.0] — 2026-08-08
Fixed — result delivery now respects the run's charge limit
Result delivery now stops exactly at the run's charge limit, so you always get
the full set of records you paid for and never a partial, unbilled remainder.
No-match, blocked and duplicate lookups remain free as before.
[0.20.0] — 2026-08-03
Stable, complete result sets
Results for the same query are now pooled across runs, so the delivered set is
stable and complete instead of varying between runs.
Raised the max results per query so large lookups aren't capped early.
Faster lookups with the same coverage.
[0.18.0] — 2026-07-24
Reverse email / phone / address fixed
Reverse email, phone and address lookups were returning empty due
to a fetch-path issue — added a dedicated route for these three modes, and
they now return full records reliably.
Also fixed parsing of source pages that return HTTP 404 while still serving
full resident data — these were being dropped.
Reverse-email lookups now also pull public profile data (name, location, job
title, linked accounts) from an additional free source — so an email lookup
isn't empty when a public profile exists even if other sources are
unavailable.
[0.17.0] — 2026-07-23
Cleaner dataset
Removed the standalone compliance-notice row and the review-request row from
the dataset output. The output now contains only person records — the
compliance text still travels with every record in its complianceNotice
field, and the review nudge moved to the run log.
[0.16.0] — 2026-07-22
Cleaner output
Neutral source attribution.dataSources now reports how many independent
public-records sources corroborated each record (e.g. "public records
(3 sources cross-referenced)") instead of naming individual providers. The
match-confidence score still reflects the real number of corroborating sources.
Removed the per-record profileUrl field from the output.
[0.15.0] — 2026-07-21
Wider coverage & richer records
More public-records sources per lookup. Each name search now cross-references
additional free public-records sources in parallel (with automatic fallback),
so you get more unique people per query and more complete records.
More phone numbers, addresses, aliases and relatives merged into each
matched person, and better age coverage.
On common names this returns noticeably more distinct individuals; on rare
names the extra sources corroborate matches for higher confidence.
Same output fields and the same flat $6.5/1K pricing — you still only pay for
unique matched records. Reliability and run time are unchanged.
[0.14.7] — 2026-07-21
More results, faster and more reliable
~30% more results per search. Fixed a matching issue where distinct people
were sometimes merged together and dropped — a single lookup now returns
noticeably more matched individuals.
Broader coverage. Each lookup now cross-references more public-records
sources in parallel (with automatic fallback), so fewer people are missed and
records are more complete.
Higher result cap. The default number of results per query was raised so
common names return the full set of matches out of the box.
Faster & more stable fetching. Reworked fetch path with automatic retries
and IP rotation means far fewer empty or failed runs.
Same output fields and the same flat $6.5/1K pricing — you still only pay for
matched records.
[0.14.3] — 2026-07-09
Cost control
Leaner fetch path. The fetch strategy was streamlined so lookups cost
less to run and finish faster. A lookup that can't be served simply returns
no result (never charged). The legacy proxy-fallback option has been removed.
[0.14] — 2026-07-03
More complete results per lookup
Fuller match lists. Name, phone and address lookups now return a more
complete set of people per query — matches that were previously left out are
merged in, and details for the same person are combined into a single richer
record instead of being split or dropped. Expect noticeably more results on
common names.
Same output shape and price. Fields are unchanged and you still only pay
for matched records at the flat $6.5/1K rate.
[0.13] — 2026-07-02
Even fewer empty results
Broader default fetch coverage. Lookups now try an additional low-cost
fetch route before falling back, so more name and reverse-phone searches
return a match on the first try. No change to fields, output, or the flat
$6.5/1K pricing.
[0.12] — 2026-07-02
Faster, more reliable lookups — far fewer empty results
Fewer failed / empty lookups. The public-records sources started blocking
the old fetch path, so many runs were coming back empty. The fetch strategy
was reworked (best-IP-first with a smart retry fallback) so a single transient
block or timeout no longer kills a lookup — you get a result where you
previously got nothing.
Faster. Removed a wasted first fetch attempt that almost always failed and
added ~10s of dead time per lookup, plus a lighter, more direct fetch path.
Lookups that used to stall now return noticeably quicker.
Same data, same price. No change to the fields you get, the output shape,
or the flat $6.5/1K pricing — you still only pay for matched records.
mostLikely — the single best record per lookup is flagged true (best
match confidence, tie-broken by data richness). Filter mostLikely=true for
one clean row per person.
matchConfidence (0-100) — a numeric score alongside the existing
high/medium/low confidence, so you can sort/filter by match strength (e.g.
keep only > 60).
flatOutput — optional flattened output: nested fields (phones, emails,
relatives, geo, emailsDetailed…) become single underscore/semicolon-joined
columns for a clean CSV / Excel / Google Sheets / CRM export.
All additive; pricing unchanged, you still only pay for matches.
[0.10] — 2026-06-23
Fixed — ReDoS hardening (stability under load)
Catastrophic regex backtracking eliminated. Email and address patterns
used unbounded quantifiers that could hang a run for 60+ seconds on a large or
malformed page (e.g. a 50k-character junk block). Replaced with bounded,
RFC-realistic limits so parsing stays linear — adversarial input now processes
in milliseconds instead of minutes. Applies across all source parsers.
HTML size cap (3 MB) before regex parsing as defense-in-depth against a
pathologically large response tarpitting the run.
[0.9] — 2026-06-23
Fixed — input validation (anti-abuse hardening)
Name search: Rejects two single letters (e.g. "A B") that were being
accepted as valid names. Prevents abuse through gibberish name inputs.
Name search: Accepts names with apostrophes (O'Brien, de la Cruz) and
hyphens (Jean-Paul) by improving token extraction regex.
Phone search: Accepts extensions (x123, ext. 123) alongside the main
number. Previously "202-555-0182 x123" was rejected.
Address search: Now requires either a state abbreviation (e.g. NY) or
5-digit ZIP code to prevent partial/street-only inputs from triggering
expensive lookups. More precise validation, fewer wasted requests.
[0.8.7] — 2026-06-22
Added — opt-out / removal from results
You can now ask to be excluded from this Actor's results. People who
request removal (email in the Legal & Acceptable Use section) are added to a
suppression list, and the Actor stops returning them in any search — they
are dropped before any result is delivered or charged. We can't delete records
at the original public sources, but we no longer surface opted-out people here.
[0.8.6] — 2026-06-22
Added — input validation (faster, no wasted lookups)
Inputs are now validated instantly before any lookup runs: clearly invalid
phone numbers, malformed or non-existent email domains, and inputs that aren't
real names are reported as "no match" right away instead of triggering a
search. This makes runs faster and means you are never charged for junk input.
[0.8.5] — 2026-06-22
Added — phone spam/scam flag
Premium reverse-phone lookups now also check community spam reports and tag
the number with spamReport (true/false) plus sample spamComments, so you
can tell at a glance whether a phone is reported as spam/scam. Applied to
every record for that phone.
[0.8.4] — 2026-06-22
Added — another premium source
Premium mode (useUnblocker) now pulls one more premium public-records
source (name & phone — each result gives full name, a phone and a current
address). Six premium sources total alongside the free ones.
[0.8.3] — 2026-06-22
Added — even more premium sources
Premium mode (useUnblocker) now pulls two more premium public-records
sources (name — full street addresses, many phones, relatives; reverse-phone
— owner name, city and carrier). Five premium sources total alongside the
free ones.
Added carrier to records when a reverse-phone source provides it.
[0.8.2] — 2026-06-22
Added — more premium sources
Premium mode (useUnblocker) now pulls two more premium public-records
sources (name/phone — adding age, current + prior cities, relatives, many
phone numbers and emails). All merged per person into one enriched record.
[0.8.0] — 2026-06-22
Added — optional premium source via your own unblocker API
New opt-in "Premium sources" mode (useUnblocker): when enabled with your
own unblocker API key (Scrape.do, ScraperAPI, ZenRows, ScrapingBee or a custom
template), the Actor additionally queries premium public-records sources that
the free built-in route can't reach — adding up to ~8 phone numbers, relatives
and geo-coordinates per person, merged into the existing results.
Off by default. The unblocker service bills your account directly, so the
Actor's per-result price is unchanged. The free built-in sources keep working
exactly as before when it's off.
Added geo (lat/lng) to records when a source provides coordinates.
[0.7.3] — 2026-06-22
Added — more sources per search mode (higher hit rate)
Reverse-phone now queries multiple sources in parallel, merged into one
record per person (with an automatic fallback). More sources mean a higher
chance of a match and a fuller contact record.
Name, address and phone lookups all run their sources as a parallel cascade
and merge results, so one slow or empty source never blocks the others.
[0.7.0] — 2026-06-22
Added — match confidence, source attribution, reverse-email & verified contacts
Match confidence on every record — confidence: high | medium | low, based
on data completeness, multi-source corroboration and how well the result matches
your query. Triage strong matches at a glance.
Source attribution — dataSources shows how many independent
public-records sources corroborated each record.
Reverse-email search (4th mode) — look up the person behind an email address
via the new Emails input. Search by name, address, phone or email.
MX-verified emails — each email's domain is checked for mail (MX/A) records;
results add bestEmail, emailsVerified and emailsDetailed (with a
deliverable flag). Free and fast (DNS only), can be turned off.
Best contact surfaced — top-level bestPhone and bestEmail so you don't
have to pick from a list.
Phone E.164 normalization — phonesE164 gives every number in a single
+1XXXXXXXXXX format, de-duplicated across formats.
Pricing unchanged — one flat price, you only pay for matches.
[0.6.30] — 2026-06-22
Fixed — cleaner logs, no false-alarm "errors"
Removed a backend source that is permanently blocked on cloud infrastructure
and never returned data — it only produced noisy "HTTP 403" log lines that
looked like errors. Lookups are unaffected (the working sources already cover
the same data) and runs are slightly faster with one less wasted request.
Source fallbacks are now logged as plain informational messages, so a single
source being momentarily unavailable no longer reads like a failure.
Reverse phone search (look up a person by their US phone number) confirmed
working end-to-end — provide numbers in the Phone numbers input field.
Address and reverse-phone lookups now return full records, not just a list
of names — current/previous addresses, phones, emails, relatives, aliases and,
when available, date of birth / job title / education / profile link.
New "Maximum" coverage mode (source: merge) cross-references several
public-records sources and merges them into the most complete record per
person. "Comprehensive" (default) and "Standard" modes unchanged.
Faster and more reliable — lookups are time-bounded so a run never hangs.
Pricing unchanged — one flat price, you only pay for matches.
[0.5] — 2026-06-17
Added — multi-source coverage (richer results)
Lookups now draw from several public-records sources and return far more
complete records in a single run: current + previous addresses, phone numbers,
emails, relatives, aliases, and — when available — date of birth, job
title, education and a professional profile link.
New Data coverage input: Comprehensive (default) or Standard. If a
source is momentarily unavailable, the Actor falls back automatically, so
results are more reliable.
Pricing unchanged — one flat price, you only pay for matches.
[0.4] — 2026-06-17
Changed — single flat price
One simple flat price: $6.50 / 1,000 matched records (down from the old
$7 / $15 two-tier setup). Every run is a full people lookup — name, age,
current + previous addresses, phones, relatives, aliases and a profile link.
You only pay for matched records; empty lookups are always free.
[0.3] — 2026-06-11
Improved — more results & better accuracy
More matched people per query (default raised to 10, up to 50).
Per-person accuracy — relatives, aliases and address history belong to the
correct individual, never copied across results.
[0.2] — 2026-06-08
Improved — listing & docs
Clearer title, description and README around real search use cases
(skip tracing, people search, reverse phone lookup, address lookup).
[0.1] — 2026-06-03
Added
Richer per-person extraction: detailed phones, address history, relatives,
aliases, and a free SUMMARY aggregate in the run's key-value store.
[0.0] — 2026-06-03
Added
Initial release.
Three search modes: by name, by address, by phone (reverse lookup).
Per person: full name, age, current + previous addresses, phones, emails,
aliases, and a public profile link.