
Start with manual review when you have only a few comments to check. A collection tool can help you keep source records for a larger review. It cannot decide whether a complaint deserves to stay or whether a Page rule applies.
This guide gives you a proposed review method. It does not establish that hiding comments improves sales, protects reputation, or makes a moderation policy safe. Here, moderation means deciding how to handle comments under your Page’s rules.
1. Define the decision and the rule
A public question asks whether it is worth hiding comments. That question needs a reason for each proposed action. A negative tone alone does not supply that reason. The supplied evidence contains one public question about hiding comments, checked on October 25, 2026; it does not measure wider demand.
Write the purpose of your review before you label comments. For example, you might check whether selected comments breach an existing Page rule. Keep that purpose separate from deciding which product complaints deserve investigation.
Record the actual rule wording and who can approve an action. A useful rule must give the reviewer something concrete to check. Disliking a critical opinion does not show that the comment breaks a rule.
For each rule, record:
- The rule name or reference.
- Its full wording.
- The evidence needed to apply it.
- The person who can approve an action.
- The next step when the evidence is unclear.
If you cannot identify a rule, record that gap. Do not create a rule after reading a comment merely to support a preferred outcome. Keep the proposed action pending while the responsible person checks the policy.
Also name the exact action under review. Hiding, deleting, retaining, and sending a comment for service review are different decisions. Do not use “handled” as a substitute for the action you mean.
2. Choose a small review scope
Scope means the limits of the review. Select known public post links and a review period. Record which posts and dates you intend to check. Your final report must keep those limits visible.
For a small set, open the posts through your normal Page account process. Read the comments and replies there. Build the decision log directly from that review. You do not need an export merely to assess a few comments.
Use a public export when you need a separate source record for review. The documented Facebook Comments Scraper accepts 1–100 supported public content links. These include post, Reel, video, and photo links. Page, Group, profile, Story, and private links are not supported inputs. These are documented input limits, not results from a run made for this guide. See the public Actor contract, checked October 25, 2026; static documentation only.
The small input below follows the supplied schema. A schema is the set of rules for accepted input fields and values.
{
"collectAllAvailable": false,
"commentSortMode": "all",
"includeReplies": true,
"maxResultsPerPost": 10,
"startUrls": [
"https://www.facebook.com/reel/1733966934399341"
]
}Replace the sample address in `startUrls` with the supported public content link you intend to review. The sample address is not evidence about your Page. This input was checked against the documented input rules. No collection run was made for this guide.
The settings have these effects:
- `maxResultsPerPost` sets a maximum of 10 saved rows for each supplied URL. A row is one saved comment or reply record.
- `includeReplies` requests replies as separate paid rows. Replies count toward the same maximum. The setting does not request 10 parent comments plus extra replies.
- `commentSortMode` selects the documented `all` ordering option. That name does not establish complete coverage.
- `collectAllAvailable` remains `false`, so this input keeps the selected result limit.
The input contains no date filter. If you add `commentsFrom` or `commentsUntil`, the documented behavior skips comments without a public date. Record that limit when you report the review period. Removing the result limit can cost more and still does not guarantee complete collection.
3. Preserve the source and read the conversation
Keep the original export unchanged. Create the decision log in a separate table. This lets a reviewer compare your finding with the source text.
The documented output includes `commentId`, `commentUrl`, `parentCommentId`, `rootCommentId`, `isReply`, `text`, `publishedAt`, `postDescription`, and `scrapedAt`. These are documented fields, not confirmed values from a current result. Some fields can be unavailable. The Actor contract, checked October 25, 2026; no runtime result was checked defines those fields and their limits.
Use the fields to locate the conversation:
- Keep `commentId` as text. It identifies the comment record.
- Use `commentUrl` when available to open the exact comment.
- For a reply, check `parentCommentId`, which identifies its parent comment.
- Keep `rootCommentId`, which identifies the top-level comment for that thread. A thread is a comment and its connected replies.
- Read the original post and the relevant surrounding replies.
- Record when you checked that context.
A reply can look like a complaint about your brand when it is actually addressed to another user. A short answer can also depend on a parent comment that the export did not include. Do not fill those gaps with an assumption.
Keep publication time separate from collection time. `publishedAt` is the public publication time when available. `scrapedAt` records when the row was collected. Collection time does not tell you when a comment was posted or when moderation occurred.
Preserve missing values. An unavailable date means “date unavailable,” not “posted at collection time.” Unavailable text is not an empty statement that you can classify. A missing reaction count does not mean zero reactions.
Quote only the text needed to support the decision. Remove personal contact details from the working report. Where needed, keep a source reference in a separate location that only authorized staff can access. Do not copy private service records or personal contact details into a public report.
4. Save a decision log with clear fields
The Actor does not create the review findings below. You add them through manual checks. Keep one decision record tied to each reviewed comment ID, and identify later checks clearly.
Use these fields as a practical starting table:
| Field | What to save |
|---|---|
| `commentId` | Original comment identifier, kept as text |
| `source_reference` | Post link and comment link when available |
| `thread_reference` | Available parent and root comment identifiers |
| `source_checked_at` | Time of the manual source check |
| `relevant_text` | Minimum quotation needed for review, with contact details removed |
| `rule_under_review` | Exact rule wording or a clear reference to it |
| `exact_evidence` | Specific text or source detail that may meet the rule |
| `context_checked` | Post and conversation checked, with the result |
| `finding` | Criticism, service question, checked rule breach, or unclear context |
| `uncertainty` | Missing evidence, conflicting details, or unanswered questions |
| `proposed_action` | Exact action requested and its reason |
| `reviewer` | Person responsible for the decision |
| `approval_state` | Pending, approved, declined, or no approval requested |
| `action_taken` | Actual action, or completion not recorded |
| `action_taken_at` | Recorded action time, or unavailable |
| `outcome` | Result supported by the approval and action records |
Make `exact_evidence` specific enough for another reviewer to check. “Bad comment” gives no testable reason. A reference to a particular link and the rule that covers it gives the reviewer a clear check.
Do not confuse an empty field with a decision. A blank `approval_state` does not mean declined. A blank `action_taken_at` does not show that an action happened without a recorded time. Mark the gap and assign the next check.
5. Separate criticism from a checked rule breach
Read for meaning before you choose a finding. Use the following distinctions:
- Ordinary criticism: A negative opinion about the product, price, or experience. Keep it separate from a rule breach.
- Service question: A request or complaint that needs service review. Do not treat the service issue itself as evidence for hiding the comment.
- Checked rule breach: Specific evidence meets a stated local rule after you check the context.
- Unclear context: Required source text or conversation context is unavailable. Leave the decision unresolved.
Also check who the comment addresses. A question directed to another user does not by itself create a brand moderation task. Record the relevant context before proposing an action.
Repeated wording can prompt a separate check. It does not prove abuse. If repetition matters to the case, use the distinct evidence process in How to Spot Repeated and Spam-Like Facebook Comments Without False Accusations. Keep the pattern finding separate from the rule decision in this log.
A complaint may also contain a useful product request. Send that request to a separate product review. The method in How to Turn Facebook Feature Requests into Product Priorities addresses that decision. A possible product insight does not settle whether a Page rule applies.
For each proposed moderation action, connect three things: the rule, the exact evidence, and the checked context. Send unclear or consequential cases to the named reviewer. This process makes no legal determination about the speech.
6. Work through six fictional decisions
Original fiction: All comments, rules, reviewer labels, and decisions in this example are invented. The example shows how to use the log. It does not report an Actor run or an actual Page review.
The fictional Page has a local rule, R1: “Do not post links to external sales pages in comments.” A named reviewer can approve removal under this rule. This invented rule is not presented as a Facebook-wide requirement or a recommended policy for every Page.
The reviewer checks six comment records under one selected public post. The link labels below are fictional placeholders, not live destinations. In a real log, keep the exact relevant link evidence in the restricted source record.
| ID | Invented comment or source note | Checked finding | Action and state |
|---|---|---|---|
| C1 | “This costs too much for what it does.” | Critical product opinion | Retain criticism |
| C2 | “Why has my delivery not arrived?” | Critical service question | Route to service review |
| C3 | “Buy here: [fictional sales link A].” | Link checked against R1 and the source context | Reviewer approves removal; completion not yet recorded |
| C4 | “See this offer: [fictional sales link B].” | Second link checked against R1 and the source context | Reviewer review pending |
| C5 | “Did yours arrive?” | Question addresses another user in the thread | No brand moderation action proposed |
| C6 | Parent comment needed to interpret the reply is unavailable | Required context missing | Unresolved; check source |
For C3, the log records R1, the checked link evidence, the source-check time, and the reviewer. Its `approval_state` is approved. Its `action_taken` remains “completion not recorded.” Do not enter an action time until there is evidence of the actual action.
For C4, the rule check is complete, but approval is pending. Evidence and approval are separate. The presence of a second checked link does not establish a second approved action.
For C6, the missing parent is a failure to establish the context. It is not evidence that the reply breaks a rule. Keep the case unresolved and record who must recheck the source.
The decision categories account for all six rows:
2 criticism/service cases + 2 checked local-rule cases + 1 other-user case + 1 unresolved case = 6 reviewed rows.
Only 1 removal action is approved. None is documented as completed. This means the record does not establish a completed action count; it does not prove that no action occurred outside the record.
Do not report “two hidden comments.” The approved action is removal, and completion is unrecorded. Do not report “six toxic users.” These are six reviewed comment rows, not a verified count of people. The example also provides no measured sales or reputation benefit.
7. Check approval, completion, and failure states
After approval, an authorized person must use the normal Page process to take the stated action. The collection workflow performs no moderation action. Record what that person actually did and when.
Keep these states distinct:
- Proposed: Someone requested an action.
- Approved: The authorized reviewer agreed to that action.
- Completed: A record supports that the action occurred.
A later export cannot replace the completion record. If a comment is absent, record that absence. Do not claim it was hidden. A result limit, source ordering, or unavailable source data can leave a comment outside an export. The supplied evidence does not establish why any particular comment is missing.
Before accepting the log, check each proposed action for a source reference, a stated rule, exact evidence, checked context, and an approval state. Confirm that criticism remains distinct from a checked rule breach. Confirm that unresolved cases have a next step and a responsible reviewer.
Report the number of reviewed decisions and unresolved cases within the selected posts and review period. Do not present those counts as totals for the entire Page. Keep unreviewed records outside the reviewed-decision count.
The source evidence supports documented collection features and this proposed manual method. It does not establish collection reliability, recovery of old comments, or measured moderation results. The public export Task was checked for page presence only. Its saved settings were not read, and it was not run.
Sources & further reading
- Public question: Hiding Comments on Facebook a Good Practice? — retrieved October 25, 2026; one public question record, no authenticated read or demand estimate
- Facebook Comments Scraper default build 2.0.9: input, output, and README evidence — checked October 25, 2026; static public contract, no paid run or runtime validation
- Export Facebook Comments to CSV — checked October 25, 2026; public Task presence only, saved settings not verified and Task not run
By Chronometrica · Updated
Back to top ↑
