Loading…
Loading your links…
Loading…
Loading…
A
Account
Member since —  ·  Last active —
Loading profiles…

My Activity

What your automation did on your behalf, day by day.

Loading activity…
Replied Hidden Ignored

Post Engagement

Comments processed across your posts.

Account changes

A running history of edits made to your automations and account.

Loading…
Your ads
Pick an ad account to load its saved posts instantly. Use Refresh only to pull the latest from Facebook.
i
Live reply queue
See what the AI decided, when each reply sends, and its sentiment — before it goes out.
Pick an ad account to watch
Nothing to watch yet
Pick an ad account above. When automation is running, queued replies appear here with a live countdown.
Check an ad's comments by URL
Paste a Facebook post/ad URL (e.g. facebook.com/{page}/posts/{id}) or a {page}_{id} id. Useful for dynamic/catalog ads that don't appear in the list. The post's page must belong to the current profile.
Performance
Comments Ingested
-
Comments Replied
-
Reply Rate
-%
Avg Response Time
- min

Comment Classification

Breakdown by AI classification

Report category, actions & peak hours
Comment Page / Ad account Category Visibility Status Our reply Time Actions
Page 1
1

Which post?
A link or a bare post id. It does not have to be your post, and it does not have to be an ad we already know about. Share links starting pfbid often cannot be resolved — use the link from the post's timestamp instead.

Paste the whole list in one go — from a spreadsheet, a message, anywhere. Links separated by new lines, commas or spaces are split apart on their own, and anything already in the list is left alone. The posts do not have to be yours, and do not have to be ads we already know about.
·

Queue

What is waiting, when each one goes out, and anything that failed. Updates on its own — no need to reload.

·

Posts we have worked on

Every post, every time it was sent to, and how many of your pages it has left. This is the record to show somebody who asks what was done for them.

Pages configured
Unique banned words
Pages
Loading pages… Select all · Clear
Check one page and its saved list loads automatically. Check several (or "Select all") to apply the same list to all of them at once.
0 banned words
Press Enter or comma after each word to add it. A comment containing any of these gets hidden by Facebook automatically.
Load words from
Adds a ready-made list of common scam/fraud words
Loads the list already saved on Facebook — pick exactly one page first
Bulk-add a comma-separated list of your own words
Apply
Select at least one page first

Tips for a good list

  • Facebook matches exact words and short phrases — not partial words or common misspellings.
  • Keep it focused. A shorter, deliberate list stays accurate; a huge one gets hard to maintain.
  • This hides comments — it doesn't delete them. They're still visible in Facebook's own comment moderation tools.
  • Changes apply the moment you save. No delay, no review queue.

Settings

Everything that controls how automation behaves, grouped by what you're actually trying to control.

Only reply on ad posts
Leave off to also cover organic (non-ad) posts on your pages.

Reply Variance

Decide how many comments get a reply — from every comment down to just the happy ones and real questions. Tap the i to see exactly what each level does.

Loading…
How many comments get a reply
Liking positive comments
Back-and-forth replies
Reply timing
Reply gap (minutes between replies on a page)
Default is 5–10 minutes. It can never go below 5 minutes or above 10 minutes.

Reply Style

Shape how human your automated replies feel — tone, slang, short-forms, typos & more. Tap the i on any option to learn what it does.

Loading…
Style intensity
Casual and relaxed with a few short-forms — recommended.
Behaviors
Slangngl, tbh, fr, lowkey
Short-formsur, u, gud, pls, ppl
lowercaseno capital letters
Drop punctuationno periods, commas, apostrophes
Occasional typosrealistic, capped & readable
Code-switchmix English into other languages
Emojis
Live preview
How your page would reply
Adjust the settings to see a live example…
Every reply varies slightly — hit ↻ to see the natural variation.

New rule

Match a comment, then choose what to do with it.

Rule name
When match
Then
ActiveTurn this rule on

Connect Slack

In Slack, run the command below to link this account. The code expires in 10 minutes and can be used once.

Generating…

Tip: if you sign into Slack with your company email, linking is automatic — just run /commenting whoami. Use this code only if that says no account matched.

Add user

Create a teammate's account and set their role. They sign in with this email + password.

Are you sure?

Enter a value

Reset password

