Facebook Page Details Scraper avatar

Facebook Page Details Scraper

Pricing

from $4.99 / 1,000 page details

Go to Apify Store
Facebook Page Details Scraper

Facebook Page Details Scraper

Scrape Facebook Page details from page links: name, followers, verified badge, category, bio, email, phone, website, address, hours, price range, rating and Instagram, X, YouTube, LinkedIn links. No login.

Pricing

from $4.99 / 1,000 page details

Rating

0.0

(0)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Facebook Page Details Scraper

Facebook Page Details Scraper turns a list of Facebook Page links into one row of Page details each: name, follower count, verified badge, category, bio, confirmed owner, email, phone, website, address with map coordinates, opening hours, price range, services, rating, and links to the Page's Instagram, X (Twitter), YouTube, LinkedIn, Pinterest, Telegram, TikTok, Threads, and Snapchat accounts.

Paste up to 500 Facebook Page links, usernames, or IDs and get flat, spreadsheet-ready rows with 40+ fields per Page, including contact details from the Page's About tab, plus a clear error row for every link that can't be read. No Facebook login, cookies, or API key.

ParseBird Facebook Suite   •  Pages, posts, groups, reviews, ads & media
Facebook User Posts Scraper
Posts from profiles and Pages
Facebook Page Video Downloader
Every video on a Page, MP4 links
Facebook Media Downloader
HD/SD links for videos, reels, photos
Facebook Public Group Posts Scraper
Group posts, reactions, photos
Facebook Group Profile Scraper
Group profiles, admins & rules
Facebook Page Reviews Scraper
Recommendations, tags, comments
Facebook Group Posts & Comments Scraper
Group posts with comments & replies
Meta | Facebook Ads Library Scraper
Ad Library ads, EU reach & payers
Facebook Reels Play Count Scraper
Exact plays for reels & videos
Facebook Group Insights Scraper
Group members, growth & activity
Facebook Marketplace Scraper
Listings, prices, sellers & cars
Facebook Page Details Scraper
You are here

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.

Use Apify Actor parsebird/facebook-page-details-scraper to get details of Facebook Pages. Example with ApifyClient (Python): client.actor("parsebird/facebook-page-details-scraper").call(run_input={"pageUrls":["https://www.facebook.com/NASA"]}). Input: pageUrls array of strings (required; facebook.com/<page name> links, including links to a Page's tabs or posts, m./web. facebook.com links, profile.php?id= links, /pages/<name>/<id> and /people/<name>/<id> links, bare usernames and numeric IDs; up to 500 per run; the same Page entered twice is saved once); showVerifiedBadge boolean (default true; false leaves isVerified null); proxyConfiguration object (optional). Output: one flat row per Page with status "public": title, name, url, inputUrl, userId, adPageId (Ads Library page ID), image, imageAlt, isVerified, confirmedOwnerLabel, description (Facebook's meta description), bio, category [string, e.g. "Page","Deli"], followersCount, followersDisplay, followingCount, likesCount, likesDisplay, talkingAboutCount, checkinsCount, isBusinessPageActive, businessHours, businessPrice, businessPriceLevel (1-4), businessServices, email, emails [string], phone, phones [string], whatsapp, website, websites [string], address, mapsUrl, latitude, longitude, rating (e.g. "98% recommend (52,488 reviews)"), ratingCount, ratingRecommendPercent, languages [string], instagram, linkedin, pinterest, telegram, twitter, youtube, tiktok, threads, snapchat (URLs or null), socialLinks [{network, username, url}], scrapedAt (ISO). Failed inputs give a row with status "error", error, errorCode (400 invalid link, 403 login wall, 404 not available, 429/503 rate limited), inputUrl, scrapedAt; error rows are not charged. API docs: https://docs.apify.com/api/client/python/ and https://docs.apify.com/api/client/js/. Token: https://console.apify.com/account/integrations.

What is Facebook Page Details Scraper?

Facebook Page Details Scraper is a Facebook Page data extraction tool that reads a Page the way a logged-out visitor sees it: the Page header, the Intro card, and the About › Contact and basic info tab. For every Page link you give it, you get the exact follower count, the verified badge, the category, the bio, the confirmed owner Facebook lists on the Intro card, every email, phone number, and website the Page lists, the address with latitude and longitude, opening hours, price range, services, the recommendation rating, and the Page's other social accounts.

