Instagram Comment to DM Not Working: Reasons It Breaks and How to Check Each One

Instagram comment to DM not working? The real causes: expired token, messaging access off, a closed window, a rule on the wrong post, DMs sitting in message requests.

When Instagram comment to DM automation stops working, it is nearly always one of five things: the access token expired, messaging access got switched off on the account, the comment is older than the seven-day reply window, the rule is pinned to a different post than the one people comment on, or the DM did send and landed in the recipient's message requests. Rebuilding the automation fixes none of those — which is why people rebuild it twice and still get silence.

The funnel has two halves that fail for different reasons: the trigger side (Instagram tells your tool a comment happened) and the send side (your tool asks Instagram to deliver a message). Find out which half is broken, then read that section only.

Sixty seconds of triage: which half is broken?

  1. Use a post published today. Testing on an old one is the most common false alarm: a comment older than seven days can't be answered at all, and a healthy setup looks dead.
  2. Comment the exact keyword from a second real account — not the one that owns the automation, and not a brand-new empty profile.
  3. Watch two outcomes separately: does the public reply appear, does the DM arrive.
What you seeWhere the fault is
Nothing from this rule, other rules still workTrigger side: no match, or wrong post
Nothing fires anywhere, on any ruleConnection: token, permissions, account status
Public reply posts, DM never arrivesSend side: messaging access, window, rejection
Both fire, the tester got nothingMessage requests

The mechanism is laid out in Instagram comment to DM automation. Short version: the first message to a commenter is a Private Reply addressed to the comment, not to the person, and that detail explains most of what follows.

Instagram DM automation not triggering: the comment never became an event

Ordered by how often each is the real cause.

  • You tested from your own account. Owner comments are skipped, and Instagram won't let you Private Reply to yourself. Borrow a phone.
  • The rule is pinned to a specific post. It stores a media id. Re-uploading a Reel, reposting through a scheduler, or deleting and republishing creates a new id, and the rule now watches a post nobody visits.
  • It's a collab post. The media belongs to whoever published it: if your partner hit publish, the comment events land on their connection.
  • Match mode is exact. People write "LINK 🙏", "link please", "Link." Exact matches none of those. Use contains, plus the plural and the common typo.
  • The comment was filtered. Hidden Words and the spam filter hide comments before they become events. Open the post from another account: if it isn't visible there, it isn't visible to the API. Check Settings → Hidden Words, manual list included.
  • It's a promoted post. Comments under ads don't always travel the same path as organic ones. Verify on the organic post.
  • Two overlapping rules. A comment gets one Private Reply, ever. If two rules share a keyword, one wins and the other looks dead. Merge them.

When nothing fires at all: expired token, unlinked page, revoked access

If every rule went quiet at once and you changed nothing, it's the connection. Access is a token with a shelf life, and there are six ways it dies:

  • It aged out. Long-lived tokens run about 60 days and must be refreshed. A paused tool or a server down through that window ends up with a token that can't be revived, only re-authorized.
  • The password changed. Every token for that account dies instantly. Same after a security checkpoint or account recovery.
  • Access was revoked in the app. Settings → Apps and websites, and separately business tools → Connected tools. Anyone with the login kills it in two taps — including the assistant "cleaning up connected apps."
  • The account went back to personal. No professional account, no messaging API — and switching to Business again does not restore the connection by itself.
  • The linked Facebook Page changed. On Page-based connections, unlinking the Page, losing admin rights, or a Business Manager ownership transfer kills the token while the Instagram account looks normal. It costs people days: Instagram shows no symptom.
  • Messaging access is off. Instagram app → Settings → Messages and story replies → Connected tools → Allow access to messages. With it off, comment events still arrive and public replies still post while every DM fails. Public reply yes, DM no — check here first.

No tool can repair an invalid token from its own side; reconnecting through Meta's login window is the only fix. Chatonaut uses that same window, which is why we never ask for your Instagram password — services that do are driving a browser as you, and that's the category that gets accounts restricted.

Instagram automation stopped sending DMs: read the rejection

When the trigger fires and the send fails, the delivery log carries an error code:

CodeWhat it meansWhat to do
190Token expired or invalidatedReconnect the account. Nothing else works.
10 / 200Permission missingA box was unchecked during authorization, or messaging access is off.
100Bad parameter — a comment id that's gone or already answeredThe comment was deleted, or another tool used your one Private Reply.
551Recipient unavailableThey blocked you, deleted the profile, or restrict messages from strangers. Nothing to fix.
2534037Outside the 24-hour windowThe conversation went cold. You can't reopen it.
613 / 4Rate limitedAbout 200 messages an hour per account. Let the queue drain; retries make it worse.