Set a new password for . They will need to sign in with this password.

Delete user

Permanently delete ()? This cannot be undone.

Type delete to confirm:

Suspend user

Suspend ? They won't be able to log in and their automation is paused until reactivated.

Type suspend to confirm:

Raise a ticket

Tell us what went wrong. You'll be notified here and on Slack when it changes.

Loading…
Loading…
Loading…

Edit reply

Comment
Current reply
How would you like to change it?

Send private DM

Comment
How would you like to write this?
?

Conversation

New flow

Each card is one message. Every button in a card leads to the next card in order — the person just taps through. Type {{first name}} anywhere in a message to use their name.

Resolve ticket

Add an optional note the reporter will see, then mark it resolved.

Delete ticket

Permanently delete ticket ? This removes it and its whole conversation and cannot be undone.

Type delete to confirm:

Delete your account?

This permanently deletes your account and all its data. To confirm, enter your password.

1. Find a comment's real post
Paste a comment ID and this shows the actual post Facebook has it attached to — not a preview/template link derived from an ad.
2. Try sending a reply
Paste a comment ID and a message — this really attempts to post that reply on Facebook right now, and shows exactly what Facebook says back (success or the real error). This is a real action, not a simulation.
3. Hide a comment / check its visibility
Two separate, real actions — kept apart on purpose. "Hide" makes only the raw hide write and shows exactly what Facebook's status code says back, with no extra verification call layered on top. "Check visibility" is a completely separate, on-demand ask-Facebook-right-now read, so you can confirm whether a hide actually took effect. Both are real actions/reads against Facebook, not simulations.
4. Measure a page's own rate limit
Reads the selected page's own name a few times using that page's token, and shows what Facebook says each call cost. The question is which meter moves: if the page figure climbs while the app figure stays still, the two allowances are separate and this feature has been pacing itself against the wrong limit. Read-only — it posts nothing, changes nothing, and nobody can see it.
5. Are these two links the same post?
Paste a normal post link and the reel link for the same content. This asks Facebook to describe both objects in full and shows what they have in common — including whether either one names the other. That matters because "a page never comments twice on one post" is keyed on the post id, and a reel carries a different id. Read-only — it writes nothing.
6. Check what type of ad this is
Paste an Ad ID to see whether it's a classic catalog ad (has a real post), an Advantage+ catalog ad (ephemeral, no fixed post), or something else.
7. Why is one page failing?
For when a single page refuses every call while the others are fine and the role check says they are all identical. Three things have to be right and only the first is a role: the role on the page, the permissions carried by the token doing the work, and which pages those permissions actually cover — Facebook records them per page, so a token can hold a permission for eighty-eight pages and not the eighty-ninth. Read-only, about three calls.
8. Check page reply permissions
Checks whether a page's login actually has permission to reply to/hide comments on it — a per-page role check (Admin/Editor/Moderator/etc.), separate from the app-wide permission check on the Overview tab. Leave the Page ID blank to check every page this login can reach at once (still just one API call either way).
9. Find the ad behind a post
Paste a post ID (the {pageId}_{postId} already shown for a comment in the Activity tab) and the ad account it's in — this searches that account's ads for the one that produced it, so you can check a comment you already know is real against its actual ad instead of guessing.
10. Can a page act on a post it doesn't own?
Pick a page, then paste a post and/or comment that belongs to a different page. This tries to read, comment, and reply using the picked page's token, and repeats the same two writes as the post's real owner for comparison — so a failure is provably about ownership and not a broken token.

This calls Facebook's reply endpoint directly, with the automatic "retry as the real owner" safety net switched off — otherwise a rejection would be silently retried as the owning page and reported as a success, hiding the very thing being measured.

Successful writes are real, public and left in place so you can inspect them. Their IDs and links are shown below for manual removal.
11. Get a comment's permalink
Paste a comment ID and get a link straight to it, ready to copy. Also shows the link to the post it sits on.

Comments on catalog and Advantage+ ads often come back with no permalink at all. When that happens this builds one from the ID's own structure instead — clearly marked, because Facebook didn't confirm it and it may not resolve. Read-only; posts nothing.
12. Comment on and like a post from its link
Paste the link to a post and pick a page. Two separate buttons, so each is its own experiment: one posts a top-level comment as that page, the other likes the post as that page. Run them one at a time and compare — Facebook treats commenting and liking as different permissions, and they do not always agree. No IDs to dig out first: paste what you copied from Facebook.

