TruePeopleSearch Scraper — People Search & Reverse Phone Lookup avatar

TruePeopleSearch Scraper — People Search & Reverse Phone Lookup

Pricing

from $3.00 / 1,000 results

Go to Apify Store
TruePeopleSearch Scraper — People Search & Reverse Phone Lookup

TruePeopleSearch Scraper — People Search & Reverse Phone Lookup

TruePeopleSearch scraper for people search by name, phone, address or email: phones, emails, ages, current and past addresses and relatives. Reverse phone lookup for skip tracing and CRM enrichment. Pay per match. Not for FCRA use.

Pricing

from $3.00 / 1,000 results

Rating

1.5

(2)

Developer

IntelScrape

IntelScrape

Maintained by Community

Actor stats

3

Bookmarked

334

Total users

52

Monthly active users

a day ago

Last modified

Share

TruePeopleSearch Scraper – Phone & Email Matches

Actor Banner

⭐ Honest review welcome: if you've run this Actor, please leave an honest review on the Actor page (good or bad). Something not working? Please open an issue and we'll look at it. We don't pay or reward anyone for reviews.

🇨🇳 中文简介 (Chinese — China & Singapore): TruePeopleSearch 公开页里的电话和邮箱,用姓名、地址、电话或邮箱即可查询。默认只输出含电话/邮箱的匹配并按条计费,避免为空页买单;无需 API Key。适合需要美国公开联系方式的中介、催收辅助与 B2B enrichment 团队(非 FCRA 决策用途)。马上试跑,把匹配结果导出 CSV 或通过 MCP 交给 AI 助手处理。

🇸🇬 Ringkasan Melayu (Singapore): Dapatkan telefon dan e-mel daripada rekod awam TruePeopleSearch menggunakan nama, alamat, telefon atau e-mel. Secara lalai hanya padanan dengan telefon/e-mel ditulis — anda bayar per padanan, bukan halaman kosong. Tiada API key. Sesuai untuk enrichment B2B dan penyelidikan yang sah (bukan keputusan FCRA). Cuba sekarang di Apify Store.

🤖 NEW: Connect This To Your AI!

Want to use IntelScrape actors inside Claude, Cursor, or ChatGPT? Check out the Skip Trace MCP Server. Give your AI Model Context Protocol access to people-search and lead agents.

  1. TruePeopleSearch Scraper — Phone & Email Matches
  2. Skip Trace PRO — Name, Address, Phone & Email People Lookup
  3. TikTok Scraper — Emails & Influencer Leads
  4. Amazon Product Review Scraper — Deep E-commerce & Review Extraction
  5. Building Permit Scraper — US Cities Open Data
  6. Google Maps No-Website Leads — Local Businesses Without a Website
  7. UCC Lien Scraper — Florida & New Jersey Filings
  8. Skip Trace MCP Server — Use Skip Trace inside Claude, Cursor, ChatGPT

Next steps after a match

Each row includes a softCta object with links to related lookups (no extra charge):

Optional paid enrichments (email-verify, phone-liveness, breach-exposure) stay on their existing schedule — these links do not change pricing.


⚡ Use this Actor in n8n — no code

  1. Add the official Apify node in n8n.
  2. Connect your Apify API token.
  3. Run Actor ID: IntelScrape/truepeoplesearch-scraper.

price billing API key coverage search

People search focused on contact matches. Look up by name, address, phone, or email and get merged public-record style rows with phones/emails when available.
Bulk input, no API key, pay only for matches.

⚠️ Zero-row warning (data-source keys): this Actor ships with free sources only (North Carolina property records, ThatsThem, FEC donors). No paid data-source key (PDL / ScraperAPI / Endato) is configured, and ThatsThem now masks many phone digits and email characters. So name searches outside North Carolina often return 0 rows, and the run status message will say so. Best results: search by phone or email (reverse lookup), or use Name, City, ST (NC works best). Zero-row runs are not charged for results; only the one-time Actor start event applies. This is a data-source limit, not a crash.

Honest coverage & billing (read this): Baseline is public-records style lookup + best-effort sources (optional keyed enrichments only if the owner configured them). By default only rows with a phone and/or email are written (billed as dataset results). Enable address-only only if the input exposes that flag. Use demo mode for fictional format samples (saved to Key-value store OUTPUT, no result charge; the start event still applies).


🧭 Built for skip tracers, wholesalers, process servers, debt recovery, and B2B enrichment teams.

⭐ Store rating is driven by daily power users. Please leave a review if this saves you time.

⚖️ Lawful business use only. Publicly available information only — not a consumer reporting agency / not for FCRA decisions. You are liable for unlawful use.