It works as a Facebook Pages API alternative for Page metadata: no Facebook account, cookies, or Graph API app review is needed. It also reads public profiles of people, such as creators and public figures. To try it, open the Actor, keep the two prefilled Pages, and click Start.

What can Facebook Page Details Scraper do?

  • 📇 Collect contact details: every email, phone number, WhatsApp number, and website listed on the Page.
  • 📍 Get the location: the street address, a map link, and latitude and longitude.
  • 👥 Measure audience size: exact followers, "talking about this," check-ins ("were here"), and likes where Facebook shows them.
  • ✅ Check trust signals: verified badge, confirmed Page owner, and the "% recommend" rating with its review count.
  • 🏪 Read business info: opening hours, price range, services such as "Dine-in · Outdoor seating," and category.
  • 🔗 Find social accounts: Instagram, X (Twitter), YouTube, LinkedIn, Pinterest, Telegram, TikTok, Threads, and Snapchat links, each as its own column plus a combined socialLinks list.
  • 🧾 Batch hundreds of Pages: up to 500 links, usernames, or IDs per run. Each Page that fails gets its own error row with a reason and code.
  • ⏱️ Automate it: run on a schedule with Apify schedules, call it through the Apify API, or send results to Google Sheets, Make, Zapier, Slack, and more with integrations.
  • 📁 Export anywhere: JSON, CSV, Excel, HTML, or XML.

What data can you extract from Facebook Pages?

FieldDescription
name, title, urlPage name, Facebook's page title (often with the city), and the Page link
userId, adPageIdThe Page's profile ID and its Page ID used by the Meta Ad Library
image, imageAltProfile picture URL and its alt text
isVerifiedtrue when the Page shows Facebook's verified badge
confirmedOwnerLabelThe organisation Facebook confirms is responsible for the Page
bio, descriptionThe Page's intro text, and Facebook's meta description with counts
categoryPage type and category, e.g. ["Page", "Deli"]
followersCount, followersDisplayExact followers, e.g. 964474, and Facebook's text "964K followers"
talkingAboutCount, checkinsCount, likesCount"Talking about this," "were here," and likes (when shown)
email, emails, phone, phones, whatsappFirst and all emails and phones, and the WhatsApp number
website, websitesThe Page's main website and every listed link
address, mapsUrl, latitude, longitudeStreet address, map link, and coordinates
businessHours, businessPrice, businessPriceLevel, businessServicesOpening hours text, price range (e.g. $$ and 2), and services
rating, ratingCount, ratingRecommendPercente.g. "98% recommend (52,488 reviews)", 52488, 98
instagram, twitter, youtube, linkedin, pinterest, telegram, tiktok, threads, snapchatProfile links on other networks
socialLinksEvery social account as {network, username, url}
status, inputUrl, scrapedAtpublic, the value you entered, and the scrape time

Rows for inputs that fail have status: "error", error (the reason), errorCode, inputUrl, and scrapedAt.

How to scrape Facebook Page details

  1. Open Facebook Page Details Scraper and click Start or Try for free.
  2. In Page URLs, paste one Page link per line, such as https://www.facebook.com/NASA. Usernames like katzsdeli and numeric IDs also work.
  3. Leave Include verified badge on to get isVerified.
  4. Click Start. Each Page takes a few seconds, and Pages run in parallel.
  5. Open the Output tab. The Page overview, Contact information, Engagement, Social media links, and Business information views each show one group of fields.
  6. Export the results as JSON, CSV, Excel, HTML, or XML, or get them through the API.

Input parameters

ParameterTypeRequiredDefaultDescription
pageUrlsarray of stringsYes—Page links, usernames, or numeric IDs. Up to 500 per run
showVerifiedBadgebooleanNotrueAdd isVerified to each row. Off leaves it empty
proxyConfigurationobjectNo—Optional. The Actor picks its own network route

Which Page links work? facebook.com/<page name> links, including links to a Page's About, photos, or posts tabs, m.facebook.com and web.facebook.com links, profile.php?id= links, old /pages/<name>/<id> and /people/<name>/<id> links, bare usernames such as katzsdeli or @katzsdeli, and numeric IDs. The same Page entered in different forms is saved and charged once. Group, event, and Marketplace links aren't Pages and get an error row.

