Facebook Pages & Posts Scraper avatar

Facebook Pages & Posts Scraper

Pricing

from $4.00 / 1,000 results

Go to Apify Store
Facebook Pages & Posts Scraper

Facebook Pages & Posts Scraper

Extract public Facebook pages and posts with profiles, followers, business contacts, media, reactions and comment/share counts. Batch up to 25 pages, export JSON/CSV/Excel, or collect page details only. No login required.

Pricing

from $4.00 / 1,000 results

Rating

0.0

(0)

Developer

Newbs

Newbs

Maintained by Community

Actor stats

2

Bookmarked

9

Total users

3

Monthly active users

10 days ago

Last modified

Categories

Share

Extract public Facebook page profiles and posts into structured data for brand monitoring, content research and business analysis. Get page details, follower counts, public contacts, post text, timestamps, media links and engagement metrics. Export your results as JSON, CSV or Excel using Apify.

No Facebook login or API key required. Scrape up to 25 pages per run and up to 50 public feed posts per page, or use the faster profile-only mode.

Quick start

  1. Enter a Facebook page handle or URL in Facebook page handle or URL.
  2. Choose the maximum number of posts. Set it to 0 for page details only.
  3. Run the Actor and open the dataset to view or export your data.
  4. Check the Run summary output for any partial or unavailable pages.
{
"socialName": "NASA",
"numberOfPosts": 5
}

Pricing: $4 per 1,000 results + platform usage

Pricing transition: The result-based rate below applies when Apify's Pricing tab shows it as active. If a notice period is shown, the existing rate remains in force until its effective date.

Each result costs $0.004. There is no additional Actor startup fee.

RequestWhat counts as a resultResult fee example
PostsOne extracted post saved to the dataset5 posts = $0.02
Page details only (numberOfPosts: 0)One successfully extracted page profile100 profiles = $0.40
Failed or unavailable extractionNo result fee0 results = $0 in result fees

Apify platform usage is paid separately by the user, including compute, storage, data transfer and any proxy traffic. These usage charges can apply even when Facebook exposes no results. Your total is the result fee plus platform usage.

The export format does not change billing: a page row containing five nested posts counts as five results, just like five flat post rows. Page metadata is included with post extraction without an extra profile fee. Partial runs charge only for the usable posts saved. Unknown fields remain empty; diagnostics do not incur a result fee.

Use Apify's Maximum cost per run to cap event charges. The Actor stops delivering additional results when the result allowance is exhausted and reports skipped pages in OUTPUT. Platform usage is separate; work already in progress can still consume resources.

What you can extract

DataAvailable fields
Page identityName, canonical URL, page/profile IDs, verification status
AudienceFollowers, following, public page likes when available; abbreviated counts marked approximate
ProfileCategory, description, profile image, cover image
Business detailsListed websites, public email, phone, address, opening-status text, price range and business owner when exposed
Review summaryRecommendation percentage, review count and rating text when exposed
PostsPost ID/URL, available full text, UTC timestamp, author, content type, links and hashtags
EngagementTotal reactions, Like count, reaction breakdown, comment count and share count
MediaMultiple photo/video entries, thumbnails, public playback URLs, duration, dimensions and caption links when exposed
DiagnosticsComplete/partial status, warnings, timing, request counts and proxy usage

Facebook controls what anonymous visitors can see. Availability varies by page; the Actor does not invent missing values. Like count is distinct from total reactions. Video view counts are returned only when publicly exposed.

Scrape multiple pages and export posts

Use Multiple Facebook pages to process a batch. Choose One row per post for easier CSV or Excel analysis.

{
"pages": ["NASA", "https://www.facebook.com/dior/", "PublicMarketCenter"],
"numberOfPosts": 10,
"outputMode": "posts",
"maxConcurrency": 2,
"proxyMode": "auto"
}

For page details only:

{
"pages": ["NASA", "PublicMarketCenter"],
"numberOfPosts": 0
}

Input reference

FieldDefaultDescription
socialNameRequired unless pages is suppliedHandle, @handle, page URL, mobile URL, numeric profile URL, or a page's about/posts tab URL.
pages—1–25 page handles or URLs. Overrides socialName. Equivalent normalized URLs are deduplicated.
numberOfPosts5Maximum posts per page, 0–50. Zero extracts page details only.
outputModepagespages keeps nested posts. posts exports one row per post with page identifiers and followers. Profile-only requests always export page rows.
proxyModeautoTry direct HTTP, then one residential proxy session if needed. never disables recovery; always uses a proxy for Facebook requests.
proxyConfigurationResidential recoveryOptional Apify or custom proxy settings. A disabled configuration disables recovery unless custom proxy URLs are supplied.
maxConcurrency2Process 1–3 pages concurrently.
globalTimeOut12015–600 seconds per page, including recovery. Each request is limited to 15 seconds. Actor run timeout is separate.
debugArtifactsfalseSave initial HTML for troubleshooting. It may include anonymous session data and increases storage usage.

Groups and individual post URLs are not supported as page inputs.

Output formats

Pages: one dataset row per page, containing profile information, a posts array, status and diagnostics. Existing fields such as socialName, about, rating, posts, date, like, comment, share and iframeLink are retained. Post date and publishedAt use ISO UTC timestamps.

Posts: one dataset row per post, including pageId, profileId, pageName, pageUrl, followers, scrapedAt and the post fields. Pages with no posts create no flat post rows. Profile-only requests produce page rows in either mode.

The key-value store's OUTPUT record provides per-page statuses, exported post counts, result charges, spending-limit status and skipped pages in both formats.

Reliability and speed

The Actor uses lightweight HTTP requests, consistent anonymous sessions and bounded pagination. It deduplicates by post ID and uses proxy recovery only when needed. Start with 512 MB memory and leave debug artifacts off for routine runs.

In a September 16, 2026 benchmark of NASA and Dior, two five-post runs per page averaged 8.59 seconds, versus 24.50 seconds with the previous browser version: approximately 65% less run time. Measured platform usage was 37% lower, including residential proxy charges. These are sample measurements, not guaranteed performance or total-price savings. Result fees are separate.

Page statuses are success, partial, not_found, login_required, blocked or failed. Success means the requested maximum was reached, the public feed explicitly ended, or profile-only extraction completed. Mixed and partial runs may finish with a successful Actor status; check OUTPUT's partialPages, failedPages and billing.chargeLimitReached before treating a batch as complete.

Frequently asked questions

Can it scrape private pages or content behind login?

No. It extracts content available to anonymous public visitors. Facebook may apply login walls, rate limits or regional restrictions. Unavailable pages are reported clearly.

Does it download comments, reviews or follower lists?

No. It extracts public aggregate counts and post content. It does not enumerate comment text, individual reviews or follower identities.

Are contact details and opening hours always available?

No. It returns fields exposed on the page's main public response. This is not an exhaustive About-tab crawl. Opening-hours text may be a status such as “Closing Soon,” rather than a weekly timetable.

Facebook feed order may include pinned posts. Media and video playback URLs may expire. The Actor returns links; it does not download media files.

Why did I receive fewer posts than requested?

The page may have fewer public posts, or Facebook may restrict pagination. Review the page status and warnings. Proxy recovery can help when direct access is limited; proxyMode: "never" may return partial results.

How do I get help?

Open an issue on this Actor's Issues tab with your run URL, page URL, requested post count and expected result. Do not include passwords or login cookies.


Built and maintained by Newbs. This is an independent tool and is not affiliated with or endorsed by Meta or Facebook.