Tutorial · 6 min read

How to Auto-Reply to Instagram Comments, Step by Step

The PostEngage teamEngineering and support ·

Auto-replying to a comment sounds like one action. It is two, and most of the confusion about setting it up comes from treating them as one.

The public reply is the line that appears under your post, where everyone scrolling can see it. The private reply is the DM that goes to the person who commented. They travel on different rails, they obey different clocks, and they fail for different reasons. This post walks the builder field by field and then covers the part nobody writes down: what to do when a reply does not arrive.

If you want the compressed version, the three-minute setup is here. This is the long one.

The builder, field by field

The automation builder: when it happens, only if, then do this with the public reply and the private reply, and the live preview beside it.
Read this screen top to bottom once before filling anything in. Every field below constrains the ones under it.

The trigger

Two parts: which post (any post, one chosen post, or posts you pick), and which words should trigger it. The words are matched against the comment text, and matching ignores case and punctuation, so PRICE?, Price and price! are one keyword, not three.

The any/all switch decides how a list behaves. Any fires when a single keyword from your list appears, which is what almost everyone wants. All requires every keyword in the same comment, which is mostly useful for disambiguating two automations on one post.

The usual mistake is keywords that are too long. how much does this cost is a sentence and matches almost nothing; cost and price catch the same comments.

Negative keywords

Words that mean do not reply, evaluated after the trigger matches. This is the field people skip and then wish they had not, because triggers are sentiment-blind. A comment saying not interested in the price matches price perfectly well.

Start with not interested and already bought, then add whatever your own comments teach you in week one.

The public reply

What appears under the post. Keep it short. Its job is to be a receipt telling the person the answer is on its way, not to be the answer. A long one reads as an advertisement to everyone else in the thread.

The private reply

The real answer, sent as a DM. This is the message that has to land inside the 24-hour messaging window, and it is the one worth rewriting a few times. Write it the way you would type it on your phone. Templates written in a formal register are the single most common reason automated replies feel automated.

Capture to Leads

A checkbox in the last step, "Treat people who trigger this as leads", and it is off by default. Tick it. Someone who asked a buying question under a post is worth having in a list, and turning it on later does not backfill the people you already missed.

Later settings

Three settings that are worth opening once you have run for a week:

  1. Only the first time somebody triggers this. A checkbox in step 2. Replies only to people who have not triggered this automation before. If you post daily, this is what stops the same follower being greeted under every reel.
  2. Quiet hours. A window during which nothing sends. They are set per account on the Sending page, in the account's timezone. Step 2 has a time window for a single automation.
  3. Specific posts. Chosen in step 1, this narrows the automation to a set of posts instead of everything. Useful when one launch post needs a different answer from the rest of your feed.

Try it before you go live

On the automation's page, press Test it and use Try it. Use it every time, including on the automation you are certain about.

Type what somebody might write. Try it runs the keyword match and every one of the sixteen checks against the live account, and shows the public and private replies as they would go out. Nothing is sent, and you get six tries an hour per automation. A reply that would send is a reply that would genuinely have gone out, and a reply that gets stopped tells you which check stopped it while the audience is still zero.

Read the result for tone rather than correctness. Correctness you can verify by rereading the template; whether it sounds like the person who runs this account is something you can only judge by reading it as the person receiving it would.

Where the conversation actually lands

The private reply opens a real DM thread, which shows up in the inbox alongside everything else. People answer it, which is the point.

The unified inbox, showing DM threads opened by automated replies sitting alongside ordinary conversations.
Press Take over, or send a reply from here, and the automation stands down on that thread until you hand it back. A reply typed in the Instagram app does not pause it.

The automation's job is to get the conversation started and then get out of the way when a human arrives.

When a reply does not arrive

Before anything is sent, sixteen checks run in a fixed order: kill_switch, connection, takeover, auto_reply_off, complaint_pause, window, dedupe, burst, bot_loop, cooldown, quiet_hours, account_rate_limit, rate_budget, free_dm_cap, credits, content_safety. The first failure stops the send and is recorded with its reason, so diagnosis is reading rather than guessing.

Open Activity and filter to blocked.

The activity screen filtered to blocked replies, each row naming the check that stopped the send and the reason it gave.
Start every diagnosis here, not in the builder. The builder shows what you asked for; this shows what happened.

Then sort what you see into two piles:

Working as designed

Window closed on a comment older than seven days. Duplicates, from Instagram redelivering the same comment event. Quiet hours holding a reply until morning. Takeover, because you stepped in first.

Worth fixing today

Connection unhealthy, which means nothing at all is sending. Cooldown or rate budget appearing constantly, which means your automation is too broad. Content safety firing repeatedly on a template, which means the template needs rewriting.

If Activity shows the reply was sent and the person insists they got nothing, check which account you connected. Running several Instagram accounts and picking the wrong one is common enough that the connection step gets its own day in our setup guide.

What this costs to run

Templated replies are free and unlimited. Comment replies stay uncapped on every plan; DMs on Free are capped at 1,000 every rolling 30 days, gone on Lite and up. Credits are spent only when the AI writes a new reply for a question no template covers, so a template-only automation costs nothing per send, however popular the post gets. The free tier includes 100 credits and no card; credit packs start at $3.99 (₹299 in India) if you later decide the generated replies earn their keep.

The honest end state is boring: two or three narrow automations, mostly templates, checked weekly in Activity. If you would rather think about the settings than the steps, the configuration decisions are laid out here.

One email when we publish.

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

Try it on your own posts

Free forever. Three minutes to set up.

Start free