Input / Output

Example input

{
"pageUrls": [
"https://www.facebook.com/katzsdeli",
"https://www.facebook.com/NASA",
"pythonclcoding"
],
"showVerifiedBadge": true
}

Example output (a real row; the image URL is shortened)

{
"title": "Katz's Delicatessen | New York NY",
"name": "Katz's Delicatessen",
"url": "https://www.facebook.com/katzsdeli",
"inputUrl": "https://www.facebook.com/katzsdeli",
"userId": "100064806517961",
"adPageId": "89033874836",
"image": "https://scontent-iad3-1.xx.fbcdn.net/v/t39.30808-1/347587684_597250122171933_7563996541647...",
"imageAlt": "Katz's Delicatessen",
"isVerified": false,
"status": "public",
"confirmedOwnerLabel": "KATZ DELICATESSEN OF HOUSTON STREET INC",
"description": "Katz's Delicatessen, New York. 964,474 followers · 55,492 talking about this · 530,200 were here. New York City's most iconic deli.",
"bio": "New York City's most iconic deli.",
"category": ["Page", "Deli"],
"followersCount": 964474,
"followersDisplay": "964K followers",
"followingCount": 0,
"likesCount": null,
"likesDisplay": null,
"talkingAboutCount": 55492,
"checkinsCount": 530200,
"isBusinessPageActive": false,
"businessHours": "Open now",
"businessPrice": "$$",
"businessPriceLevel": 2,
"businessServices": "Dine-in · Outdoor seating · In-store pickup",
"email": "cs@katzsdelicatessen.com",
"emails": ["cs@katzsdelicatessen.com"],
"phone": "(212) 254-2246",
"phones": ["(212) 254-2246"],
"whatsapp": null,
"website": "http://katzsdelicatessen.com/",
"websites": ["http://katzsdelicatessen.com/"],
"address": "205 E Houston St, New York, NY, United States, 10002",
"mapsUrl": "https://maps.google.com/maps?q=40.72222000%2C-73.98751000%28205+E+Houston+St%2C+New+York%2C+NY%2C+United+States%2C+New+York%29&hl=en",
"latitude": 40.72222,
"longitude": -73.98751,
"rating": "98% recommend (52,488 reviews)",
"ratingCount": 52488,
"ratingRecommendPercent": 98,
"languages": [],
"instagram": "https://www.instagram.com/katzsdeli",
"linkedin": null,
"pinterest": null,
"telegram": null,
"twitter": null,
"youtube": null,
"tiktok": null,
"threads": null,
"snapchat": null,
"socialLinks": [
{ "network": "instagram", "username": "katzsdeli", "url": "https://www.instagram.com/katzsdeli" }
],
"scrapedAt": "2026-10-25T14:05:00.839Z"
}

Example error row

{
"status": "error",
"error": "This Facebook page isn't available: it may not exist, or it is restricted (for example by age or country) or only visible to logged-in users",
"errorCode": 404,
"inputUrl": "https://www.facebook.com/thisdoesnotexist12345xyz",
"scrapedAt": "2026-10-25T13:45:40.112Z"
}

Download results from the Output tab in JSON, CSV, Excel, HTML, or XML.

Python API example

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("parsebird/facebook-page-details-scraper").call(
run_input={
"pageUrls": [
"https://www.facebook.com/katzsdeli",
"https://www.facebook.com/NASA",
],
}
)
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
if row["status"] == "public":
print(row["name"], row["followersCount"], row["email"], row["phone"], row["website"])
else:
print("Failed:", row["inputUrl"], row["error"])

