Messenger Platform · error code

Messenger error 10: Message sent outside the 24-hour window

Permanent - do not retryHTTP 400Messaging window & tags

Last verified against Meta for Developers - Messenger Platform error codes

What Messenger returns
This message is sent outside of allowed window.

What error 10 means

Code 10 with subcode 2534022 is the plain statement of the standard messaging window rule. Meta's error-codes table pairs the message "This message is sent outside of allowed window" with the one-line explanation: "Apps can only send a message to a customer within 24 hours of receiving the customer's message." The person last engaged more than 24 hours ago, and the send carried no tag or opt-in token that would authorize it anyway.

This subcode appears throughout the current Messenger Platform documentation generation (it sits in the 253xxxx block shared with the Instagram messaging API, where the same window applies), while 2018278 is its older Messenger-specific sibling with the "learn more about the new policy" wording. Which one you receive varies by surface and API version; handle them identically. On the Instagram side the same rule and subcode family are covered in the Instagram messaging guide.

Everything else about the request was acceptable: token, permissions, recipient. The remedy set is the standard one, get the person to re-engage (any inbound message, postback or comment reopens the window for 24 hours), use the HUMAN_AGENT tag within 7 days for human escalations if your app is approved for it, or use an opt-in mechanism collected earlier. Since April 27, 2026 the retired update tags are not an option; they fail with code 100.

What it looks like

{
  "error": {
    "message": "(#10) This message is sent outside of allowed window.",
    "type": "OAuthException",
    "code": 10,
    "error_subcode": 2534022,
    "fbtrace_id": "Fz54k3GZrio"
  }
}

Why it happens

  • Replying to a conversation whose last inbound event is older than 24 hours.
  • Follow-up automations (order updates, reminders) sent without a tag or opt-in token.
  • Window bookkeeping measured from the first rather than the latest user interaction.
  • Queued messages composed inside the window but delivered after it closed.
  • Instagram-and-Messenger shared codebases assuming a longer window than either platform grants.

How to fix Messenger error 10

  1. 1Verify the person's latest inbound timestamp; older than 24 hours means this untagged send cannot succeed.
  2. 2Use HUMAN_AGENT (messaging_type MESSAGE_TAG) within 7 days for human replies, once App Review has granted the permission.
  3. 3Convert predictable follow-ups to one-time notification opt-ins requested while the window is open.
  4. 4Invite re-engagement through other surfaces: m.me links in email or SMS bring the person back and reopen the window.
  5. 5Drop the message from the queue after the terminal failure; retries are deterministic failures.

How to stop it recurring

One window gate for all outbound traffic: compute eligibility at send time from the latest qualifying event, and select untagged, tagged or opted-in delivery automatically. Collect opt-ins at conversation peaks, right after a purchase or booking, when consent is natural. The window-opening actions and every escape hatch are tabulated in the Messenger limits reference; the policy history is in the troubleshooting guide.

Official reference: Meta for Developers - Messenger Platform error codes. See all Messenger error codes or the Messenger limits and quotas.

Related codes

Error 10 - quick answers

What does Messenger error 10 mean?

Code 10 with subcode 2534022 is the plain statement of the standard messaging window rule.

How do I fix Messenger error 10?

1. Verify the person's latest inbound timestamp; older than 24 hours means this untagged send cannot succeed. 2. Use HUMAN_AGENT (messaging_type MESSAGE_TAG) within 7 days for human replies, once App Review has granted the permission. 3. Convert predictable follow-ups to one-time notification opt-ins requested while the window is open. 4. Invite re-engagement through other surfaces: m.me links in email or SMS bring the person back and reopen the window. 5. Drop the message…

Should I retry after error 10?

No. Retrying the same request produces the same error; the condition has to be fixed first. Treat it as a permanent failure for that message and surface it, rather than looping.

Stop debugging Messenger by hand

Connect the channel through Conferbot: tokens, webhooks and retries are handled, failures show as readable status.