Facebook Profile Scraper — No Login Required avatar

Facebook Profile Scraper — No Login Required

Pricing

from $2.00 / 1,000 post extracteds

Go to Apify Store
Facebook Profile Scraper — No Login Required

Facebook Profile Scraper — No Login Required

Extract posts, reactions, and images from any public Facebook profile. No login or cookies needed. Supports date filtering, profile info extraction, and Smart Scrape dedup.

Pricing

from $2.00 / 1,000 post extracteds

Rating

0.0

(0)

Developer

Crowd Pull

Crowd Pull

Maintained by Community

Actor stats

1

Bookmarked

236

Total users

36

Monthly active users

0.55 hours

Issues response

4 days ago

Last modified

Share

Extract posts and profile info from any public Facebook profile — no login or cookies required.

No browser automation — just fast, lightweight HTTP requests for reliable extraction.

Features

  • No login required — extracts posts anonymously from public profiles
  • Smart Scrape (dedup) — skip posts already scraped in previous runs, saving up to 75% on recurring scrapes
  • Profile info extraction — public name, category, likes/followers/talking-about metrics, services, and contact fields when Facebook exposes them
  • Full post data — text, author, permalink, timestamp, reactions, comments, shares, images, videos, hashtags
  • Date filtering — extract posts newer than a specific date (ISO or relative: 7d, 30d, 6m)
  • Multi-profile support — process multiple profiles in a single run
  • Pagination — follows Facebook's available timeline cursors until the requested limit or exposed feed ends
  • Low cost — runs on 256MB memory, no browser overhead

Smart Scrape: How It Saves You Money

Enable Smart Scrape to skip posts you've already extracted. The scraper maintains a persistent cache per profile that survives across runs indefinitely.

Without Smart ScrapeWith Smart Scrape
Run 1 (500 posts)$1.76$1.76
Run 2 (125 new)$1.76$0.8225
Run 3 (125 new)$1.76$0.8225
Run 4 (125 new)$1.76$0.8225
Monthly total$7.04$4.2275
Unique posts875 (+ 1,125 duplicate rows)875 (zero duplicate rows)
Cost per unique post$0.0080$0.0048

This example uses the currently applied Free-tier post price ($0.0035), $0.001 cache checks, the $0.005 profile-info event, and the $0.005 run-start charge. It assumes includeProfileInfo: true. Higher Apify tiers have lower post prices; verify the Store pricing panel for current rates.

Refresh Window

Set refreshWindowDays to re-check recent posts for updated comment/reaction counts. For example, refreshWindowDays: 7 re-scrapes posts from the last 7 days even if cached, so you always get fresh engagement data on recent content.

What you get

Profile info (when includeProfileInfo is enabled)

FieldDescription
nameProfile display name
profileUrlDirect link to the profile
servicesArray of listed services
contactPhonePhone number (if public)
contactEmailEmail address (if public)
followersCountNumber of followers, or null when Facebook does not expose it
likesCountNumber of page/profile likes, or null
talkingAboutCountCurrent “talking about this” metric, or null
categoryPublic category, when present
addressPublic address, when present
websitePublic website, when present
entityTypeFacebook entity type (User, Page, or Unknown)
typeAlways "profileInfo"

Posts

FieldDescription
postIdUnique post identifier
postUrlDirect permalink to the post
profileUrlLink to the source profile
profileNameProfile display name
authorNameAuthor's display name
textFull post text content
timestampISO 8601 timestamp
imageUrlsArray of image URLs attached to the post
videoUrlsArray of video URLs attached to the post
reactionCountNumber of reactions, or null when unavailable
commentCountNumber of comments, or null when unavailable
shareCountNumber of shares, or null when unavailable
hashtagsArray of hashtags extracted from the post text
scrapedAtISO 8601 timestamp of when the post was scraped

How it works

  1. Fetches the profile page anonymously — no login, no cookies, no browser
  2. Extracts CSRF tokens and numeric user ID from the page HTML
  3. Queries Facebook's internal GraphQL API for timeline posts
  4. Parses public profile metadata from server-rendered profile/About data and structured GraphQL fields
  5. Checks each post against the dedup cache (if Smart Scrape is enabled)
  6. Paginates via Relay cursors until maxPosts is reached or Facebook stops exposing cursors
  7. Saves updated cache for next run

Input examples

Basic extraction

{
"startUrls": [
{ "url": "https://www.facebook.com/profile.php?id=61580944632584" }
],
"maxPosts": 20
}

With profile info and posts

{
"startUrls": [
{ "url": "https://www.facebook.com/zuck" }
],
"maxPosts": 50,
"includeProfileInfo": true,
"onlyPostsNewerThan": "30d"
}

Smart Scrape (incremental monitoring)

{
"startUrls": [
{ "url": "https://www.facebook.com/zuck" },
{ "url": "https://www.facebook.com/profile.php?id=61580944632584" }
],
"maxPosts": 100,
"enableDedup": true,
"refreshWindowDays": 7
}

Output example

Profile info

{
"name": "Example Public Page",
"profileUrl": "https://www.facebook.com/profile.php?id=123456789",
"services": [],
"contactPhone": null,
"contactEmail": null,
"followersCount": null,
"likesCount": null,
"talkingAboutCount": null,
"category": null,
"entityType": "Page",
"type": "profileInfo"
}

Post

{
"postId": "1084920485123456",
"postUrl": "https://www.facebook.com/4/posts/1084920485123456/",
"profileUrl": "https://www.facebook.com/profile.php?id=4",
"profileName": "Mark Zuckerberg",
"authorName": "Mark Zuckerberg",
"text": "Excited to share what we've been working on. More details coming soon.",
"timestamp": "2026-03-01T14:30:00.000Z",
"imageUrls": ["https://scontent.fudi1-1.fna.fbcdn.net/v/..."],
"videoUrls": [],
"reactionCount": 42000,
"commentCount": 8500,
"shareCount": 1200,
"hashtags": [],
"scrapedAt": "2026-03-06T18:00:00.000Z"
}

Other CrowdPull Facebook scrapers

Cost estimate

This Actor uses no browser — just lightweight HTTP requests.

EventCost
Actor start$0.005 (one-time per run)
Profile scraped$0.005/profile
Post extracted$0.0035/post on Free; $0.003/$0.00225/$0.002/$0.0015/$0.001 on Bronze through Diamond
Cache check (Smart Scrape skip)$0.001/post

Volume discounts available at higher tiers.

Our scrapers are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our scrapers, when used for ethical purposes by Apify users, are safe. However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

Limitations

  • Only works with public profiles (private profiles return 0 posts)
  • Unavailable profile and engagement metrics are returned as null, not a misleading zero or empty string
  • Facebook may change internal APIs — report issues if extraction stops
  • Facebook rate limits apply; residential proxies recommended
  • Profile info fields like services depend on what the user has listed publicly