Results and optimisation · 2 min read
Why a DM did not arrive
Understand queued, expired, failed, and uncertain sends, and find the next check.
Check the history first
A successful preview or saved rule is not a sent message. Find the specific run in the history and compare its account, time, and post. Ask the recipient to check message requests too: a new conversation from an account they do not follow may appear there. A confirmed send in DMFLOW means Meta returned a message confirmation, rather than proof that the person read it.
Understand the statuses
- Queued: the message is waiting for an eligible attempt. The reason may be the monthly allowance or an API rate-limit delay. Avoid creating a duplicate.
- Expired: the seven-day window for a comment's first private reply or the 24-hour window for an ordinary DM has closed. Raising the monthly allowance does not reopen that window.
- Cancelled: check whether the rule was disabled, the account was disconnected or changed, or the contact was deleted. These safeguards are checked again immediately before sending.
- Failed: read the reason. Invalid authorization needs a renewed connection; a Meta rejection is not confirmed delivery.
- Uncertain: the request may have been accepted without a usable confirmation. DMFLOW does not automatically repeat it, to avoid sending twice. Check the Instagram conversation manually first.
Did a later step stop?
A comment's initial private reply does not open an ordinary messaging conversation by itself. The person must actually respond. Opening a website link is not such a response. A follow check or email question can also wait for its condition; an unknown following result does not count as success.
If the issue continues, share the test time and visible history reason with the owner. Never share an access token.
