Facebook Comments Scraper
Pricing
from $0.40 / 1,000 comment scrapeds
Facebook Comments Scraper
Collect the public comments on any Facebook post: author, full text, date, the like figure Facebook displays and the reply count, one clean row each. Works on posts, photos and videos, needs no account, and tells you plainly how many comments are publicly reachable.
Pricing
from $0.40 / 1,000 comment scrapeds
Rating
0.0
(0)
Developer
Hamza
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a month ago
Last modified
Categories
Share
Give it a link to any public Facebook post and get the comments back as clean rows: who wrote each one, the full text, when it was posted, the like figure Facebook shows next to it and how many replies it has. It works on ordinary posts, photo posts, videos and permalinks, and it needs no Facebook account of any kind.
Read the honest ceiling first: Facebook lets a signed-out visitor reach roughly the first 45 comments of a post, no matter how many the post has. Everything below is built around telling you that plainly instead of quietly returning less than you expected.
What you can do with it
- Read the room on a campaign post — pull the comments on your own or a client's post and see what people actually said, not just how many reacted.
- Mine competitor posts for complaints and feature wishes that keep coming up, and turn them into product or content ideas.
- Track sentiment on a launch announcement by collecting the comments on the announcement post over several days.
- Collect quotes and testimonials people leave publicly under a brand's posts, with the author name and the date attached.
- Build a labelled text set for classification or sentiment work from real, public, dated comments.
What you get
One row per comment. Abridged real example:
{"postId": "1549668713863782","commentId": "1302275481768604","authorName": "Simon Turner","authorId": "100000017317209","authorIsOpaque": false,"text": "Is it where they make pool reflection liner paint?!","publishedAt": "2026-08-01T19:07:20.000Z","likesText": "18","replyCount": 1,"depth": 0,"attachmentCount": 0,"postDeclaredComments": 102,"availability": "OK","sourceUrl": "https://www.facebook.com/bbcnews/posts/pfbid02Ahoi9Dz...","scrapedAt": "2026-08-01T19:21:44.881Z"}
Input reference
| Field | Type | Default | What it does |
|---|---|---|---|
| Post links | list of text | one example post | The posts whose comments you want. Open a post, video or photo on Facebook and copy the link from your browser. Required. |
| Comments per post | whole number 1–50 | 30 | The most comments to collect from each post. Because of the ceiling described below, a higher number does not always mean more rows. |
| Browse from | choice | United States | The country to browse from. Some posts are shown differently depending on where the visitor is. |
| Posts at a time | whole number 1–8 | 4 | How many posts to work on simultaneously. Four is the sweet spot; higher is not faster. |
Anything that is not a post link — a Page link, a home page link, a link from another site — is skipped with a message saying why, and the run continues.
Output fields
| Field | Description |
|---|---|
postId | The post the comment belongs to. |
commentId | Facebook's own identifier for the comment. |
authorName | The commenter's display name. |
authorId | The commenter's identifier. |
authorIsOpaque | true when Facebook published a one-way code instead of a real profile number — 8 of the 10 commenters on the post we sampled. Those values identify nobody and cannot be matched against other data. null when no identifier was published at all. |
authorUrl | The commenter's profile link, where Facebook publishes one. |
text | The full comment text. |
publishedAt | When the comment was posted, in ISO 8601. |
likesText | The like figure exactly as Facebook displays it — "0", "18", "1.7K". It is text, not a number: see the limits. |
replyCount | How many replies the comment has. |
depth | 0 for a top-level comment. |
attachmentCount | How many pictures or stickers are attached to the comment. |
postDeclaredComments | The comment count Facebook shows on the post itself, so you can see the gap between that and what is publicly reachable. |
availability | OK for every row produced. |
sourceUrl | The post the row came from. |
scrapedAt | When the row was collected. |
Pricing
You pay per comment plus a small one-off charge for each post whose thread had to be continued beyond what the post shows on arrival:
- $0.0004 per comment — $0.40 per 1,000 comments.
- $0.004 per post whose thread was continued. Posts whose comments all arrived with the post are not charged this.
A run over 100 posts collecting 30 comments each costs about $1.20 + $0.40 = $1.60. Posts that turn out to be unavailable, and posts with no public comments, produce no rows and cost nothing.
Limits & what this actor cannot do
- About 45 comments per post is the public ceiling. On a post showing 102
comments, a signed-out visitor could reach 46 of them and then Facebook simply
stopped — while still claiming more were available. Big posts with thousands of
comments will therefore yield a small sample, not the lot.
postDeclaredCommentson every row shows you the gap. Any product claiming complete public comment collection for Facebook is not telling you the truth. - Replies are never returned. Facebook publishes the reply count to
signed-out visitors but not the reply text, so
replyCountis filled in and no reply rows exist. Note that the count shown on the post includes replies, which is part of why it is so much larger than what can be collected. - Comment like figures are text, not numbers. Facebook shows
1.7K, not1,700, and no exact figure is published anywhere on this surface.likesTextkeeps what was shown; nothing is converted into a number that was never published, so do not sum this column. - Many commenter identifiers are one-way codes. On the post we sampled, 8 of
the 10 commenters had a one-way code instead of a profile number. The share
varies from post to post and no fixed proportion is promised, so size any join
on the
authorIsOpaqueflag on your own rows rather than on an average. - Comment ordering is Facebook's, not yours. Facebook decides which comments a signed-out visitor sees and in which order; there is no way to ask for oldest first, newest first or most liked.
- Reels usually return no comments publicly, even when the reel shows a large comment count. Those posts are reported as having none rather than failing.
- Some posts are not publicly viewable at all. Posts on Pages or in groups that require signing in, and links to posts that no longer exist, are reported as unavailable rather than returned empty — and are not charged for.
- There is no search. You supply the post links; the actor cannot find posts by keyword, topic or Page.
- Speed depends on the size of the job and on how quickly Facebook answers on the day. No fixed rate is promised.
- Use the data lawfully. Facebook's terms prohibit automated collection, and comment text and author names are personal data. You are responsible for using what you collect in line with the source site's terms and with applicable privacy law — including erasure obligations and the rules on profiling.
FAQ
Do I need a Facebook account? No. Only public comments are collected, and no account is ever involved.
Does it need my login or any personal details? No. There is nothing to connect and nothing to sign in to.
Can I schedule it? Yes. Running the same post daily is a good way to catch comments as they arrive, since new comments are often the ones publicly reachable.
Is the data complete?
No, and no tool can make it so without an account. Facebook stops a signed-out
visitor at roughly 45 comments per post and never returns replies. Every row
carries postDeclaredComments so the gap is visible in your own data.
Why is likesText text instead of a number?
Because Facebook publishes 1.7K rather than an exact figure. Converting that to
1700 would invent precision that does not exist.
I asked for 50 comments and got 46. Why? That is the ceiling, not a failure. Facebook stopped returning more.
What about replies to comments? The count is reported; the text is not published to signed-out visitors, so it cannot be collected.