JavaScript API example

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('parsebird/facebook-page-details-scraper').call({
pageUrls: ['katzsdeli', 'https://www.facebook.com/pythonclcoding'],
showVerifiedBadge: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items
.filter((p) => p.status === 'public')
.forEach((p) => console.log(p.name, p.category, p.address, p.instagram, p.rating));

See the Python client docs and JavaScript client docs for more options.

Use cases

  • Lead generation: turn a list of local business Pages into emails, phone numbers, websites, and addresses.
  • Data enrichment: add follower counts, categories, and social links to a CRM or spreadsheet of brands.
  • Influencer and brand research: compare audience size, verified status, and "talking about this" across Pages.
  • Local business monitoring: track ratings, review counts, hours, and price range over time with scheduled runs.
  • Ad research: get each Page's adPageId to look up its ads in the Meta Ad Library.
  • Link checking: find removed or restricted Pages in a list. Each one gets an error row.

How it works

  1. You paste Page links, usernames, or IDs.
  2. The Actor opens each Page and its About › Contact and basic info tab as a logged-out visitor.
  3. It merges the two into one flat row, turning text such as "964,474 followers" into numbers, and saves an error row for any input it can't read.

How much does it cost to scrape Facebook Pages?

What is the price per Facebook Page?

The Actor uses pay-per-event pricing: you pay for each Page saved. Compute and proxy usage are included in the event price, so there is no separate usage bill.

EventFree planBronzeSilverGold
page-scraped$0.00699 ($6.99 / 1,000)$0.00599 ($5.99 / 1,000)$0.00549 ($5.49 / 1,000)$0.00499 ($4.99 / 1,000)

One page-scraped event is one successful Page row. Error rows are free, and a Page entered twice is charged once. The prefilled two-Page run costs about $0.014 on the Free plan, and 100 Pages cost about $0.70. Apify's free plan includes monthly platform credits you can use to try the Actor. You can also set a maximum cost per run; the Actor stops when it reaches it.

Is scraping Facebook Page data legal?

The Actor only reads Page information that Facebook shows to anyone without logging in. Scraping publicly available data is generally legal in many jurisdictions, but contact details and the names on personal profiles can be personal data protected by laws such as GDPR and CCPA. Have a legitimate reason to collect the data, respect Facebook's Terms, and check with a lawyer if you're unsure. Read more in Apify's guide: Is web scraping legal?

ActorBest for
Facebook User Posts ScraperPosts from public Facebook profiles and Pages
Facebook Page Reviews ScraperReviews and recommendations on Facebook Pages
Facebook Page Video DownloaderVideos from a Page's Videos tab with MP4 links
Meta | Facebook Ads Library ScraperAds from the Meta Ad Library with EU reach and payer data
Facebook Group Insights ScraperMember counts, growth, and activity of Facebook groups
Facebook Group Profile ScraperGroup profiles with admins and rules
Facebook Media DownloaderHD and SD links for single videos, reels, and photos
Facebook Reels Play Count ScraperExact play counts for reels and videos

FAQ

Why are email, phone, or social links empty for some Pages? The Actor returns what the Page itself lists. Many large brands, such as Coca-Cola, list only a website, while local businesses usually list a phone, email, address, and hours. Empty fields are null or [].

Why does likesCount show null? Facebook shows followers, not likes, on Pages today; in our tests no Page showed a likes figure, so likesCount was empty. It's filled only if Facebook shows likes for a Page.

Why is businessPrice shown as $$ in one run and ££ in another? Facebook draws the price range with a currency symbol based on where the visitor appears to be, so the same Page can show $$ from a US IP and ££ from elsewhere. The Actor returns Facebook's text as is. Use businessPriceLevel, the same range as a number from 1 to 4, to compare Pages.

Does it work for personal profiles? Yes, for public profiles such as creators and public figures. Their category starts with Profile instead of Page, and fields that only Pages have, like the confirmed owner, stay empty.

What do the error codes mean? 400 means the input isn't a Facebook Page link, username, or ID. 404 means Facebook says the Page isn't available: it doesn't exist, or it's restricted by age or country, or only logged-in users can see it. 403 means Facebook showed a login page instead of the Page. 429 or 503 means Facebook kept limiting requests after several retries; run those Pages again later. Error rows are free.

How exact are the follower numbers? followersCount comes from Facebook's exact count (e.g. 964474), while followersDisplay keeps Facebook's rounded text ("964K followers").

Can it search for Pages by keyword or scrape Page posts? No. It reads details from the Page links you give it. For posts, use Facebook User Posts Scraper.

Can I run it on a schedule or from my app? Yes. Use Apify schedules, call it from the API tab, or connect it to Make, Zapier, Google Sheets, or Slack through integrations.

Where can I report issues or request a field? Open the Issues tab on the Actor page with your input and run ID.