Troubleshooting
The real questions answered: why an automation didn't fire, why the agent said it doesn't know, why a button is missing, and what to check first.
The questions people actually ask, with the check to run first.
My automation didn't fire
Work down this list — it is roughly in order of how often each one is the answer.
- Is it Live? A Draft badge means it is saved but not running. Click Set live on its row.
- Is a higher-priority automation catching it first? First match wins in priority order. Use the ↑/↓ arrows on the Automations list — they appear when two automations of the same trigger type share a keyword, and only while the list is on the Priority (default) sort with no search or channel filter active.
- Did they type an excluded word? The but doesn't contain list wins even when your keyword matched.
- For a comment trigger — is it bound to that post? If the scope is Specific posts or reels, only the posts you picked are listened to.
- For a story reply — is it set to specific stories? New story automations listen on every story. An older one set to Specific stories can't fire — open it and press Listen on every story.
- Has the contact opted out? A
STOP(or any of your opt-out keywords) revokes consent, and nothing automated goes to them until they send an opt-in keyword. - Is the workspace paused? Settings → Workspace → Pause everything stops every automation, flow and agent reply. A banner says so.
- Is Instagram healthy? Check the card in Settings → Channels for Needs attention or Reconnect needed.
- Is it a new-follower trigger? It runs on Meta's Follow-to-DM beta — the card on the Automations list shows the current state. "Awaiting Instagram access" means it cannot fire yet; once armed, Meta caps it at one welcome per follower.
- For comment triggers, three platform limits: only comments made after the automation went live are processed; Instagram allows a private reply only within 7 days of a comment; and on collab posts comment events go to the original author's account, so a collaborator's automation never sees them.
- Was the comment on an ad? Comments on a boosted post's ad version, or on an ad built in Ads Manager, only fire an automation whose Where can the comment happen? is Instagram ads or Both — Organic never answers them — and whose Listen on is All posts & reels, because an ad has its own media id the post picker cannot see. The ad must run as your connected Instagram account. Replies inside a comment thread on an ad never trigger, and comments on the Facebook placements of an ad are not covered. Full walkthrough: instagram-ad-comments.md.
- Is it a Recognize intention automation? It sends your DM only when a message is worded close to your description, and many rewordings won't match. Test it with a few real example messages from a second account, and use keywords for anything that must always get a reply. See automations.md.
The AI agent isn't replying
- Is the master switch on? Agent → Overview → Reply to DMs automatically ships off. This is the single most common cause.
- Did an automation catch the message first? The agent is the last thing to see a DM. Anything your automations claim never reaches it.
- Is the 24-hour window open? Outside it, nothing can be sent to that person.
- Is the workspace paused?
- Is there any knowledge? With nothing ingested the agent still replies, but generically — it hedges ("I'll check") instead of answering with facts. Empty knowledge explains bad answers, not silence; for silence, work through the steps above.
Test it safely in the AI Playground — it answers even while everything is paused, which is exactly how you tell "the agent is broken" from "the agent is switched off".
The agent said "I don't know" / handed off
That is the designed behaviour when it cannot ground an answer: it declines to invent facts and hedges instead. It pauses the thread for a human only when Hand off when stuck is on, or a guardrail / refund escalation fired.
The fix is knowledge, not settings. Go to Analytics → Knowledge gaps (available on every plan) — it lists exactly the questions it couldn't answer. Paste the answers into Agent → Knowledge.
The AI Playground will also offer to save the answer for you and then re-ask the question, so you can watch it go from ungrounded to grounded.
A reply was blocked
If a reply broke a guardrail it was never sent, the conversation was paused, and a note was left in your Inbox saying why. Check:
- Agent → Trust & Guardrails — is the discount cap or a forbidden claim catching it?
- A ⚠ note in that conversation says why the reply was held (the blocked text itself is not shown anywhere) — guardrail blocks do not appear in Analytics or the Activity log.
- Analytics → Answered vs. held and Compliance activity — sends held by the compliance gate (window, consent, rate caps), on every plan.
Instagram says "Needs attention" or "Reconnect needed"
| Badge | Do this |
|---|---|
| Needs attention | Click Retry subscription on the card. Meta accepted the connection but isn't delivering events. |
| Reconnect needed | Click Reconnect and re-authorise. The token expired, was revoked, or scopes are partial. |
| Not on your plan | Your Free plan's one channel slot is used elsewhere. Reconnecting the same channel is always allowed. |
If the card also says Instagram may have changed how your ice breakers/menu appear, click Re-sync. It reports the outcome, and the warning stays up unless the push really landed — so a warning that is still there after a Re-sync means it genuinely didn't work, not that the page is stale. See settings.md.
Both actions need manage_connections — owner or admin.
I can't click something / a button is missing
Two possible reasons, and the product keeps them apart because they need different responses:
- Your role. The page usually explains the absence where the control would have been. See roles-and-permissions.md — ask an owner or admin.
- Your plan. The card names the plan needed and links to the plan picker. See plans-and-billing.md.
A sidebar row is missing
| Row | Why it might be hidden |
|---|---|
| Automations, Flow builder, Growth tools, Media library | Your role lacks manage_automations |
| Broadcasts | Your role lacks send_broadcast (owner/admin). Plan never hides the row — below Growth you see it and the send is refused instead |
| Community flows | The gallery is off for the deployment, or has fewer than 10 approved shares |
| Organization | Your account isn't in an enabled organization |
I can't message a customer
Their 24-hour window has closed. On Instagram there is no paid re-open mechanism — no template message buys you back in. You can only reach them once they message you again.
The Inbox header and the Contacts filter both show window state.
I deleted something by mistake
Automations → Recently deleted, at the bottom of the page. It holds deleted automations, flows and sequences for 30 days, newest first.
I saved a change and it isn't there
Did you switch workspaces with the form open? The save is refused in that case and asks you to reload — nothing is written. The workspace switcher sits in the header of the same page, so it is easy to switch with an editor open; the form keeps showing the old workspace's automation while the rest of the page moves.
Reload the page in the workspace you want, then make the change again. The same refusal covers Set live, Pause, Delete, Restore, reordering and Open as flow, and it applies to flows and sequences as well as automations — and across Settings.
If instead you are told the automation "isn't there any more", it was deleted — probably in another tab, or by a teammate. Check Recently deleted below.
My media file won't send
- Is it ready? Assets show Processing… while converting and Couldn't be converted if they failed. Only ready assets can be sent.
- Is your plan right? Media is Starter and up.
- Is the channel right? TikTok DMs can't carry voice, video or documents — only text, images and link cards.
- Is it a PDF? Instagram accepts PDF and nothing else as a document.
Revenue is empty
- Is Stripe connected in Settings → Commerce?
- Is the revenue webhook configured with its signing secret, subscribed to
checkout.session.completed,checkout.session.async_payment_succeededandcharge.refunded? - Is there an actual paid order in the last 14 days? The tile is hidden rather than showing
$0.00. - Revenue attribution needs Growth or above — below it the tile stays absent even with paid orders.
A number doesn't match another number
- The Dashboard conversation tile and the Analytics Conversations tile are both "this month" and read the same source.
- Analytics charts use the range you picked at the top; the compliance row uses your workspace's timezone week and prints its own window.
- A sparkline covers the picked range; the big number above it covers the window named in its subtitle. They are deliberately different, and the subtitle says both.
- If a card shows no line at all, the read failed. A flat line means a genuine run of zeros.
Times are wrong
Almost always the workspace timezone, in Settings → Workspace. It decides analytics week boundaries, what "tomorrow morning" means for a snooze (09:00 your time), and when a scheduled broadcast goes out. It is never your browser's timezone. One exception: sequence send windows run in UTC (Instagram doesn't expose contact timezones — the editor labels the hours UTC).
Still stuck
Use the feedback button in the bottom-right of any app page — it takes a message and a screenshot.
Try HyperDM for free
50 free conversations a month, no card. Connect Instagram and follow the guide you just read.