HSM templates (High-Structured Message) are the heart of professional WhatsApp Business. If you don't master them, you'll hit the 24-hour window the moment volume rises. This post explains what they are, when to use them, how to write them so Meta approves them, and the common mistakes that lead to rejection or account block.
The difference between a WhatsApp Business operation that scales and one that stays stuck usually lives in this point. Whoever doesn't understand templates ends up pasting text by hand inside the 24-hour window, limiting the operation to customers who wrote first. Whoever masters them runs mass campaigns with compliance.
The 24-hour window, in one line
After the customer's last interaction — a message, a button tap, any reply — you have 24 hours to respond with a free-form message. That is the "service window". Inside that window, you can send whatever you want (within Meta's policies).
After those 24 hours, you can only start a conversation with approved HSM templates. That's the rule. Without an approved template, you can't initiate a conversation with a customer who didn't write first.
The reason is direct: Meta wants to prevent spam. Approved templates mean the content went through review, which reduces abuse. The full technical definition lives in the official WhatsApp Business Platform documentation.
When to use a template vs. a free-form message
The decision is simple once you understand the pattern.
Use HSM templates for:
- Welcome after the customer signs up (first communication).
- Initial collections (the company contacts first, not the customer).
- Segmented promotional campaigns with opt-in.
- Appointment, due date or delivery reminders.
- Transactional notifications (invoice issued, order shipped).
Use free-form messages for:
- Reply to a customer-initiated conversation.
- Collection follow-ups with a customer who already replied.
- Support after the customer wrote first.
- Any interaction inside the 24-hour window.
The rule of thumb: if you initiate, use a template. If the customer initiated, free-form for 24h.
There's a tricky middle case: a conversation that runs past 24 hours. If your customer replies "let me check" and comes back a day later without writing, the window closed. To resume the conversation, you need an HSM template. That's why it pays to resolve the case within the window when you can.
How to write a template Meta will approve
Approval isn't opaque. There's a clear pattern that boosts first-try approval rates.
1. Identify the sender at the start. "Hi {{1}}, this is [Company] writing to you...". Without identification, Meta may flag it as ambiguous or spam.
2. Provide context for the message. "...about invoice #{{2}} due on {{3}}...". The customer should understand why you're writing.
3. Ask for a clear action. "Can we coordinate the payment today, or would you prefer to reschedule?". Without a clear action, the template looks like spam.
4. No empty promotional language. All caps, multiple exclamation marks, words like "LAST CHANCE", "EXCLUSIVE OFFER" without context — almost always rejected.
5. Variables with clear purpose. In the submission to Meta, each \{\{n\}\} variable must have a concrete example. "{{1}}: customer name. Example: Maria. {{2}}: invoice number. Example: F001-00543.". Without examples, Meta doesn't know what fills each slot and rejects on risk grounds.
6. Right category from the start. If you send a collections message as "Marketing" category, Meta may reject it. The category must match the real intent of the message.
Official template categories
Meta uses three categories. Each has different rules and, per its official documentation, different pricing.
Marketing. Promotional, discounts, campaigns. The strictest category. Unambiguously promotional language. The one most often rejected if poorly written. Explicit opt-in and a visible opt-out mechanism are mandatory here.
Utility. Notifications, reminders, receipts, transactional alerts. The most approval-friendly category because it has clear functional purpose. Collections often falls here when the message centers on the data (invoice, amount, due date) rather than on the promotion.
Authentication. OTP codes, identity verification. A special case with a Meta-preformatted template. Very high delivery rate.
Getting the category right from the start is critical. A marketing template disguised as utility sooner or later gets reclassified, and the account loses reputation.
Common mistakes that lead to rejection
Variables without context in the submission. If you send the template "Hi {{1}}, we confirm {{2}} for {{3}}" without explaining what fills each variable, Meta rejects. Each variable needs a concrete example.
All-caps or many punctuation marks. "!!!LAST CHANCE!!! DON'T MISS IT" is auto-flagged as spam.
Same template for marketing and utility. If you mix transactional information with a promotional call-to-action, you end up in marketing on the worst terms and lose the better approval rate.
Not reading updated policies. Meta updates policies several times a year. A template approved months ago may be rejected today if policies changed. Check the official documentation before submitting new templates.
Relying on a single approved template. If Meta suspends a template mid-campaign due to quality degradation, you're stuck. Having pre-approved variants is standard practice in serious operations.
What templates that work look like
Utility collections template:
Hi {{1}}, this is [Company] writing about invoice {{2}} due on {{3}} for {{4}}. Can we coordinate the payment today, or would you prefer to schedule it for this week?
Data: name, invoice, date, amount. Concrete question. No promotion. Category: utility. High approval rate.
Utility appointment reminder template:
Hi {{1}}, this is a reminder of your appointment with [Company] on {{2}} at {{3}}. If you need to reschedule, reply to this message. If everything is confirmed, no action needed.
Clear reminder, optional action, no pressure. Utility.
Marketing campaign template (with prior opt-in):
Hi {{1}}, we have updates on the catalog you usually browse at [Company]. {{2}}. If you'd rather not receive these communications, reply "Stop".
Personal greeting, clear reason, explicit opt-out. Marketing but with compliance.
How to measure if they're working
For each template in production, watch four metrics.
Delivery rate. Messages delivered over messages sent. If it drops below 95%, there's a data quality issue or outdated numbers.
Read rate. Messages read over delivered. If it drops below 60%, the timing or the opening content isn't engaging.
Reply rate. Replies received over messages read. This is the most important indicator. If a template consistently shows low replies, it needs rewriting.
Opt-out rate. If a template crosses 2-3% opt-out, it's being perceived as spam. Rewrite or pause.
Meta also scores the quality of each template and the overall account quality. These indicators appear in the Business Manager and are worth reviewing weekly. Quality degradation is the prelude to a block, which we cover in detail in how to avoid blocks in WhatsApp campaigns.
What to do if a template is rejected
Read the specific rejection reason. Meta provides a usually clear motive: "Variable without context", "Wrong category", "Promotional language".
Adjust and resubmit. Don't push the same template; change what Meta flagged.
On repeated rejections, review similar templates already approved on your account and replicate the pattern.
Don't test wild variants. Each rejection leaves a trace on the account's reputation. Three or four consecutive rejections can affect future approvals.
Templates with buttons — the next level
WhatsApp Business allows adding buttons to templates, which significantly lifts reply rate because the customer taps instead of typing.
Quick-reply buttons. "Confirm payment today", "Reschedule", "Talk to a human". The customer taps and the agent processes the intent immediately. Particularly useful in collections, reminders and simple support.
URL buttons. Take the customer to a web page — payment, invoice download, product page. Useful when there's a next step outside the conversation.
Call buttons. Initiate a call to a predefined number. Useful when the customer asks to speak with the team.
Templates with buttons have restrictions: maximum number of buttons per template, button text length, allowed combinations. The official documentation details the limits per button type.
Recommended practice. Use buttons when there are 2-3 clear response options. Don't use buttons when the customer's response can be varied — there a button limits and frustrates.
How Pacunex applies templates
The team builds the initial templates together with the customer during rollout. For each process (collections, support, campaigns, reminders), 2-3 variants are proposed and submitted to Meta for approval. The AI agent uses the approved templates as a shell and fills variables with real ERP data.
When a template degrades in quality, the agent pivots to a variant automatically without halting operations. How templates fit inside the full collections flow lives in how to automate WhatsApp collections.
Next steps
If you want to set up your initial templates without going through trial-and-error, we can help. Let's talk on WhatsApp with a founder. We'll share templates already approved in other operations and guide you on category and wording for your case.