Export public Facebook Page profile data, contacts, follower and like counts, profile images, and visible public post links from Facebook Page URLs or handles.
Use Facebook Pages Scraper to build clean datasets for lead generation, brand monitoring, competitor research, social reporting, and AI workflows without Facebook cookies, logins, or app tokens.
At a glance
- Input: Facebook Page URLs or handles such as
NASA,Meta, orhttps://www.facebook.com/NASA. - Output: Page profile rows plus optional visible public post-link rows.
- Best for: Public Page directories, competitor monitoring, contact discovery, and follower or like tracking.
- Exports: Apify dataset formats including JSON, CSV, Excel, XML, HTML, RSS, API, webhooks, and MCP.
- Access model: Public logged-out data only; no private pages, comments, reactions, or login-only fields.
What can it do?
- Export Facebook Page data: collect public Page names, handles, IDs, descriptions, categories, images, and source URLs.
- Collect public contact signals: save websites, phones, emails, and addresses when Facebook exposes them to logged-out visitors.
- Track Page metrics: keep raw and parsed likes, followers, and talking-about counts for monitoring.
- Download visible post links: save public post URLs and IDs when links are visible, without claiming full post text, comments, reactions, or shares.
- Use as a Facebook Pages API workflow: run through Apify API, export CSV/Excel/JSON, schedule monitoring, or connect AI agents through Apify MCP.
Input example
{
"startUrls": [
{ "url": "https://www.facebook.com/NASA" },
{ "url": "https://www.facebook.com/Meta" }
],
"pageUrls": ["NatGeo"],
"includePosts": true,
"maxPostsPerPage": 5,
"proxyConfiguration": { "useApifyProxy": false }
}
Output example
Page profile record:
{
"recordType": "page",
"input": "https://www.facebook.com/NASA",
"url": "https://www.facebook.com/NASA",
"handle": "NASA",
"pageId": "100044561550831",
"name": "NASA - National Aeronautics and Space Administration",
"description": "Explore the universe and discover our home planet.",
"likesText": "28,636,250 likes",
"likesCount": 28636250,
"talkingAboutText": "114,817 talking about this",
"talkingAboutCount": 114817,
"profileImageUrl": "https://...",
"postUrl": null,
"scrapedAt": "2026-06-22T00:00:00.000Z"
}
Visible post-link record:
{
"recordType": "post",
"input": "https://www.facebook.com/NASA",
"url": "https://www.facebook.com/NASA",
"name": "NASA - National Aeronautics and Space Administration",
"postUrl": "https://www.facebook.com/NASA/posts/123456789",
"postId": "123456789",
"text": null,
"reactionCount": null,
"commentCount": null,
"shareCount": null,
"scrapedAt": "2026-06-22T00:00:00.000Z"
}
Common workflows
- Export Facebook Page data: Add public Page URLs or handles and get structured records for names, titles, descriptions, profile images, visible counts, and audit timestamps.
- Collect business contacts: Save public websites, phones, and emails when Facebook exposes them to logged-out visitors.
- Monitor competitors: Schedule recurring runs and compare page names, descriptions, follower counts, and visible post links over time.
- Track engagement metrics: Keep both raw text and parsed counts for likes, followers, and talking-about metrics.
- Use as an API alternative: Run through Apify Console, API, SDKs, webhooks, schedules, and the official Apify MCP server.
Data extracted
| Data group | Fields |
|---|---|
| Profile | recordType, input, url, handle, pageId, name, title, description, category |
| Contacts | website, phone, email, address |
| Engagement | likesText, likesCount, followersText, followersCount, talkingAboutText, talkingAboutCount |
| Images | profileImageUrl, coverImageUrl |
| Post links | postUrl, postId for visible public post-link records |
| Audit | scrapedAt |
Reserved post-detail fields such as text, timestampText, timestampIso, mediaUrls, reactionCount, commentCount, and shareCount are currently null or empty. They are included for output stability and future expansion, not as a promise of full post extraction.
Tips for best results
- Use Page URLs or handles: Personal profiles and groups are out of scope.
- Test small first: Run two or three Pages before scaling a large list.
- Check logged-out visibility: Use Pages that open in a browser without logging in.
- Profile-only runs: Set
maxPostsPerPageto0if you only need Page metadata. - Recurring monitoring: Schedule weekly or monthly runs and compare datasets by
urlandscrapedAt. - Proxy choice: Try datacenter proxy first; use residential only if your target pages are blocked.
Limits and caveats
- Public data only: The actor does not bypass logins, privacy settings, CAPTCHAs, age gates, regional restrictions, or other access controls.
- Logged-out markup changes: Facebook changes public HTML frequently, so fields can become unavailable.
- Nullable fields: Empty fields mean the data was not visible in the public logged-out response.
- Post links only: This version saves visible post URLs and IDs, not full post bodies, comments, reactions, shares, or media extraction.
API usage
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/facebook-pages-scraper').call({
pageUrls: ['NASA'],
includePosts: true,
maxPostsPerPage: 5
});
console.log(run.defaultDatasetId);
curl -X POST "https://api.apify.com/v2/acts/fetch_cat~facebook-pages-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"pageUrls":["NASA"],"includePosts":true,"maxPostsPerPage":5}'
MCP and AI agents
Use the official Apify MCP server for AI workflows. The default server can search and run Actors; the focused URL exposes only this Actor.
https://mcp.apify.com?tools=fetch_cat/facebook-pages-scraper
Example prompts:
- "Export public Facebook Page data for NASA and Meta."
- "Collect Facebook business page contact details for this list of Page URLs."
- "Monitor competitor Facebook Pages weekly and summarize profile changes."
Support
If a run fails, returns no data, or a field looks wrong, open an issue from the Actor page.
Please include the Apify run ID or run URL, input JSON, one example public URL, query, or input item, what you expected, and what the dataset returned. Small reproducible inputs make parsing or site-layout issues much faster to fix.