Facebook Page Details Scraper

Extract public Facebook Page details, contacts, engagement metrics, profile images, and lead-ready metadata from Page URLs or handles.

Data fields

FieldTypeDescription
inputstringValue exported as input.
urlstringValue exported as url.
handlestring | nullValue exported as handle.
pageIdstring | nullValue exported as pageId.
namestring | nullValue exported as name.
titlestring | nullValue exported as title.
descriptionstring | nullValue exported as description.
biostring | nullValue exported as bio.

Input preview

pageUrlsFacebook Page URLs or handles
startUrlsStart URLs
maxItemsMaximum Pages
proxyConfigurationProxy configuration

API and agents

This actor can be run through Apify API, datasets, webhooks, schedules, and the official Apify MCP server.

Ready-to-run examples

Open a saved Apify example, adjust the input, and run the actor in your own Apify account.

View all examples

How this actor works

See example inputs, outputs, API usage, and practical limits before running this actor on Apify.

Open Apify page

Extract public Facebook Page details, contacts, engagement metrics, profile images, and lead-ready metadata from Page URLs or handles.

Facebook Page Details Scraper turns a list of public Pages into one normalized record per Page. Use it for recurring lead generation, CRM enrichment, market research, competitor monitoring, and automated social intelligence workflows.

At a glance

  • Input: Facebook Page URLs or handles such as NASA or https://www.facebook.com/Meta.
  • Output: One detail record per public Page.
  • Key data: Page ID, name, description, public contact data, likes, followers, talking-about counts, image, rating, categories, and social links.
  • Exports: JSON, CSV, Excel, XML, RSS, API, webhooks, and MCP through Apify datasets.
  • Access: Public logged-out Page information only; no Facebook credentials are requested.

Example input

{
  "pageUrls": [
    "https://www.facebook.com/NASA",
    "Meta"
  ],
  "maxItems": 2
}

Example output

{
  "input": "https://www.facebook.com/NASA",
  "url": "https://www.facebook.com/NASA/",
  "handle": "NASA",
  "pageId": "100044561550831",
  "name": "NASA - National Aeronautics and Space Administration",
  "title": "NASA - National Aeronautics and Space Administration",
  "description": "Explore the universe and discover our home planet.",
  "bio": null,
  "categories": [],
  "website": "https://www.nasa.gov/",
  "email": null,
  "phone": null,
  "address": null,
  "profileImageUrl": "https://scontent...fbcdn.net/...png",
  "likesCount": 28721135,
  "likesDisplay": "28,721,135 likes",
  "followersCount": null,
  "followersDisplay": null,
  "talkingAboutCount": 155816,
  "talkingAboutDisplay": "155,816 talking about this",
  "isVerified": null,
  "rating": null,
  "ratingCount": null,
  "socialLinks": [],
  "scrapedAt": "2026-09-06T00:00:00.000Z",
  "sourceStatus": "complete"
}

Values are returned only when they are visible on the public Page. Nullable fields are not inferred from unrelated viewer or proxy data.

Who is it for?

This Actor is designed for sales and lead-generation teams, CRM operators, market researchers, social-media analysts, agencies, and developers who need repeatable public Facebook Page records.

What you can do

  • Generate leads: collect public websites, email addresses, phone numbers, and addresses shown on business Pages.
  • Enrich CRM records: attach canonical Page URLs, Page IDs, names, descriptions, categories, and profile images.
  • Monitor competitors: schedule recurring runs and compare public descriptions and engagement counts over time.
  • Research markets: build structured Page datasets for brands, organizations, venues, nonprofits, and local businesses.
  • Power automations: connect datasets to Google Sheets, n8n, Make, Zapier, webhooks, or your own application.
  • Use with AI agents: run the Actor through Apify MCP and analyze normalized Page records in an agent workflow.

Input settings

