BlogTutorial

Comment Automation, From the Trigger to the Blocked List

The complete reference for automating Instagram comments: what fires a rule, what the public reply is for, what stops a send, and what to read afterwards.

The PostEngage team5 min read
Building an automation: the trigger, the condition and the reply.

This is the reference version. If you want the three-minute build, the quickstart is here; if you want the paced first week, that is the getting started guide. What follows is what each part does and why, in the order the system runs them.

What a comment automation is made of

Five decisions and a handful of settings.

The automation builder: the trigger and its keywords, the public reply, the private reply, the test button, and the preview panel replaying real comments.
The preview on the right replays comments you already received against the rule you are writing.

The trigger. Which post, and which words. Scope it to specific posts under Advanced unless you genuinely want the whole account — a rule watching everything will fire on comment sections you were not thinking about.

Keywords, any-of or all-of. Any-of means one word from the list is enough, which is what most rules want. All-of requires every word in the same comment, which is for narrowing rather than broadening — size and blue together, when size alone is too noisy.

Negative keywords. Words that mean do not reply. This is a stop, not a preference: if one appears, the automation sends nothing at all.

The public reply. What appears under the post.

The private reply. The actual answer, sent as a DM.

How matching actually works

Worth being precise, because most "it didn't fire" reports are here.

  1. Case is ignored. PRICE, Price and price are one keyword.
  2. Punctuation is ignored. price?, price!!! and price 🔥 all match price. A hash is punctuation too, so #price matches — which is why tag-stuffed giveaway comments sometimes fire rules you did not expect.
  3. Latin accents fold. cafe matches café.
  4. Nothing else folds. price does not match pricing — matching is whole-word. kitna does not match kitne. दाम does not match दम, because a matra is a vowel rather than an accent and those are different words.

The practical consequence: your keyword list has to contain the spellings people actually type. Read fifty of your own comments and harvest them rather than imagining them.

The two replies do different jobs

The public reply is a receipt. Its audience is partly the commenter and mostly everyone else reading the comments, who learn that this account answers. Two or three words is right. A paragraph is worse, and a link in it may reduce how far the post travels.

The private reply is the answer, and it is the one with a clock on it.

The clocks

Two bars comparing the seven day comment window against the much shorter twenty four hour direct message window.
Seven days from each comment to open a DM. Twenty-four hours inside the DM, restarted only by their message.

The comment window runs per comment, not per post, which is the useful part: an old Reel that resurfaces still produces working automations, because each new comment starts its own seven days.

The messaging window is twenty-four hours from their last message. Nothing you send extends it. So the private reply should end with one closed question — their answer is the only thing that buys you another turn.

What happens between the match and the send

Ten checks, in a fixed order. A reply that fails any of them is not sent, and the reason is recorded.

The ten checks every reply passes through, in order: kill switch, connection, takeover, window, dedupe, cooldown, quiet hours, rate budget, credits, content safety.
Failing a check is normal. Most of what a healthy account blocks is closed windows and duplicates.

Three of them are worth understanding before you go live:

Takeover. The moment you reply to a thread by hand, the automation stands down for that conversation and stays down. You never have to switch anything off to take over.

Dedupe. Instagram redelivers events. The same comment producing three webhooks produces one reply.

Rate budget. A post that travels overnight hits an hourly cap rather than sending a thousand messages in ten minutes. This is why a viral post converts worse per comment than an ordinary one, and it is deliberate.

Test before you go live

There is a Test on myself button next to Go live, and the distinction is the whole point. Test runs the complete pipeline — match, all ten checks, generation, send — and delivers to your own account. Nothing is faked, so a reply that survives the test is a reply that would genuinely have gone out.

Read the result on a phone, for tone rather than correctness. Correctness you can check by reading the template.

What to read afterwards

The activity screen filtered to blocked replies, each row naming the check that stopped it and offering the fix.
A healthy first week is mostly closed windows and duplicates. Those are the platform's rules working.

The row worth acting on is a large count of takeovers, which usually means you are answering faster by hand than the automation can, and it should be narrower. A connection row means nothing is sending at all and needs fixing today.

What comment automation does not do

It does not reply to comments on other people's posts, cannot message anyone who has not contacted you, does not read images, does not know your stock or your calendar, and does not influence how far a post travels.

If you want the deeper treatment of keyword choice, that has its own post.

One email when we publish.

No drip sequence, no “quick question” follow-up. Unsubscribe is one click and we honour it immediately.