Skip to main content

Understanding the WhatsApp 24-Hour Service Window

Summary​

To protect WhatsApp users from spam and maintain a high-quality messaging ecosystem, Meta strictly enforces the WhatsApp 24-Hour Customer Service Window.

This policy dictates when businesses can send free-form messages versus when pre-approved Message Templates are required. Wabixo provides a live WindowTimer in every conversation, automatic composer lockout protections, and time-window inbox filters to ensure full compliance with Meta's messaging policies.


1. How the 24-Hour Service Window Works​

The 24-Hour Cycle Step-by-Step:

  1. Customer Sends Message: The customer messages your business (e.g. "Hi, what are your service hours?"). A 24-hour service window immediately opens (Timer: 24:00:00).
  2. Open Window Communication: Agents and bots can send free-form text, AI translations, and attachments without Meta per-template charges or pre-approval.
  3. Window Expiration: If 24 hours pass without any further customer message, the window closes (Timer: Window Expired). Free-form messaging is locked to protect your account.
  4. Template Re-engagement: The agent sends an approved Meta WhatsApp Template (e.g. a follow-up or utility alert).
  5. Fresh Window Opens: As soon as the customer replies to the template, a fresh 24-hour window starts (Timer resets to 24:00:00).

The Golden Rule of the 24-Hour Window:​

  1. Inbound Triggers the Window: Every time a customer sends an inbound message to your business phone number, a 24-hour timer starts or resets to a full 24:00:00.
  2. Outbound Does NOT Reset the Window: Messages sent by agents or automated bots do not extend or reset the 24-hour window. Only messages sent by the customer reset the countdown.
  3. Template Re-engagement: If the window expires, agents cannot send free-form messages. You must send a pre-approved WhatsApp Message Template. Once the customer replies, a fresh 24-hour window opens.

2. Active Window vs Expired Window​

FeatureActive Window (< 24 Hours)Expired Window (> 24 Hours)
Custom Free-form TextAllowed without restrictionBlocked
Media & Document AttachmentsAllowed (PDFs, Images up to 10 MB)Blocked
Quick Replies (/ shortcuts)AllowedBlocked
AI Language Converter & RecommendsAllowedBlocked
Meta Pre-Approved TemplatesAllowedMandatory
Internal Stream NotesAllowed (Internal only)Allowed (Internal only)

3. Reading the Live WindowTimer in the Chat Header​

In the active conversation header, Wabixo displays a real-time countdown badge that updates every second:

+-------------------------------------------------------------------------------+
| [Avatar] Ramesh Kumar (+91 98765 43210) [ Clock 03:45:12 ] [Assignee v] |
+-------------------------------------------------------------------------------+

WindowTimer Status Colors:​

  • Active (Green Badge — Clock icon):
    More than 1 hour remains (diff > 3600s). Displays a live countdown in HH:MM:SS. Free-form messaging is fully functional.
  • Urgent Warning (Orange Badge — Clock icon):
    Less than 1 hour remains (diff < 3600s). Alerts agents to secure a customer response or conclude the inquiry before the free messaging window closes.
  • Window Expired (Red Badge — AlertCircle icon):
    Displays "Window Expired". Free-form messaging is locked.

Hover Tooltips:​

Hover your mouse over the WindowTimer badge to inspect exact clock times:

  • While Active: Displays the projected expiration clock time and remaining countdown (e.g., Expires at 04:30 PM (03:45:12 remaining)).
  • When Expired: Displays how long ago the window closed (e.g., Expired 2h 15m ago (at 11:20 AM)).

4. Expired Window Composer Lockout Protection​

When a conversation's 24-hour window expires, Wabixo automatically protects your team from Meta API rejection errors:

+-----------------------------------------------------------------------------------------+
| [ AlertCircle 24H WINDOW EXPIRED ] |
| You can only send approved templates to re-open the conversation. |
| |
| [ LayoutTemplate Select Template ] |
+-----------------------------------------------------------------------------------------+
  1. Composer Concealment: The free-form text textarea, formatting buttons, and attachment uploaders are cleanly replaced by an expired session alert.
  2. Select Template Action: Clicking the primary Select Template button opens the Meta Template library modal.
  3. Template Dispatch: Agents select an approved Utility or Marketing template, fill in any required variables, and send it to the customer.
  4. Instant Re-Opening: As soon as the customer responds to the template, the composer unlocks instantly in real time.

5. Filtering Inboxes by Window Expiry​

In the left sidebar of the Team Inbox, agents can prioritize conversations based on window freshness:

24-Hour Window Filter:
( ) Active (24h)
( ) Expired (24-48h)
( ) Expired (48h+)
(o) All Time
  • Active (24h): Displays only conversations with open, unexpired service windows. Ideal for agents handling live support queues.
  • Expired (24-48h): Displays conversations that lapsed within the past 1 to 2 days. Perfect for sending follow-up utility templates or satisfaction checks while the lead is still warm.
  • Expired (48h+): Shows long-dormant customer threads.
  • All Time: Removes the window constraint and displays all conversations.

6. Background Auto-Template on Solve​

Organizations can configure automated closing templates in Settings → Chat Configuration:

  • When an agent marks an expired pending chat as Solved, Wabixo can automatically transmit a configured expire_chat closing template in the background.
  • This ensures the customer receives a professional closing acknowledgment and satisfaction rating prompt even if their free window had lapsed.

7. Customer Troubleshooting & FAQs​

Problem: My message input box is gone and replaced by "Select Template"​

  • Why it happens: The customer has not replied within the last 24 hours, so Meta has closed the free-form customer service window.
  • How to resolve: Click Select Template, choose an approved template, and send it. Once the customer replies to your template, the text input will automatically restore.

Problem: I sent multiple replies to the customer, but the timer keeps counting down​

  • Why it happens: Outbound agent messages do not reset Meta's 24-hour window. Only inbound messages sent from the customer's phone reset the timer.
  • How to resolve: Prompt the customer with a quick question (e.g., "Does that look good to you?") so their reply refreshes the window.

Problem: Can I leave Stream Notes on an expired conversation?​

  • Yes. The Stream tab in the right-hand panel is strictly internal to Wabixo. You can add internal notes, @mention colleagues, or change chat tags at any time, even if the WhatsApp 24-hour window is expired.