Facebook Comments Scraper
Comments on public posts, videos and reels, replies included
What it does
Drop in links to public Facebook posts, /videos/ pages, /watch/ links or reels and every comment returns as a row: the text, author name and profile link, exact time, total reactions with the split by type, reply count, and attachment links for images, stickers and GIFs. Replies become their own rows with a parent comment id when you switch them on. Each row names the post, the Page that published it and its comment total. Facebook pages comments in tens for a logged out visitor, and photo and group posts usually demand a login.
Built in
- ✓ Post, video, watch, reel and m.facebook links accepted
- ✓ Replies as their own rows with parent_comment_id
- ✓ Reaction split for Like, Love, Haha, Wow, Sad, Angry
- ✓ Four orders, one of them Facebook's filtered comments
- ✓ Page and profile links are refused, posts only
Guides & tutorials
Benchmark LinkedIn Post Engagement Across Company Pages
Compare reactions and comments per post across LinkedIn company pages, scaled by follower count, with the LinkedIn Company Posts Scraper. No login.
Export a Creator's Instagram Reels With Play Counts to a Spreadsheet
Export one creator's reels with plays, likes, comments, length and audio to a CSV, then compute median plays to vet them, with Instagram Reel Scraper.
Export a YouTube Video's Comments and Replies to CSV
Pull a YouTube video's comments and their replies into one CSV with YouTube Comments Scraper, each thread rebuilt from parent_comment_id.
Related scrapers
Common questions
What does a comment row hold? +
comment_id and comment_url, text, author_name, author_id, author_url with a vanity flag, author_picture_url, created_at, reactions_count and the reactions breakdown, replies_count, depth, is_reply, parent_comment_id and attachment_urls, plus post_id, post_url, post_owner_name, post_owner_id and post_comments_total.
Do I get the reply threads? +
Turn on replies and each reply becomes its own row, billed like a comment and linked to its parent through parent_comment_id, with replies to replies arriving at depth 2. The cap per comment defaults to 20, and replies are read ten per request.
How deep does it go on a busy post? +
Deep. On a post holding 3,215 comments and replies, all 2,725 top level comments were read with no login. The run summary lists, per post, how many comments Facebook counts next to how many were delivered, so the gap is visible rather than hidden.
What is charged, and what is not? +
$1.26 per 1,000 comments on Gold and above, $2.25 per 1,000 on the free plan, plus $0.003 for each run start, which applies even to a run that delivers nothing. Links that are private, removed or behind a login get a free error row stating the reason, and two links to one post give one set of rows.
Which links will not work? +
A Page or profile link is not a post and comes back as a free error row asking for a post link. Photo posts and group posts usually ask a logged out visitor to sign in, so they are better avoided. Share links and m.facebook.com links are fine.
Try it on Apify.
Pay only for results delivered. No credit card required to sign up.