Messenger Platform Guide
Think of Messenger like a phone line for your Facebook Page that comes with house rules — Meta decides when you can call back, how fast you can dial, and what you're allowed to say. This guide walks through those rules in plain language so your agent stays in good standing. You don't need to be a developer to follow along.
This page covers Meta's rules. For step-by-step instructions on connecting Messenger to your agent, see Messenger Setup.
What is the Messenger Platform?
A Page is your business's public profile on Facebook — the one people follow and message. The Messenger Platform is what lets your agent answer the messages that land in that Page's inbox. When someone messages your Page, taps a "Send Message" button on your website, or opens a chat through an m.me link (a short web link that opens a Messenger chat), your agent can reply automatically.
Messaging through Messenger is free. Meta doesn't charge per message — you only pay for your own setup.
Before you start
Before connecting Messenger, make sure all of these are true:
- You have a Facebook Page — Messenger runs on Pages, not personal profiles.
- You have a Meta Business account with an admin or editor role on the Page. (Meta Business is the free workspace where you manage your Pages, ads, and other business assets.)
- Your Page is set to receive messages — so Meta knows to forward incoming messages to your agent.
- Your connection has been reviewed and approved by Meta for general use (what Meta calls Standard Access). Until then, only your own team can message it.
What your connection is allowed to do
When you connect, Meta asks you to approve a set of permissions. In plain terms, they let your agent:
- Send and receive messages through your Page
- Manage the automatic alert Meta sends Nirvai when a new message arrives (a webhook — Meta's instant ping the moment something happens)
- Read basic engagement data so the agent knows who it's talking to
- Use message tags when you need to message someone outside the normal reply window (more on tags below)
Until Meta approves your connection for general use, you can only message people on your own team (the admins and testers of your app). You must get that approval before you can reach real customers.
The 24-hour reply window
Think of it as a conversation timer. When someone interacts with your Page, a 24-hour clock starts:
- While the timer is running: You can reply with any kind of message — text, images, videos, quick replies, buttons, carousels — freely.
- After the timer runs out: You can only reply using an approved message tag (more below). A message tag is Meta's permission slip for a specific, non-promotional reason to reach back out.
What restarts the timer?
Any of these resets the 24-hour clock:
- The person sends your Page a message
- The person taps a button inside a Messenger chat
- The person clicks a "Send Message" button on your website (Meta's Send-to-Messenger button)
- The person opens a chat through an m.me link
Clicking an ordinary web button (one that isn't a Messenger button) does not restart the timer. Only real Messenger interactions count.
Reaching people after the 24-hour window
As of April 27, 2026, Meta retired three of the most-used message tags. The old CONFIRMED_EVENT_UPDATE, POST_PURCHASE_UPDATE, and ACCOUNT_UPDATE tags now fail with error code 100 and no longer work. Use Utility Messages (below) for transactional updates instead.
Today there are two approved ways to message someone after the 24-hour timer has run out:
1. Utility Messages (the replacement for retired tags)
Launched in July 2025, Utility Messages are pre-approved messages for transactional, non-promotional updates. Think of them like fill-in-the-blank form letters that Meta checks and approves before you can send them.
Use Utility Messages for:
- Order confirmations, shipping updates, tracking info
- Appointment reminders and event reminders
- Account notices (password changes, subscription renewals)
- Delivery notifications, return or refund status
Key rules:
- No marketing of any kind — no deals, coupons, or upsells
- They use fill-in-the-blank spots like
{{customer_name}}or{{order_id}}so you can personalize each one - Your own messages are usually approved "within seconds"
- Currently available in the United States, Vietnam, Thailand, and the Philippines (rolling out worldwide)
You can also use Meta's library of ready-made messages without writing your own — it's the fastest way to get started.
2. The HUMAN_AGENT tag (still active)
- Use it for: Replies a real person writes when support needs more time
- Extends the window to: 7 days
- Requires: Special approval from Meta
- Don't use it for: Automated agent replies, marketing, or promotions
Using the HUMAN_AGENT tag for anything other than genuine, human-written support will get your messaging permissions revoked.
Retired tags — what NOT to use
If you see an older tutorial mentioning any of these, it's out of date:
- CONFIRMED_EVENT_UPDATE — retired, fails with error 100 as of April 27, 2026
- POST_PURCHASE_UPDATE — retired, fails with error 100 as of April 27, 2026
- ACCOUNT_UPDATE — retired, fails with error 100 as of April 27, 2026
- Recurring Notifications — retired worldwide as of February 2026
All of these are now replaced by Utility Messages.
Message types — what can you send?
Text messages
Plain text, up to 2,000 characters (double what Instagram allows).
Media messages
| Type | Supported formats | Maximum size |
|---|---|---|
| Images | JPEG, PNG, GIF | 5 MB |
| Videos | MP4, 3GP | 16 MB |
| Audio | MP3, AAC, MP4, MPEG, AMR, OGG, OPUS | 16 MB |
| Documents | PDF, DOC, DOCX, XLS, XLSX, PPT, PPTX, TXT | 100 MB |
Messenger supports up to 30 images per message (Instagram allows only 10). The smallest image dimension is 200×200 pixels.
You can upload a piece of media once and reuse it in future messages without uploading it again — this speeds up delivery.
GIFs larger than about 8 MB often fail to display inside the chat. For big GIFs, host them elsewhere and share a link.
Interactive messages
- Quick Replies: Up to 13 tappable options, each label up to 20 characters
- Button Templates: Up to 3 buttons per message (link, in-chat action, call, sign-in, or share)
- Generic Templates (Carousels): Up to 10 cards, each with an image, title, description, and buttons
- List Templates: A vertical list of tappable rows
- Media Templates: An image or video with buttons over it
- Receipt Templates: A neatly formatted order receipt
- Reactions: Send or remove an emoji reaction on a message
- Sender Actions: Show a typing indicator or mark messages as seen
How fast can you send?
Messenger lets you send much faster than Instagram (roughly 3× faster for text). A rate limit is simply how many messages Meta lets you send before it makes you slow down.
| Action | Limit |
|---|---|
| Text messages, links, reactions, stickers | 300 per second per Page |
| Audio or video messages | 10 per second per Page |
| Conversation lookups | 2 per second per Page |
| Private replies to post or reel comments | 750 per hour per Page |
| Page menu and profile updates | 10 every 10 minutes |
| General hourly practical limit | 200 × number of contactable people |
What is a "contactable person"?
Anyone who has interacted with your Page in the past 24 hours.
If you send too fast, you'll see error code 613. Wait, then retry — and increase the wait each time. Don't retry instantly; that only makes Meta slow you down harder. Hitting the limit over and over can temporarily disable your Page's inbox.
The 30-second response rule
If your connection is registered as an automated bot, Meta enforces a strict response-time rule:
- Your agent must respond to anything a person sends within 30 seconds — text, button taps, quick replies, or menu choices
- Missing this triggers a warning in your Page Support Inbox, with a 7-day grace period to fix it
- Repeatedly missing it leads to messaging restrictions
Always send at least a "typing…" indicator or a quick acknowledgement right away, even if the full reply takes a moment longer to prepare.
Policies & best practices
What you cannot send
- Promotions outside the 24-hour window — even with tags. Tags are for specific non-promotional reasons only
- Messages to people who haven't opted in — someone must interact with your Page first
- Requests for sensitive personal data — passwords, financial details, or medical information
- Newsletter or broad subscription messages — Meta retired this in March 2020 (only news publishers with a "NEWS" category can still use it)
- Anything that breaks Meta's Community Guidelines
Best practices
- Get clear permission first — use Meta's Send-to-Messenger button, m.me links, or in-person sign-up
- Be upfront about automation — let people know they're chatting with a bot
- Always offer a way to reach a human — include a "Talk to an agent" option
- Use message tags honestly — match the exact reason; don't bend the rules
- Honor opt-outs immediately — if someone says "stop", stop
- Reply quickly — people expect Messenger replies within minutes
- Watch your quality — keep an eye on blocks and reports, and adjust
Meta retired broad subscription messaging in March 2020. Old tutorials that show you how to "subscribe people to a newsletter" through Messenger no longer work for most uses.
Pricing — how much does it cost?
Good news: Messenger is free.
- No per-message charges from Meta
- No subscription fee for the connection itself
- Free for all standard messaging inside the 24-hour window
- Free for messages sent with approved tags
- Your only costs are your own setup and any other tools you choose to use
Quick reference
| Topic | Key number |
|---|---|
| Text message limit | 2,000 characters |
| Image size limit | 5 MB (JPEG, PNG, GIF) |
| Video size limit | 16 MB (MP4, 3GP) |
| Audio size limit | 16 MB |
| Document size limit | 100 MB (PDF, Word, Excel, PowerPoint) |
| Max images per message | 30 |
| 24-hour window | Restarts with every interaction |
| HUMAN_AGENT extension | 7 days (human replies only) |
| Quick replies max | 13 options |
| Buttons per template | 3 |
| Generic template cards | 10 (carousel) |
| Text message rate | 300/sec per Page |
| Audio/video rate | 10/sec per Page |
| Response-time rule | 30 seconds |
| Cost | Free |
Troubleshooting
| Problem | Fix |
|---|---|
| "Message not sent — outside allowed window" (error 10, subcode 2018278) | You're replying more than 24 hours after the person's last message. Wait for them to message again, or use a Utility Message (for transactional updates), or the HUMAN_AGENT tag (for real human support, up to 7 days) |
| "Tag is no longer supported" (error 100) | You're using a retired tag (CONFIRMED_EVENT_UPDATE, POST_PURCHASE_UPDATE, or ACCOUNT_UPDATE). Switch to Utility Messages — Meta's replacement, approved within seconds, covering the same uses |
| "User has blocked the Page" (error 551) | The person has blocked your Page. There's nothing you can do — they have to unblock it |
| "Permission error" (error 200) | Your connection is missing a required permission. Check that Meta has approved your connection for general use, that your Page is set to receive messages, and that your access pass is still valid |
| No messages are arriving | Confirm your Page is set to receive messages, that the automatic alert (webhook) reached Nirvai, and — if you're still in testing mode — that you're messaging from your own team account |
| Sign-in pass stopped working | This happens if the Page admin changed or the pass was revoked. Reconnect Messenger to refresh it |
| Stuck in testing mode | You haven't finished Meta's review yet, so only your own team can message. Submit your connection for review in Meta's developer dashboard — it usually takes a few days |
What's next
To connect Messenger to your agent, see Messenger Setup. To reuse one connection across WhatsApp, Instagram, and Messenger, see Meta Platform Credential. For Meta's full developer reference, see the official Messenger Platform documentation.