The WhatsApp 24-hour customer service window, explained

When you can send free-form WhatsApp messages, when you need an approved template, what each costs, and why a "sent" message sometimes never arrives.

September 19, 2026 · 2 min read

The single most confusing rule in the WhatsApp Business API is the 24-hour customer service window. Get it wrong and messages silently disappear; get it right and most of your replies cost nothing.

The rule in one sentence

For 24 hours after a customer messages you, you can reply with anything. After that, you can only message them with an approved template.

Every new message from the customer restarts the 24-hour clock.

Inside the window: free-form messages

While the window is open you can send free-form (a.k.a. session) messages: normal text, images, documents, buttons and list menus — whatever the conversation needs. There's no template and no review.

These service messages are free under Meta's pricing — you pay nothing to Meta for replying to a customer inside the window.

Outside the window: templates only

Once 24 hours pass without a message from the customer, the window closes. To reach them now you must use an approved template — a pre-reviewed message such as an order update or appointment reminder (how to get templates approved). Template messages are charged by Meta per message, based on the category and the recipient's country (WhatsApp API pricing).

When the customer replies to your template, a fresh 24-hour window opens and you're back to free-form.

The trap: "sent" but never delivered

Here's the part that catches everyone. If you send a free-form message outside the window, the API does not refuse it. It accepts the request, returns a message ID — and then the message is never delivered. Your logs say "sent"; the customer sees nothing.

So "the API accepted it" is not the same as "it arrived". You need either delivery receipts (via the webhook) or to know the window state before you send.

What this means in practice

Situation What to send Cost from Meta
Customer asked a question 2 hours ago Free-form reply Free
Customer messaged yesterday morning (over 24h) Approved template Per-message template rate
You want to start a conversation (broadcast, reminder) Approved template Per-message template rate
Customer replied to your template 10 minutes ago Free-form reply Free

How SendFromChat handles it

  • The inbox shows every conversation's window status — "Reply window open until 3:40 PM" or "Reply window closed" — and switches the reply box to template mode when it's closed.
  • Before your AI assistant sends anything, it calls check_recipient, which returns whether the window is open, any approved templates you can use, and a recommendation: reply for free if the window is open, use an existing template if not, and only draft a new template when nothing fits.
  • Free-form sends are refused when the window is known to be closed, instead of being accepted and silently dropped.
  • Auto-replies and chatbot flows only ever answer an incoming message, so they're always inside the window — and free.

Do this from your AI assistant

SendFromChat connects Claude, ChatGPT, Cursor or any MCP client to the WhatsApp Business API — templates, bulk sends, inbox, chatbots and sequences, just by asking. 30 days free, no card.

Start free