📌 Examples are fictional.


🔗 Permit → Owner → Contact: a 3-step lead pipeline (for roofing, solar, HVAC & real-estate sales teams)

Three IntelScrape Actors chain into one workflow: find who just pulled a permit, then find a way to reach them. Each step is its own pay-per-event run, so you only pay for the steps you use.

StepActorWhat it gives you
Building Permit Scraper1. New permits by city, trade and value: address, contractor, owner name where the city publishes it
Skip Trace PRO2. Turn a name or address from step 1 into a person record (address history, relatives, phone/email where available)
TruePeopleSearch Scraper (you are here)3. Second-source phone/email check for the same person, so you can compare two sources before you call

How to run it (no code):

  1. Run Building Permit Scraper with e.g. {"city":"Austin","permitType":"Roofing","timePeriod":"Last 30 days","maxResults":25,"enrichContractors":false} and export the dataset.
  2. Feed the owner names and addresses into Skip Trace PRO, one First Last, City ST query per line.
  3. Send any person who still has no phone or email to TruePeopleSearch Scraper.
  4. Keep the rows that two sources agree on; those are your call list.

Apify integrations (n8n, Make, Zapier, Google Sheets) can pass the dataset from one step to the next with no code. Results depend on what each public source returns for a given person; rows with no phone or email are not guaranteed.

Common names & thin results (honest)

Common-name searches (e.g. John Smith without City+ST) often return 0 billed contacts. When hits exist but none include phone/email, the run can look FAILED in the Store (status message like “Found name/address hits but 0 with phone/email (not billed)”) even though billing stayed honest — thin rows are skipped by default so you are not charged for empty contact fields.

How to get better contact matches:

  1. Scope name searches with City + ST (e.g. "John Smith, Austin, TX" or queries: "John Smith | Austin, TX").
  2. Prefer reverse phone (phones[]) or reverse email when you already have an identifier — highest contact hit rate.
  3. Set includeAddressOnlyResults: true only if you want name/address public-record rows without phone/email (those rows are billed if written).
  4. Keep default off if you only want dialable/emailable matches (pay for contacts, not thin pages).

🕵️‍♂️ Why Choose Us vs. "Cheaper" Competitors?

FeatureTruePeopleSearch ScraperThin TPS clones
BillingPay for contact matchesPay for empty thin rows
ModesName / address / reverse phone / emailSingle brittle mode
StackAligned with Skip Trace PRO quality barOne-off scripts

Quick start

{
"names": ["John Smith, Springfield, IL"],
"maxResultsPerQuery": 3
}

New in 1.0.60: CRM-ready columns and mobile-only filter

Two free options (no extra charge) make the export drop straight into a CRM, dialer or spreadsheet:

  • flattenedOutput: true adds flat columns to every row: Phone-1…Phone-5 with Phone-N Type (Wireless / Landline / VoIP), Email-1…Email-5, Full Name, Age, Street Address, Input Given and Person Link.
  • wirelessOnly: true keeps only mobile numbers (in phones, bestPhone and the Phone-N columns), which is handy for SMS and dialer campaigns. A match left with no phone and no email is skipped and not billed.
  • Fixed: email columns in the default table / CSV view were blank before 1.0.60. They now fill, and the view adds bestPhone, bestPhoneType and bestEmail.
{
"phones": ["(415) 555-0100"],
"flattenedOutput": true,
"wirelessOnly": true
}

Example flat row (fictional demo record, from demoMode):

Full NameAgePhone-1Phone-1 TypeEmail-1Street Address
Jordan A Sample42(415) 555-0100Wirelessjordan.sample@example.com500 Example Ave, New York, NY 10118

Pricing (pay per event)

You pay only for what is delivered. Apify platform usage for the run is billed to your account as normal.

EventPriceWhen it is charged
Contact match (result)$0.003 ($3.00 per 1,000)Each row written with a phone and/or email. Thin rows without contacts are skipped and not billed.
Email verification$0.002Once per match that includes a verification result. On by default (verifyEmails). Set verifyEmails: false to skip it.
Phone liveness check$0.003Opt-in only (verifyPhoneLiveness: true), once per match with a liveness result.
Actor start$0.0005 per run (rises to $0.005 per GB of memory from Oct 28, 2026)Once when the run starts.

What 1,000 matches cost: about $3.00 with verifyEmails: false, or up to $5.00 with the default email verification on. Use maxItems to cap spend per run.