That limit gets misdiagnosed as an outage. It belongs to your account, not the software: a Reel pulling three thousand keyword comments delivers over several hours, in order, and no plan anywhere raises the ceiling. A vendor claiming otherwise is describing a queue.

Why is my auto DM not working on Instagram when the timing looks fine?

Because "fine" usually means the wrong window. Three states, only three: a comment gives you seven days and one Private Reply (text or buttons, no attachments); an incoming DM, story reply, or button tap gives you 24 hours, refreshed by each new message in; a follow, like, save, or story view gives you nothing.

The trap is the second one expiring silently: someone comments Monday, replies Monday evening, and your follow-up fires Wednesday — rejected, because the 24 hours ran out Tuesday. You'll also see advice to stretch that window with the HUMAN_AGENT tag; Meta explicitly forbids applying it to automated messages, and it costs apps their permissions. The full map is in Instagram DM automation rules.

Comment to DM went to message requests — is that broken?

No, and it's the failure that costs the most, because every log line says success. Messages from an account someone doesn't follow land in the requests section, usually with no push notification and often with the preview hidden — a folder people open once a month.

  • Say it in the public reply and the caption: "sent — check your message requests."
  • Ask for a one-word reply. The moment they answer, the thread moves to the main inbox and a 24-hour window opens — which is when you can send the file a Private Reply can't carry.
  • Don't open with a bare URL. In a hidden-preview request, a link with no sentence around it reads as spam and gets deleted unopened.

Instagram automation stopped working after reconnect: what reconnecting resets

Reconnecting is the standard fix and brings its own failures. Check four things:

  1. Every permission box was approved. Meta's window lets you uncheck individual scopes. Uncheck the messaging one and the connection still succeeds, the account still shows as connected, and DMs never send.
  2. Messaging access is back on in the Instagram app. Re-authorization doesn't guarantee the toggle survived — the top cause of "it worked before the reconnect."
  3. The old connection is gone. If a previous tool is still authorized, both receive the comment and both try to answer. One wins the single Private Reply; the other logs errors.
  4. Rules still point somewhere real. Post-scoped rules survive — media ids don't change — but rules referencing an account record inside the tool may need re-selecting.

What reconnecting cannot do is hand your history to a different product: user ids are scoped to the app that received them, so switching tools restarts the address book. Chatonaut imports past conversations on connect, so threads are readable in the Instagram inbox from day one — but a closed window stays closed.

Instagram bot not replying to comments — where do I look first?

Check the public reply separately from the DM; they're different permissions. Public replies also fail when comments are off for that post, when the comment sits several levels deep in a thread, or when you already answered it manually. If both went quiet at once across every post, skip the rules — that pattern is a token, not a rule.

Why did my Instagram automation stop sending DMs overnight?

Three causes cover nearly all of them: the token hit expiry and the refresh didn't run; someone changed the password or passed a security checkpoint, which kills tokens instantly; or the account crossed its hourly ceiling and the queue is still draining. The first two log as 190, the third as 613. None is fixed by editing the automation.

Can I still DM someone after the seven-day window closed?

No. Not through the API, not with any tool, not on any plan. After seven days that person is reachable only if they write to you first. It's also why "auto DM everyone who commented last month" isn't a feature anywhere: mass messaging followers and cold first messages are not permitted on Instagram, and products that appear to do it are automating a browser session on your account.

Would Instagram's built-in automation avoid all this?

No. The windows, the one-reply-per-comment rule, the requests folder, and the hourly ceiling belong to the platform, so they apply there too — with fewer keywords, no branching, and nothing to inspect when a send fails. The comparison is in Instagram native automation vs third-party tools.

What to do once it works again

Keep a live test post — one rule, one keyword — and comment on it from a second account after every reconnect, password change, or team handover. Fifteen seconds, and it catches a silent token failure before a launch does. And don't let the funnel end at the first DM: once the person replies, the window is open, an AI agent can answer from your knowledge base and hand off to a human, and the thread sits in the same inbox as Telegram and website chat. Plans are on the pricing page.

Try it on your own account

Connect your Instagram account and let the bot answer comments and DMs while you sleep. Free plan, no card needed.

Get started free