Facebook Posts Scraper - Pages & Groups, No Login
Pricing
from $2.00 / 1,000 posts
Facebook Posts Scraper - Pages & Groups, No Login
Scrape posts from Facebook pages, profiles AND groups without cookies or a Facebook account. Text, timestamps, reactions, comment and share counts, media. Filter by date range at no extra cost, and get a per-target report of whether the range was actually covered.
Pricing
from $2.00 / 1,000 posts
Rating
0.0
(0)
Developer
ApifyActors
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
2 days ago
Last modified
Categories
Share
Facebook Posts Scraper — pages, profiles and groups, without a login
Scrape public Facebook posts without an account, without cookies, and without asking your users to hand over a session. Point it at a page, a profile or a group, set a date range if you want one, and get clean rows out.
Most Facebook scrapers do one of two things: they ask you to paste your own c_user/xs
session cookies — which gets accounts checkpointed — or they quietly return whatever the
logged-out page happens to show, which is close to nothing. This one does neither.
What it does that the others don't
- Groups, not just pages. Public group feeds are read with the same engine as pages. Most scrapers at this price do pages only, or sell groups as a separate product.
- Date filtering at no extra charge. Give it
onlyPostsNewerThan/onlyPostsOlderThanand pagination stops as soon as the feed passes your window. Other actors bill a surcharge per post for the same filter. - It tells you whether it actually covered your range. Every run writes a
COVERAGErecord to the key-value store, with one entry per target saying whether the date range was proven exhausted or the run merely stopped. A post count never proves coverage, and an actor that returns 40 posts when 300 existed, without saying so, has given you a silently wrong dataset. This one says so. - Failed targets cost nothing. A private group, a dead URL or a rate-limited target comes
back as an
{"type": "error"}row and is not billed.
Input
| Field | What it does |
|---|---|
startUrls | Page, profile or group URLs. profile.php?id=…, /groups/<id> and /groups/<name> all work |
resultsLimit | Max posts per target (default 30) |
onlyPostsNewerThan | ISO date, e.g. 2026-01-01. Drops older posts and stops paging early |
onlyPostsOlderThan | ISO date upper bound, for a closed range |
windowedFeed | Deep historical pull — ask for the date range directly instead of paging back from the newest post. Use it when you want an old window rather than recent posts |
countryCode | Country to browse from (default US) |
Minimal run:
{"startUrls": [{ "url": "https://www.facebook.com/nasa" }],"resultsLimit": 100,"onlyPostsNewerThan": "2026-09-01"}
Output
One row per post:
{"post_url": "https://www.facebook.com/nasa/posts/pfbid02…","post_id": "284219939974539","page_name": "NASA","author_name": "NASA","page_url": "https://www.facebook.com/nasa","publish_date": "2026-09-22T08:46:51Z","post_text": "Our Webb telescope just returned its deepest look yet at…","likes": 16482,"comments": 431,"shares": 207,"views": "","is_video": "no","media_thumbnail": "https://scontent.xx.fbcdn.net/…","audio_url": "","scraped_date": "2026-09-23T00:28:13Z"}
audio_url carries the direct media URL on video posts, which is what you want if you are
feeding them to a transcription model. views is populated where Facebook exposes it, which
is mainly video.
Keyword search
Give it keywords and only matching posts come back. Two things worth knowing, because they
decide what it costs:
Facebook's page timeline takes no search term. There is no server-side search on a page feed
for anyone — so matching keywords means reading the feed and testing each post. scanLimit
sets how deep to read; resultsLimit then caps how many matches you get back.
Matching is whole-word by default, and deliberately asymmetric: a term still matches when a language glues a prefix onto it, but not when it merely sits inside a longer, unrelated word. That matters in Arabic and Hebrew, where prefix particles are written joined to the stem and a naive substring match silently over-collects.
Pricing
$2.00 per 1,000 posts, plus Apify's standard $0.00005 actor start. No surcharge for date filtering, no surcharge for groups, and no charge for targets that fail.
Keyword runs also cost $0.50 per 1,000 posts scanned. If you scan 1,000 posts and 20 match, you pay $0.50 for the scan and $0.04 for the matches. This is billed separately because the scan is the actual work — the reading happens whether or not a post matches — and pricing it into the match rate would make a narrow keyword far more expensive than a broad one for no reason. Runs without keywords never touch this charge.
For comparison, at the time of writing the official Apify Facebook posts scraper charges $4.00 per 1,000 posts plus $1.00 per 1,000 for the start and another $1.00 per 1,000 to use the date filter — and does not read groups at all.
Notes and limits
- Public content only. A private group needs an account; the actor reports that clearly instead of returning an empty dataset.
- Timestamps and date bounds. A handful of posts come through with no timestamp. When you set any date bound they are excluded, because an undated post cannot be shown to fall inside your window. Without a date bound they are returned.
- Depth. Recent posts page back freely. For windows deep in a page's history, turn on
windowedFeed. - Pacing. Facebook rate-limits by IP and by target. The actor paces itself and retries from a fresh address; very large jobs are better split across several runs than forced into one.
FAQ
Do I need a Facebook account or cookies? No. That is the entire point of this actor.
Will this get my Facebook account banned? It never touches your account, because it never logs in.
Can it scrape comments? Use the companion Facebook Comments Scraper, which pulls full threads including replies.
Can it scrape a private group I'm a member of? No. Membership lives in your session, and this actor deliberately has no session.
Is scraping public Facebook data legal? Scraping publicly available data is generally lawful in most jurisdictions, but you are responsible for your own use — particularly for personal data under the GDPR and for Facebook's own terms. Do not use this to build profiles of private individuals.