Setting JSON key Description
Facebook Pages pageUrls Public Page URLs or handles. Accepts up to 500 entries.
Start URLs startUrls Alternative Apify request-list input for full public Page URLs.
Maximum Pages maxItems Global output limit from 1 to 500; default is 10.
Proxy proxyConfiguration Optional Apify Proxy configuration for public Pages unavailable from direct access.

Duplicate normalized Page URLs are processed once. Invalid hosts and URLs without a Page path are rejected before any network request.

Input recipes

Collect local-business leads

{
  "pageUrls": [
    "https://www.facebook.com/example-business-one",
    "https://www.facebook.com/example-business-two"
  ],
  "maxItems": 10
}

Monitor known Pages

{
  "startUrls": [
    { "url": "https://www.facebook.com/NASA" },
    { "url": "https://www.facebook.com/Meta" }
  ],
  "maxItems": 2
}

Schedule the second recipe weekly or monthly and compare records by pageId or url.

API usage

JavaScript

import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/facebook-page-details-scraper').call({
  pageUrls: ['NASA', 'Meta'],
  maxItems: 2,
});
console.log(run.defaultDatasetId);

Python

from apify_client import ApifyClient

client = ApifyClient('YOUR_APIFY_TOKEN')
run = client.actor('fetch_cat/facebook-page-details-scraper').call(run_input={
    'pageUrls': ['NASA', 'Meta'],
    'maxItems': 2,
})
print(run['defaultDatasetId'])

cURL

curl -X POST "https://api.apify.com/v2/acts/fetch_cat~facebook-page-details-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"pageUrls":["NASA","Meta"],"maxItems":2}'

MCP and AI agents

Connect an AI client to the focused Apify MCP endpoint:

https://mcp.apify.com?tools=fetch_cat/facebook-page-details-scraper

Add it with the Claude CLI:

claude mcp add apify https://mcp.apify.com?tools=fetch_cat/facebook-page-details-scraper

Or add this server configuration to an MCP-compatible client:

{
  "mcpServers": {
    "apify": {
      "url": "https://mcp.apify.com?tools=fetch_cat/facebook-page-details-scraper"
    }
  }
}

Example prompt: “Extract public contact and engagement details for these Facebook Pages and return a lead table.”

Tips

  • Start with two or three Page URLs before scaling a large list.
  • Use canonical public Page URLs when available.
  • Schedule recurring inputs to track changes over time.
  • Join records using pageId when present and fall back to canonical url.
  • Treat nullable contact fields as “not publicly visible,” not as evidence that the business has no contact method.

Limits

  • Only public Facebook Pages visible without logging in are supported.
  • Private profiles, private groups, comments, reactions, and login-only details are out of scope.
  • Age-gated, region-restricted, removed, or temporarily challenged Pages may not return a record.
  • Facebook can vary public fields by Page and can change its public presentation.
  • Contact details and ratings are returned only when explicitly present in public Page information.

Support

Open an issue from the Actor page if a public Page fails or a field looks wrong. Include the run URL or ID, input JSON, one example public Page URL, expected result, and actual dataset row.

Privacy and responsible use

Use this Actor only for lawful public-data workflows. Respect applicable terms, privacy rules, and data-protection requirements. Avoid collecting or retaining unnecessary personal or sensitive information.

Common questions

Questions and answers reused from the canonical actor README.

Does this require Facebook cookies, login, or an access token?

No. Do not provide Facebook credentials. The Actor works with information available on public Pages.

Can I export Facebook Page leads to CSV or Excel?

Yes. Open the run dataset and select JSON, CSV, Excel, XML, RSS, or another Apify export format.

Can I run it through an API or MCP?

Yes. Use the Apify REST API, JavaScript/Python clients, webhooks, schedules, or the focused MCP endpoint above.

Why are some fields null?

Facebook does not expose every field on every logged-out Page. The Actor keeps unavailable values null instead of guessing.

Why did a URL return no record?

The URL may not identify a public Page, or the Page may be removed, private, restricted, or unavailable to logged-out visitors.