Facebook Comments Scraper avatar

Facebook Comments Scraper

Pricing

Pay per event

Go to Apify Store
Facebook Comments Scraper

Facebook Comments Scraper

Collect public Facebook post comments at scale. Export author name, profile link, comment text, timestamp, reaction counts, reply threads, verified badges, attached media, mentions and language. Pass any post URL and pull thousands of comments into clean JSON, CSV or Excel files.

Pricing

Pay per event

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

ParseForge Banner

💬 Facebook Comments Scraper

🚀 Pull every public comment from any Facebook post. Export threaded replies, author profiles, reaction counts, timestamps, mentions, attachments and language detection into clean JSON, CSV or Excel.

🕒 Last updated: 2026-04-24 · 📊 22 fields per comment · 💬 Threaded replies · 🌍 Language auto-detect · 🔗 Author profile links

The Facebook Comments Scraper visits any public Facebook post and returns a full tree of comments, replies, reactions and author metadata. Each record carries the comment text, author name, author profile URL and profile picture, timestamp, reaction totals broken down by type, reply threads, attachment type and URL (sticker, GIF, image, video), verified badge, edited flag, mentions tagged in the comment, detected language and the parent comment id for replies.

The scraper paginates through comment sections the same way the native UI does, so popular posts with tens of thousands of comments export end to end. You pass one or more post URLs, set a cap per post, and the dataset lands ready for downstream sentiment analysis, audience research, review mining or lead scoring.

🎯 Target Audience💡 Primary Use Cases
Social media analysts, brand monitoring teams, marketing researchers, product managers, customer support leads, agenciesSentiment tracking, audience feedback mining, crisis detection, competitor monitoring, influencer identification, UGC analysis

📋 What the Facebook Comments Scraper does

Five common workflows in a single run:

  • 💬 Full comment thread export. Every top-level comment plus nested replies, with parent pointers that rebuild the tree on your side.
  • 👥 Author metadata. Name, profile URL, profile picture, and a verified-badge flag where Facebook exposes it.
  • ❤️ Reaction intelligence. Total reaction count plus a breakdown across love, laugh, wow, sad, angry and like.
  • 🧵 Attachments and mentions. Sticker, GIF, image and video attachments with source URLs, plus a mentions array with @-tagged profile names and ids.
  • 🌐 Language detection. Each comment tagged with its detected two-letter language code for multilingual filtering.

💡 Why it matters: Facebook's native export tools strip almost every field you actually need for analysis. Rebuilding a parser yourself means handling GraphQL pagination, reaction breakdown decoding, and reply-depth tracking by hand. This Actor gives you the full comment graph, typed and cleaned, on every run.


⚙️ Input

InputTypeDefaultBehavior
startUrlsarray of URLsrequiredOne or more Facebook post URLs. Accepts the full desktop URL or the /posts/{id} form.
maxItemsinteger10Cap total comments returned across all posts. Free plan tops out at 10.
maxCommentsPerPostinteger50Per-post cap applied before the global maxItems.
includeRepliesbooleantrueExpand reply threads under each top-level comment.
proxyConfigurationobjectresidentialOverride the proxy group if you need a specific country.

📊 Output

Every comment is returned as a flat JSON record with 22 fields.

🧾 Key fields

FieldTypeDescription
commentIdstringStable Facebook comment id, usable for dedup and linking.
textstringThe comment body as plain text.
authorNamestringDisplay name of the commenter.
authorUrlstringFull profile URL.
authorPicUrlstringProfile picture URL.
timestampISO 8601When the comment was posted.
reactionsCountintegerTotal reactions across all types.
reactionBreakdownobjectCounts for love, laugh, wow, sad, angry, like.
repliesCountintegerNumber of replies under this comment.
repliesarrayFlattened reply tree when includeReplies is true.
attachmentTypestringSticker, photo, video, gif, link or null.
attachmentUrlstringDirect URL to the attached media.
mentionsarrayTagged profiles, with name and id.
languagestringTwo-letter ISO code like en, es, pt.
isAuthorVerifiedbooleanBlue-badge flag when Facebook exposes it.
isEditedbooleanTrue when the comment has an edit history entry.
parentCommentIdstringFor replies, the id of the comment they reply to.
postIdstringThe parent post id.
postUrlstringCanonical URL of the original post.
scrapedAtISO 8601Run timestamp.

📦 Sample record

{
"commentId": "1201234567890",
"text": "Love this campaign, the breathing exercises are great.",
"authorName": "Baron Walker",
"authorUrl": "https://www.facebook.com/profile.php?id=100002347523434",
"authorPicUrl": "https://scontent.fqfd1-1.fna.fbcdn.net/v/t1.6435-1/p200x200/...",
"timestamp": "2026-04-12T14:22:03.000Z",
"reactionsCount": 42,
"reactionBreakdown": {"love": 28, "laugh": 0, "wow": 4, "sad": 0, "angry": 0, "like": 10},
"repliesCount": 8,
"replies": [],
"attachmentType": null,
"attachmentUrl": null,
"mentions": [{"name": "Alperen", "id": "100055234090912"}],
"language": "en",
"isAuthorVerified": false,
"isEdited": false,
"parentCommentId": null,
"postId": "1393461115481927",
"postUrl": "https://www.facebook.com/nike/posts/1393461115481927",
"scrapedAt": "2026-04-24T12:00:00.000Z"
}

