Skip to content
Meta Business PartnerGlossary term

Session vs Template Messages on the WhatsApp Business API

On the WhatsApp Business API there are two ways a business can send a message: a **session message** (free-form text, media, or interactive content) and a **template message** (a pre-approved, structured format). The difference comes down to timing and permission. Session messages can only be sent inside an open 24-hour service window that a customer opened by messaging you. Template messages are the only way to reach a customer outside that window or to start a conversation first. Confusing the two is one of the most common reasons businesses see messages fail to send, get templates rejected, or run up costs they did not expect.

Free-form; only valid inside an open 24h window
Session message
Pre-approved; required to initiate or reply outside 24h
Template message
A free service window, not a billing unit
24-hour window
Per delivered message, by category (since 1 Jul 2025)
Billing basis
Reviewed by Meta before it can be sent
Template approval
Opens each time the customer sends you a message
Window trigger

In one line

Session messages are free-form and can only be sent inside the 24-hour service window a customer opens by messaging you. Template messages are pre-approved formats and are the only way to initiate a conversation or reach someone outside that window.

What a session message actually is

A session message is any message you send while a customer service window is open. The window opens the moment a customer sends your business a WhatsApp message — a text, a button tap, a reaction, or any inbound event — and it stays open for 24 hours from that last inbound message. Inside the window you can reply freely: plain text, images, PDFs, location pins, interactive list and reply-button messages, and more, with no template and no pre-approval. This is what makes real support conversations feel natural. The catch is that the window is strictly reactive. If the customer goes quiet and 24 hours pass, the window closes, and any free-form message you try to send will simply be rejected by the API until the customer messages you again or you re-open contact with a template.

  • Opens on any inbound message from the customer
  • Lasts 24 hours from the customer's most recent message
  • Allows free-form text, media, and interactive content
  • Each new inbound message resets the 24-hour clock
  • Cannot be used to message someone first

What a template message is and why it needs approval

A template message uses a format you submit to Meta in advance and that Meta reviews before it can be sent. Because a template can reach someone who has not messaged you recently — or ever in the last 24 hours — Meta holds it to a higher bar to protect users from spam. Templates support variables (like a customer name, order ID, or delivery date), header media, quick-reply and call-to-action buttons, and are categorised as marketing, utility, or authentication. That category is chosen at submission and matters, because it determines both how strictly the template is reviewed and how the message is priced. A template is the only lawful way to start a conversation with a customer or to re-engage one after the 24-hour service window has closed.

  • Submitted to Meta and approved before first use
  • Supports variables, media headers, and buttons
  • Categorised as marketing, utility, or authentication
  • Required to initiate contact or message outside the window
  • Rejected if it looks like spam, is miscategorised, or breaks formatting rules

How the two work together in a real conversation

In practice you almost always use both. A typical flow starts with a template — say a utility template confirming an order or an authentication template sending a one-time code. When the customer replies, their inbound message opens the 24-hour service window, and from that point you can answer with free-form session messages: follow-up questions, tracking updates, images, whatever the conversation needs, at no template-approval friction. If the conversation stalls and the window lapses, you drop back to a template to reopen it. Thinking of it this way — templates to open or reopen a door, session messages to hold the conversation once it is open — is the mental model that keeps most teams out of trouble.

How billing relates to session and template messages

It is important not to confuse the message type with how you are charged. Since 1 July 2025, Meta bills the WhatsApp Business API per delivered message, priced by the message's category — marketing, utility, or authentication — rather than by 24-hour conversation. The 24-hour service window still exists, but it is now a free service window that governs whether you may send free-form session messages; it is not itself a billing unit. Practically: session (free-form) messages sent inside an open window are generally not charged as separate billable business-initiated messages — though only until 30 September 2026, as service messages become chargeable from 1 October 2026 — while template messages are billed per delivered message at their category rate. InfiQ shows this to you as transparent ₹ pricing (ex-GST), so the cost of each category is visible before you send.

  • Billing is per delivered message, by category — not per conversation
  • The 24h window is a free service window, not a billing unit
  • Template messages are billed at their marketing/utility/authentication rate
  • Choosing the wrong category can change what you pay and risk rejection

Common mistakes teams make

Most session-vs-template errors trace back to a few recurring misunderstandings. Teams try to send a free-form message after the window has quietly closed and are surprised when it fails. They submit a promotional message under the utility category to try to save cost, and it gets rejected or reclassified. They assume opening a window with one customer lets them message everyone. Or they hardcode content into a template that should have been a variable, forcing a fresh approval every time a detail changes. Getting the model right up front — and structuring templates cleanly with variables — avoids template rejections, failed sends, and avoidable cost.

  • Sending free-form messages after the 24h window closed
  • Miscategorising a marketing template as utility to cut cost
  • Assuming one open window applies to other contacts
  • Hardcoding values that should be template variables
  • Forgetting that only templates can start a conversation

See InfiQ pricing

Talk to InfiQ

See how this works on InfiQ

Tell us your use-case — we’ll show it running in a sandbox, usually within a working day.

Step 1 of 2
WhatsApp

Protected by invisible spam checks · replies within 1 working day

Frequently asked questions

What is the difference between a session and a template message?+
A session message is a free-form message (text, media, or interactive content) you can only send while a customer's 24-hour service window is open. A template is a pre-approved, structured message that is the only way to start a conversation or reach a customer after the window has closed.
When does the 24-hour window open?+
It opens every time the customer sends your business a message — a text, a button tap, or another inbound event — and lasts 24 hours from their most recent message. Each new inbound message resets the clock.
Can I send a session message to start a conversation?+
No. Session (free-form) messages are only valid inside an open service window that the customer opened. To reach someone first, or after the window closes, you must use an approved template message.
Why do templates need approval but session messages do not?+
Templates can reach people who have not recently messaged you, so Meta reviews them in advance to protect users from spam. Session messages happen inside a window the customer opened by contacting you, so they need no pre-approval.
Are session messages free?+
Not exactly. Since 1 July 2025 WhatsApp bills per delivered message by category rather than per conversation. Free-form session messages sent inside an open window are generally not charged as separate billable business-initiated messages — but this only holds until 30 September 2026, as service messages become chargeable from 1 October 2026 — and the 24-hour window is a free service window, not a billing unit.
Do session and template messages cost the same?+
They are handled differently. Template messages are billed per delivered message at their category rate — marketing, utility, or authentication. InfiQ shows these as transparent ₹ pricing (ex-GST) so you can see each category cost before sending.
What happens if I try to send a free-form message after the window closes?+
The API rejects it. You will need to wait for the customer to message you again, which reopens the window, or send an approved template to re-engage them.
Can one open window let me message all my customers?+
No. The 24-hour window is per-contact. It only lets you send free-form messages to the specific customer who messaged you; every other contact needs their own open window or a template.

Not sure which message type your flow needs?

An InfiQ onboarding specialist will map your templates and service windows to your exact use case — book a quick call and get set up right the first time.