Don't want to write the comment yourself? Write one for me reads what the post actually says and offers a few short, positive comments to pick from. It posts nothing — the one you click lands in the box so you can edit it first.

Every run shows the whole trail — which page the token actually belongs to (asked of Facebook, not assumed), how the token was found, how the link was turned into a post, who owns that post, whether this page can even read it, then the write itself, with the raw request and response for every call. Nothing here needs the deploy logs.

Most link shapes work: /posts/…, permalink.php, photo, video and reel links, share links and fb.watch links (which get followed first), or a plain post ID. Facebook's scrambled pfbid… share links carry no post ID at all, so those are looked up against the page's recent posts — if that finds nothing you are told exactly why, and nothing is written.

Both actions are real, public and left in place. The comment ID and links are shown for manual removal. The like is read back afterwards to confirm Facebook actually applied it, since it will accept a like it then does not perform.
13. Can a page be renamed through the API?
Pick a page, type a name, and this asks Facebook to apply it. Meta's Page reference lists name as a field you can read, but not among the 45 parameters its Updating section accepts — so the documented answer is no. A missing row in a doc is weaker evidence than a live response, which is what this gets.

The current name is read before anything is attempted and shown below, so the old name is on record. Afterwards the name is read again, and that read — not the write's status code — decides the verdict: Facebook returning success for a write it then doesn't perform is a pattern this app has already been bitten by twice.

This is the only button in this tab that changes a page itself rather than adding a comment or a like to a post. Page names are governed by Meta's naming rules and changes are reviewed; a page that has just been renamed is locked from renaming again for a period, so a rename that works may not be promptly reversible. Test with a value you are willing to live with.
14. Share a post from another page
Pick a page, paste the link to a post that belongs to a different page, and this asks Facebook to publish it on the page you picked.

There is no share button in the API. You cannot make a Page do what a person does when they press Share — what a Page can do is publish a post of its own carrying a link to another post. Whether Facebook then draws the original embedded, or just a grey box with a web address, is the whole question, and no response can answer it. So this gives you a link to the result and you look.

Try it on an ordinary published post first, then on one of the dark posts the ads run. A dark post has no public address, so there may be nothing to link to — that is the answer most likely to end the idea, and better found now.

Show every method lists each way this could conceivably be done — including the ones the documentation says are impossible, because a document is weaker evidence than a live response. Each says what it does and what it would prove, and each has its own button. Nothing runs until you press one, one at a time.

That is deliberate. Every one of these is a real write, and a burst of writes is precisely what gets an account throttled — which this one already is. So there is no run-them-all, and a short wait is enforced between attempts.

Run the two controls first. A plain text post asks whether this page can publish at all; a link to a non-Facebook site asks whether it can publish links. Without those two, a refusal on the rest cannot be read — you would not know whether sharing is blocked or the page simply cannot post.

"Can it be shared?" needs the page that OWNS the post, not the one doing the sharing. A page can read its own post with no special permission; nobody can read anybody else's. If the owning page is not connected here that question simply cannot be answered — press Share it anyway and let Facebook decide.

This publishes a real post on the page you pick. Unlike a comment it sits on that page's timeline until removed, so a Remove button appears beside every result.
Only for Can it be shared? — the page that owns the post. Sharing itself does not need it.
15. Share a reel
Ordinary posts share cleanly and Facebook draws them as a real share. Reels come back "restricted from resharing" with a date — but the same page shares ordinary posts fine minutes later, so the account is not restricted. The refusal is about the reel, and Facebook's wording does not say why.

The likeliest reason is the address. facebook.com/reel/<id> is a viewer route, not the address the object actually has. So these three try the shapes a reel really has, one at a time.

Run the first one first. It asks Facebook for the reel's own address before sharing it, so it also answers a question the others cannot: whether the reel was ever published at all. An ad-only reel has no public story to share, and that is a real answer rather than a block. The last two address the reel as a post rather than as a video — which is how the ad post that shared successfully was written.