✨ Why choose this Actor

  • Complete fields. 22 columns covering author identity, reaction breakdown, attachment type, mentions and threading.
  • Real threading. Reply trees preserved with parent pointers, not flattened into one stream.
  • Language tagging. Native auto-detection saves you a separate NLP pass.
  • No tokens, no auth. Pass a post URL and a cap, the Actor handles session setup.
  • Ready for BI tools. Output opens directly in Sheets, Looker, BigQuery or Tableau.

🚀 How to use

  1. Copy a Facebook post URL from your browser.
  2. Paste it into the startUrls field.
  3. Set maxItems to your budget, and toggle includeReplies if you want nested threads.
  4. Run the Actor and download JSON, CSV or Excel from the dataset tab.

🎯 Business Use Cases

  • 📊 Social Media Analysts - Track sentiment shifts, reaction breakdowns, and reply spikes across brand posts to flag PR risks before they trend
  • 💼 Marketing Agencies - Pull commenter profiles, mentions, and verified-badge signals to build influencer outreach lists from real engagement data
  • 🔬 Product Managers - Mine product launch posts for praise, complaints, and feature requests clustered by reaction volume and language
  • 🛡️ Brand Safety Teams - Monitor coordinated activity, repeated language, and reaction patterns on owned pages to detect harassment or coordinated campaigns

🔌 Automating Facebook Comments Scraper

  • Schedule the Actor every hour, day or week from the Apify console.
  • Send results to Slack, Google Sheets, BigQuery, Webflow or your own webhook.
  • Trigger runs from n8n, Make or Zapier through the official Apify integrations.
  • Call the Apify REST API directly from your backend to fire runs on demand.

🌟 Beyond business use cases

Data like this powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.

🎓 Research and academia

  • Comment corpora for sociology, media studies, and linguistics
  • Longitudinal sentiment studies across snapshots over time
  • Reproducible research with cited, versioned dataset pulls
  • Classroom exercises on NLP, ethics, and digital methods

🎨 Personal and creative

  • Side projects, portfolio demos, and indie app launches
  • Audience analytics dashboards for creators and podcasters
  • Content research for bloggers and YouTubers
  • Fan communities archiving threads before pages disappear

🤝 Non-profit and civic

  • Transparency reporting on public figure and campaign pages
  • Investigative journalism backed by public comment evidence
  • Civic watchdog projects tracking coordinated behavior
  • Community accountability databases with verifiable sources

🧪 Experimentation

  • Train sentiment, toxicity, and moderation classifiers
  • Validate product hypotheses against real audience reactions
  • Prototype agent pipelines that read public discourse
  • Test dashboard concepts with live engagement data

🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:


❓ Frequently Asked Questions

Does this work on private or group posts? No. Only public Facebook posts are supported. The Actor does not sign in and cannot access content gated by login or group membership.

How many comments can I pull from a single post? Paid plans support pulling every public comment a post exposes, up to 1,000,000 per run. Free plan caps at 10 comments per run for preview purposes.

Do I need a Facebook account or cookies? No. The Actor runs anonymously against public endpoints.

Can I filter by language or keyword? The Actor returns a language field so you can filter downstream. Keyword search is best run on the output JSON since it preserves original casing and mentions.

How fresh is the data? Every run hits Facebook live, so the dataset reflects whatever comments and reactions exist at the moment the run finishes.

Does the output include reactions by type? Yes. reactionBreakdown has counts for love, laugh, wow, sad, angry and like.

What happens to emoji and non-Latin scripts? They are preserved as-is in the text field. No transliteration or stripping.

Can I rebuild the reply tree? Yes. Every reply carries parentCommentId, so a quick groupBy(parentCommentId) reconstructs the thread structure.


🔌 Integrate with any app

The Actor plugs into Make, Zapier, n8n, Slack, LangChain, and 100+ other platforms through Apify's integration library. You can also call the Apify REST API directly from your backend.


ActorWhat it does
Facebook Groups ScraperPulls member count, privacy, rules and admin info from public Facebook groups.
Facebook Marketplace ScraperExports listings, prices and sellers from Facebook Marketplace by city and query.
Instagram ScraperPosts, reels and profile data from public Instagram accounts.
TikTok Comments ScraperSame depth of comment extraction for TikTok videos.
YouTube Transcript ScraperTurn YouTube videos into searchable transcripts and metadata.

💡 Tips

  • Start with maxItems=10 on a single URL to confirm field coverage before scaling.
  • Posts with millions of comments will paginate for a while; run during off-hours and keep maxCommentsPerPost set so one post doesn't exhaust your budget.
  • Save the JSON output alongside the postUrl and scrapedAt fields so you can diff reaction counts over time.

🆘 Support

Open a ticket at tally.so/r/BzdKgA and include the run id. We reply same day on weekdays.

New to Apify? Create a free account with $5 credit and your first run is on the house.


⚠️ Disclaimer

This Actor collects only publicly accessible data. You are responsible for complying with Facebook's Terms of Service, local data-protection laws, and any applicable research or journalism ethics. We recommend reviewing your use case against GDPR, CCPA and Facebook's Platform Policy before archiving or redistributing personal data.