Use cases

  • Skip tracing and wholesaling: find a phone or email for a property owner from a name plus city/state or a mailing address.
  • Reverse phone or email lookup: put a name and address to an inbound number or address you already have.
  • CRM and dialer enrichment: turn on flattenedOutput and wirelessOnly to get mobile numbers in Phone-1…Phone-5 columns ready for import.
  • Bulk lists: paste a Google Sheets or CSV link in csvUrl (headers like Name, Address, Phone, Email) and export results to CSV, Excel or JSON.
  • Automations: call it from n8n, Make, Zapier or the Apify API, or set webhookUrl to receive the records when the run finishes.

⏰ Schedule this Actor — monthly refresh of a contact list kept in a Google Sheet

Run it once with your own settings, save that run as a task, then let Apify Schedules repeat it. About two minutes, no code.

  1. In Apify Console open Schedules → Create new.
  2. Click Add → pick your saved task (or this Actor), set the cron expression and time zone below, and click Enable (new schedules start disabled).
  3. Optional: open the task's integrations and add a webhook on ACTOR.RUN.SUCCEEDED so every finished run is pushed to your CRM, Zapier, Make or n8n. Payload template: {"runId": {{resource.id}}, "datasetId": {{resource.defaultDatasetId}}, "status": {{resource.status}}}. Your tool then reads https://api.apify.com/v2/datasets/<datasetId>/items?format=csv, or use the Apify integrations for Google Sheets, Make and Zapier.
CadenceCron expression
Every day, 8 AM0 8 * * *
Weekdays, 8 AM0 8 * * 1-5
Every Monday, 8 AM0 8 * * 1
1st of the month, 8 AM0 8 1 * *

Starter task input for this Actor (edit the values, then paste into the task):

{
"csvUrl": "https://docs.google.com/spreadsheets/d/YOUR_SHEET_ID/export?format=csv",
"maxItems": 200,
"flattenedOutput": true,
"webhookUrl": "https://your-crm.example.com/hooks/tps"
}
  • Keep your lookup list (Name, Address, Phone, Email columns) in one sheet. Edit the sheet, not the task, and every scheduled run picks up the new rows.
  • maxItems is a hard cap on matches written per run, so a scheduled run cannot exceed the budget you choose.
  • There is no change-only mode yet: every scheduled run searches the whole list again and each contact match is billed again. Schedule monthly or weekly for lists you want refreshed, and remove finished rows from the sheet.

Prefer the API? POST https://api.apify.com/v2/schedules with a body like the one below (send your token in the Authorization: Bearer header):

{
"name": "truepeoplesearch-scraper-weekly",
"userId": "YOUR_USER_ID",
"actions": [
{
"type": "RUN_ACTOR_TASK",
"actorTaskId": "YOUR_TASK_ID"
}
],
"cronExpression": "0 8 1 * *",
"timezone": "America/New_York",
"isEnabled": true
}

Docs: Apify Schedules · Webhook actions

Did this run save you time? A quick rating on the Store page helps other people find it. If something broke, open an Issue instead and I'll fix it fast; issues get answered within a day.

FAQ

Why did my run return 0 results? Common names without City + ST often have no phone or email on file. Those rows are skipped and you are not charged for them. Add City + ST, or search by phone or email instead.

Why does the Store show some runs as FAILED? A run that found name/address hits but no contact fields can end with a "0 with phone/email (not billed)" status. Nothing is charged for those hits.

Do I need an API key or proxy? You do not need to supply one, but coverage depends on the sources configured. This Actor currently runs on free sources only (no PDL / ScraperAPI / Endato key set), so name searches outside North Carolina often return 0 rows; reverse phone/email lookups work best. The run status message states when 0 rows is caused by missing data-source keys.

Can I try it without spending on real lookups? Yes. Set demoMode: true to see the exact output format using fictional records. The sample is saved to the run's Key-value store (OUTPUT); nothing is written to the dataset and no result or add-on events are charged (only the one-time Actor start event applies).

How do I keep only mobile numbers? Set wirelessOnly: true. Matches left with no phone and no email are skipped and not billed.

Can I use it for tenant screening, employment or credit decisions? No. It is not a consumer reporting agency and the data is not for FCRA purposes.


Lawful B2B / investigative use of public information only. Not for FCRA consumer decisions.


Match-rate honesty (read before bulk runs)

Common name-only searches (e.g. "John Smith") often find public-record name/address hits without phone or email. By default those thin rows are not written and not billed. The run may finish with 0 contact matches — that is expected billing honesty, not a Store outage.

Tips for billed contacts: use reverse phone/email, include City + State with the name, start with demoMode to inspect the schema, or set includeAddressOnlyResults: true only if you want property rows without phone/email (those rows are billed if written).

⭐ Store review

If a live lookup returned the contact fields you needed, a quick Store review helps other users — thank you.