Facebook Profile Lead Scraper avatar

Facebook Profile Lead Scraper

Pricing

from $2.15 / 1,000 profile leads

Go to Apify Store
Facebook Profile Lead Scraper

Facebook Profile Lead Scraper

Find public personal Facebook profiles from keywords, with optional location and email-domain filters. Get names, profile links, bios, work details, audience counts, verification, and public external links in a structured dataset.

Pricing

from $2.15 / 1,000 profile leads

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

🔎 Find personal Facebook profile leads

Facebook Profile Lead Scraper is for recruiters, sales teams, and researchers who need public personal profiles that match a search phrase. Enter keywords and get names, profile links, bios, professional details, audience counts, verification, and public external links in a structured dataset. Use a location or email-domain filter to narrow the search, and set a lead limit when you want fewer saved leads.

👤 See the profile lead data

The default dataset holds one row for each eligible public personal Facebook profile. Required values are the name, profile URL, and first matching keyword. When public data is available, a row can also include a bio, work history, audience counts, a verification flag, and external links. Optional values can be missing.

If the same profile appears through another keyword, location, or submitted value, the Actor keeps the first eligible match and ignores later matches. matchedKeyword shows the keyword from that first saved match.

▶️ Search by keyword, then review the leads

Add at least one keyword, optionally add locations or email domains, and run the Actor. Start with the prefilled example for a small check. The Actor writes qualifying rows to the default dataset as they are found, so you can review saved data while discovery continues.

Use a small maxItems value when you want fewer rows. Leave it empty to return all available results until the source is exhausted.

⚙️ Input

Input fields

FieldTypeWhat it does
keywordsarray of stringsRequired search terms for relevant public personal Facebook profiles. This does not perform name-only profile lookup.
locationsarray of stringsOptional places used to narrow discovery. Leave it empty to search without a location filter.
emailDomainsarray of stringsOptional public email domains used to narrow matches. Leave it empty to allow any public email domain. Private or hidden emails are not added.
maxItemsintegerOptional cap on saved qualifying personal profile leads. Leave it empty to return all available results until the source is exhausted.

Example input

This example is copied from a successful current-beta run.

{
"keywords": [
"fitness coach"
],
"maxItems": 1
}

🧾 Output

Output shape

The default dataset uses one output shape. Optional fields can be omitted when the source does not expose them. The table includes every field in that shape.

FieldTypeWhat it does
fullNamestringPublic name shown on the personal Facebook profile.
profileUrlstring (URI)Public Facebook URL for the personal profile.
matchedKeywordstringSubmitted keyword that first caused the profile to be saved.
biostringPublic bio text when available.
professionalobjectPublic work or professional details when available.
professional.occupationstringPublic occupation or professional description.
professional.workHistoryarray of objectsPublic work entries shown on the profile.
professional.workHistory[].rolestringPublic role or job title in the work entry.
professional.workHistory[].employerstringPublic employer or organization in the work entry.
professional.workHistory[].locationstringPublic location listed for the work entry.
professional.workHistory[].urlstring (URI)Public URL linked to the work entry when available.
audienceobjectPublic audience counts shown on the profile.
audience.followersintegerPublic number of followers.
audience.followingintegerPublic number of accounts this profile follows.
verificationobjectPublic verification information shown on the profile.
verification.isVerifiedbooleanWhether Facebook shows a public verification mark.
externalLinksarray of objectsPublic links listed on the profile.
externalLinks[].urlstring (URI)Public external link.
externalLinks[].labelstringPublic label or title for the link when available.

Example profile lead

This genuine row comes from a successful current-beta run.

{
"fullName": "Cathy Finley",
"profileUrl": "https://www.facebook.com/cathy.finley.3/",
"matchedKeyword": "real estate agent",
"bio": "Cathy Finley. 709 likes · 3 talking about this. Real Estate Agent with Misti Mauceli Lewis Real Estate",
"professional": {
"occupation": "Real Estate Agent/Salesperson",
"workHistory": [
{
"role": "Real Estate Agent/Salesperson",
"employer": "Misti Mauceli Lewis Realty, Realtor, Broker-Owner",
"url": "https://www.facebook.com/greenvillemsrealty"
}
]
},
"audience": {
"followers": 709,
"following": 506
},
"verification": {
"isVerified": false
}
}

The complete field table remains the contract when a row has fewer optional fields.

💳 Pricing

This Actor uses pay-per-event pricing. You pay for each qualifying personal profile lead saved to your dataset. The current tiered event prices are shown in the Actor pricing panel.

🔌 Integrations

Read the default dataset in Apify Console or through the Apify API. You can export the saved leads and use Apify schedules or webhooks around your runs.

❓ FAQ

Why did a matching name not appear in the output?

This Actor uses keywords for discovery and does not do name-only profile lookup. A profile also needs to be public and eligible for the search.

How does the location filter work?

Add one or more locations to narrow discovery to profiles associated with those places. Leave locations empty to search without a location filter.

What does the email domain filter change?

It keeps matches with public email addresses from the domains you enter. Leave emailDomains empty to allow any public email domain. Private or hidden emails are not added.

What happens when the same profile matches more than one keyword?

The first eligible match is saved. Later matches for that profile are ignored, and matchedKeyword keeps the keyword from the first saved match.

Can I use several keywords in one run?

Yes. Add one or more search terms to keywords. The Actor searches each submitted value and saves eligible profile leads.

What happens if I leave Maximum leads empty?

The Actor returns all available results until the source is exhausted.

Why are some output fields missing?

Some profile details are not public. The Actor leaves unavailable optional values empty or omits them instead of making them up.

Does it collect Facebook Pages or private profiles?

No. This Actor is for public personal profiles. Private, restricted, and other non-person Facebook surfaces are outside its scope.

Can I read the leads through an API?

Yes. The output links to the default dataset, which you can read through the Apify API or export from Apify Console.

📝 Changelog

v0.0 (02-09-2026)

  • Initial release.

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

Made with ❤️ by Maxime Dupré