Blog / API & technical
How to get a WhatsApp template approved without getting it rejected

In short
To write to a customer outside the 24-hour window you need Meta-approved templates. In this article we'll look at how a template is composed (header, body, footer, buttons), how to use variables without errors, the most frequent rejection reasons, and how long approval takes, with concrete examples meant for non-technical readers.
Have you ever tried to write to a customer on WhatsApp and noticed that, after a certain time, the message won't go out anymore? It's not an error: it's a Meta rule. When more than 24 hours have passed since the person's last message, you can re-contact them only with a template that's already been checked and authorized. These templates are called templates, and understanding how to create them and get them approved is the step that separates those who use WhatsApp haphazardly from those who use it as a real work channel.
The good news is that, once you understand the logic, getting a template approved is simple. Most rejections come from a few recurring errors, almost always avoidable. Let's look at how it works, piece by piece, in language everyone can follow.
What a template is and why approval is needed
A template is a message prepared in advance that you start, without waiting for the customer to write to you. It's for the communications you initiate: an order confirmation, an appointment reminder, an incoming shipment, an offer. Because on WhatsApp it's the company contacting the person, Meta wants to read the text first to make sure it isn't spam or a misleading message.
The underlying principle is the 24-hour window. When a customer writes to you, a 24-hour window opens during which you can reply freely with normal text, without templates. Once the 24 hours pass, that door closes: to reopen the conversation you have to use an approved template. That's precisely why having a small library of ready templates is so important for a business.
Each template, moreover, belongs to a category. The three main ones are utility (service communications tied to a customer action, such as confirmations and updates), marketing (promotions, news, calls to purchase), and authentication (verification codes). The category also matters for costs, because Meta bills conversations based on the category and the recipient's country.
The structure of a template: the four parts
A template is made up of blocks. Some are mandatory, others optional. Knowing them helps you build clear messages and avoid rejections.
Header
It's the part at the top, optional. It can be a short text (useful for the title of an offer) or media content: an image, a video, a PDF document. For a store, putting the product photo in the header makes the message much more convincing. For an order confirmation, a PDF with the receipt is perfect.
Body
It's the only mandatory part and it's the heart of the message. Here you write the actual text and here you insert the variables, that is, the fields that change from person to person, like the name or the order number. The body must be understandable on its own: whoever reads the template during review must understand what it's for.
Footer and buttons
The footer is a small line at the bottom, optional, suited to notes like "Reply STOP to stop receiving messages." The buttons, also optional, make the message interactive: they can be quick-reply buttons (the person taps and replies to you with a word, for example "Confirm") or buttons that lead to an action, such as opening a link or calling a number.
| Part | Mandatory | What it's for |
|---|---|---|
| Header | No | Title or media content (photo, video, PDF) |
| Body | Yes | The main text, with the variables |
| Footer | No | A short note, like the unsubscribe notice |
| Buttons | No | Quick reply, link, or call |
How variables work
Variables are the placeholders that get filled in at send time with each contact's data. In the template text they appear as numbers in progressive curly braces: the first variable, the second variable, and so on. When the message goes out, the real value appears in place of those placeholders—for example, the customer's name.
Here's an example of a body with two variables: "Hi [first placeholder], your order number [second placeholder] has been shipped and will arrive within two business days." At send time, the first placeholder becomes "Giulia" and the second "10482." Simple and effective.
Watch out for a rule that's often ignored: when you submit the template for approval you must provide a sample value for each variable. If you leave the placeholders empty or use nonsensical examples, Meta can't evaluate the message and rejects it. A plausible, consistent example speeds up approval.
With SendApp you compose the template from a guided interface, choose the parts, and insert the variables without writing code. The template is submitted to Meta for approval and, once authorized, is immediately available for your campaigns and your sends.
The most common rejection reasons
When a template is rejected, Meta gives a reason. In practice, almost all rejections fall into a few groups. Knowing them in advance saves you days of waiting.
- Variables with no example or with nonsensical examples: always remember to fill in a realistic value for each placeholder.
- Wrong category: a promotional message presented as utility gets reclassified or rejected. Choose the category that genuinely matches the content.
- Text that's too vague: phrases like "Hi, we have something new for you" without context look like spam. Clearly explain what it's about.
- Obvious errors: serious typos, links that don't work, variable braces written badly, or non-progressive numbering.
- Disallowed content: sectors and offers prohibited by Meta's rules, or requests for sensitive data in the message body.
- Variables at the start or end of the text, or two variables stuck together with no words in between: they must always be placed inside a complete, meaningful sentence.
How long approval takes
In most cases the outcome arrives within a few minutes, because the first check is automatic. Sometimes, though, a template ends up in manual review and the wait can stretch to about a day. That's why it's best not to wait until the last minute: if you know a promotion will go out at the end of the month, prepare and get the templates approved a few days ahead.
If a template is rejected, read the reason, fix the flagged point, and resubmit it: there's no reasonable limit to the attempts and each new version is re-evaluated from scratch. Keep an eye on quality too: templates used well, with few complaints and few unsubscribes, keep a high score and continue to be delivered without issues.
Best practices to get approved on the first try
- Write clear messages: the reader must understand the sender and the reason within seconds.
- Always fill in a realistic example for each variable before submitting for review.
- Choose the correct category based on the real content, without disguising a promotion as a service communication.
- For marketing, add in the footer the option to stop receiving messages: it builds trust and reduces complaints.
- Create templates ahead of important dates, so a possible manual review doesn't hold you up.
- Reuse already approved templates by changing only the variables, instead of creating a new one for every similar occasion.
In short, the template is the tool that lets you stay in touch with customers even when the 24-hour window has closed. Building it well, with a tidy structure and variables filled in judiciously, means getting it approved quickly and communicating professionally, with no nasty surprises at send time.
Put it into practice with SendApp
Campaigns, AI and a multichannel inbox with no markup on message costs. Try it free, no credit card.
Redazione SendApp
The SendApp team — WhatsApp marketing and AI platform for businesses.