Facebook Comments Scraper avatar
Facebook Comments Scraper

Pricing

$40.00/month + usage

Go to Store
Facebook Comments Scraper

Facebook Comments Scraper

apify/facebook-comments-scraper

Developed by

Apify

Maintained by Apify

Extract data from hundreds of Facebook comments from one or multiple Facebook posts. Get comment text, timestamp, likes count and basic commenter info. Download the data in JSON, CSV, Excel and use it in apps, spreadsheets, and reports.

4.4 (14)

Pricing

$40.00/month + usage

121

Monthly users

673

Runs succeeded

>99%

Response time

1.8 days

Last modified

3 days ago

MB

Facebook Comments Scraper - Incorrect Nested Comment Structure

Closed
mbgong opened this issue
20 days ago

Summary

The Facebook Comments Scraper actor fails to accurately represent nested comment hierarchies. Comments that are replies to replies (level 2+) are incorrectly linked directly to the original comment instead of their actual parent, resulting in a flattened conversation structure that misrepresents the actual threading on Facebook.

Evidence

I analyzed data from multiple Facebook comment threads collected on March 13, 2025, and found systematic issues with the parent-child relationships:

  1. The threadingDepth property (0-2) correctly identifies comment depth but does not align with actual reply relationships.
  2. Level 2 comments (replies to replies) consistently reference the original comment (level 0) as their parent via replyToCommentId instead of the level 1 comment they're actually replying to.
  3. No true nested chains exist where a depth 2 comment correctly references a depth 1 comment as its parent.

Example In a comment thread:

  • Original comment by user A (depth 0, ID format: Y29tbWVudD...)
  • User B replies to user A (depth 1, parent ID correctly links to user A's comment)
  • User A replies to user B's reply (depth 2, but parent ID incorrectly links back to the original comment instead of user B's reply)
  • User C replies to user A's reply (depth 2, but again parent ID incorrectly links to the original comment)

This pattern repeats across multiple conversations with consistent misrepresentation of the reply structure.

Impact

This issue makes it impossible to:

  • Accurately reconstruct conversation flows
  • Understand which comments are responding to which other comments
  • Build proper visualization or analysis of discussion threads
  • Properly attribute replies to their actual parent comments

Clues for Debugging

  1. Most depth 2 comments start with username mentions (e.g., "User B"), indicating who they're actually replying to
  2. The Facebook UI clearly shows these as nested replies, but the API flattens the structure
  3. The parentComment and threadingDepth fields contain partial information about nesting but don't connect properly with replyToCommentId

This appears to be a systematic issue with how the scraper traverses the comment tree or interprets Facebook's comment structure rather than an isolated data problem.

alexey avatar

Hi!

It is the limitation for comments viewed by web visitors (those without a logged-in Facebook account). Will check if it can be improved and let you know. As you can see in incognito browser there is no deeper nesting and mentions displayed as plain text.

MB

mbgong

17 days ago

Yes, I see. Please check if it can be improved.

MB

mbgong

17 days ago

Otherwise these setting includeNestedComments will never work right?

1If checked, the actor will return up to 3 levels of comments/replies for each post. Note that each reply/comment will be returned as a separate result.
2
3JSON field name: includeNestedComments
alexey avatar

Hi!

The solution deployed in the latest build, see the sample run: https://console.apify.com/view/runs/gapqjFxa8hitxJ9Ba

https://api.apify.com/v2/datasets/YQOL3aaM82WMaPyzE/items?clean=true&format=json parentComment was not changed to keep compatibility, added parentReply

To recreate a thread, check the root comment id, i.e. "replyToCommentId": "Y29tbWVudDoxMDkwNTI2NjIzMTE3NjcyXzk4NTY1NzE1MDMyNTAzOQ==" then follow the chain of the parentReply values

I will close the issue now, but if there is anything else we can help with, please let us know.

Pricing

Pricing model

Rental 

To use this Actor, you have to pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period. You also pay for the Apify platform usage.

Free trial

7 days

Price

$40.00