What goes where. The two pickers at the top are the page that will do the sharing — one of your own. Inside each attempt you pick the page that owns the reel, which is a different page: the one whose ad it is. Then paste the reel link exactly as you opened it; the reel's id is taken out of the link for you, so there is no id to find anywhere.

If all three are refused while ordinary posts keep sharing, the restriction genuinely is about reels rather than about the link. That is worth knowing before designing around it.
16. How Facebook threads and orders replies
A live conversation came out on Facebook in a different order than we sent it: the newest reply displayed above an older one, so a reader saw the question, then a second question, then the single answer. That one still read correctly by luck. A script ending “thanks, just ordered” would have read as nonsense.

Three separate questions, and each has a different fix, so they are measured rather than guessed:

1. What order does Facebook actually use? Our own screen orders by the time we sent things — a faithful record of what we did, and possibly a lie about what a reader sees. This asks Facebook and prints its answer in its order.

2. Can a reply attach to another reply? The documented model says no and quietly reparents it to the top-level comment. That is a claim to check, not to repeat. This posts a reply aimed at a reply and then reads back what Facebook actually attached it to — which is the only way to tell, because a reparented reply looks exactly like a successful one.

3. Is the order ours to ask for? Both documented sorts, side by side with the default. If all three come back identical, the sort is being ignored and no ordering trick can work.

What goes where. Pick the profile and page whose post this is — it needs to be a page you administer, because reading comments and replying both use its login. Then paste the post link. Press Read the comments and everything after that is chosen from what comes back, so there is no comment id to find anywhere.

Reading is free and changes nothing. Only Reply to this one writes, and it puts a real comment on a real post — there is a Remove button beside each one.
This goes on a live post that real people read, so it is written as an ordinary line rather than as obvious test text. Change it to whatever suits the post. Leave it empty and a neutral line is picked.
Build a tree writes six numbered comments in this shape — the one thing no API call can answer is what a reader sees, and the only way to find out is to build it and look:
1 comment
├─ 2 reply
│  ├─ 3 reply
│  └─ 4 reply
└─ 5 reply
   └─ 6 reply
Two sibling pairs at two different levels: 3 beside 4, and 2 beside 5. If both pairs show the higher number first, Facebook orders siblings newest-first and conversations can simply be sent in reverse. If only one flips, or neither, it is not a time rule and no ordering trick will work.

These are numbered rather than written naturally on purpose — the whole measurement is which order are these in, and natural wording would make that a puzzle instead of a glance. All six land in the removal list below.
17. Did our comments survive?
The one number this system has never been able to produce. It posts comments and never looks back — the only time a posted comment is read again is to check “is this one of ours” so the reply automation does not answer itself. So the first anyone learns that Facebook objected is a checkpoint, which is the end of the enforcement ladder rather than the start of it.

This asks Facebook about every comment we have sent and sorts the answer into three: still there, hidden (visible to nobody but the page owner), and gone. A refusal we cannot interpret is counted as unknown, never as gone — reporting a page as deleted because our own request was refused would be worse than reporting nothing.

Pages are listed worst first. A page losing most of what it posts is being acted on specifically, which is a different problem from a few comments going here and there.

Reads only. Nothing is posted, changed or removed.
18. Pages that are switched off
When Facebook blocks a page often enough, the breaker takes it out of service so we stop hammering into a ban. That is set with no expiry — nothing lifts it on its own, and until now nothing lifted it at all. The queue said “turn it back on” and there was nowhere in the product to do that.

Each one shows why and when. Read that before turning it back on — a page re-enabled without knowing what it did is one that gets blocked again within the hour. Strikes reset to zero when you do, otherwise the next single block would switch it straight back off and the button would look broken.

Resting is different from switched off: a rest lifts by itself at the time shown, so there is usually nothing to do.
If everything is switched off, it was almost certainly us. A page used to be disabled permanently, on the first occurrence, whenever its login failed — and a checkpointed profile returns that failure for every page it administers at once. So one profile-level problem switched off every page individually, and reconnecting the profile afterwards left them all off for ever.

That is fixed — a failing login now rests a page for a few hours instead of destroying it. Put them back undoes the damage already done: it restores only pages switched off for a login reason, and leaves any page Facebook genuinely objected to switched off, because that decision was correct and is yours to reverse.
Loading…