How to create a WhatsApp template
Learn how to create a WhatsApp template through Klaviyo. Once you have created a template and it has been approved by Meta, you can begin to send it through campaigns and flows.
Before you begin
You can create and save draft WhatsApp templates before connecting the channel. Before you submit a template to Meta for approval, activate the channel in your Klaviyo account.
Create a WhatsApp template
To get started with creating a WhatsApp template in Klaviyo:
- Navigate to Content > Templates.
- On the Templates page, navigate to WhatsApp: saved.
- Select Create > New template.

In the Create template panel, set the following information for your template:
- Channel Select the channel for your template (i.e., WhatsApp).
- Name Set an easily identifiable name for your WhatsApp template. You can only use lowercase letters, numbers, and underscores for your WhatsApp template name.
- Language Select the language of your WhatsApp template.
- Message intent Select the message intent of your WhatsApp template (i.e., Marketing or Transactional).
Click Create to open the template editor.
Components of a WhatsApp template
There are a few key components that make up your WhatsApp template when designing it in the editor.
Header
For a single rich card, the header is an optional field that stores content at the top of the WhatsApp message. The header can contain text, an image, a video, or a product image.
Image headers can include static images and dynamic images using tags or URLs. Supported file types are .jpg, .jpeg, and .png with a maximum file size of 5 MB.

Text headers can be up to 60 characters and allow for the use of personalization variables. Note the tag itself counts towards the character limit.
Include a default value for text variables so recipients see meaningful text when profile data is missing. Without a default, an empty text variable is replaced with a blank space.

Body
The body is a required section for WhatsApp templates that acts as the main content. The message body has a limit of 1024 characters.

Footer
The footer is an optional field for WhatsApp templates that stores content that appears below the body. Consider including any supplemental information or opt-out instructions. Note that the footer only supports text and can be up to 60 characters.
It is strongly recommended to include opt-out instructions in your WhatsApp message’s footer.

Buttons
For a single rich card, buttons are optional and appear at the bottom of the WhatsApp message. You can add up to 10 buttons in total, using the following types of actions:
- Quick replies Allow the recipient to send a preset response. You can have up to 10 quick replies on each template. Follow-up messages can also be created in Automations, enabling you to continue the conversation automatically after a quick reply is selected.
- Visit website Send recipients to the website URL you set. You can have up to 2 buttons of this type and URLs have a 2000 character limit.
- Call phone number Send the recipient to their phone app with a prepopulated phone number. You can add 1 button of this type.
- Copy code Automatically copy a coupon code to the recipient’s clipboard. Both static and unique coupon codes can be added. You can add 1 button of this type.
- Note: Meta only supports alphanumeric characters (A–Z, 0–9) in coupon codes used with the “Copy Code” button, so special characters such as dashes, spaces, or symbols are not allowed.
Additionally, buttons have the following requirements:
- Labels cannot be more than 25 characters.
- The URL must be valid and cannot exceed 2000 characters.

Carousel templates
A carousel displays 2–10 cards in one WhatsApp message. To create a carousel:
- Select Media cards carousel in the editor.
- Enter the main message Body. Use Add card to add cards as needed.
- Click Edit card on each card to add its media, body text, and buttons. Use the back arrow to return to the card list, then repeat for each card.
Each card requires media, body text, and 1–2 buttons. All cards must have the same number of buttons.
Previewing your WhatsApp template
To get a sense of what your WhatsApp template will look like when it is received by customers, you can use Klaviyo’s preview functionality.
To preview a WhatsApp template, select the Preview button in the editor.

You’ll see an example of what your template will look like for a recipient. Additionally, if you have any dynamic content, you can select a specific profile to preview the message as. This will populate the dynamic content with the appropriate information for the profile you are previewing as.
Template approval
When your template is ready, submit it to Meta for approval:
- Click Submit for review in the editor.
- Review the template details, then click Submit.
To save a draft without submitting it, click Save & exit in the editor.
You can see the approval status of your templates by navigating to Content > Templates > WhatsApp: saved. You can also view your templates’ quality scores, message intent, and language here.
WhatsApp only allows you to start conversations with customers using templates that have been approved by Meta in advance. Typically the approval process takes a few minutes, but may take up to 24 hours.
Once a template has been approved, you can begin sending it to customers. If a template is rejected, you’ll need to make edits and resubmit it for approval.
Follow these guidelines to increase your template’s chances of being approved:
- Avoid vague or irrelevant messages, and personalize messages for specific recipients using placeholders.
- Make sure your messages are timely, and respect quiet hours.
- Avoid sending multiple messages to a single profile in a day.
- Use templates to initiate conversations and encourage end users to respond with quick replies.
- Avoid open-ended welcome or introductory messages.
- Clearly specify the purpose of each message, preferably within 5 lines.
- Keep messages concise and informative.
- Avoid abusive or threatening language.
- Select the appropriate message type and language.
- Replace the word "survey" with "feedback."
- Upload samples for media files, placeholders, and call-to-action buttons when registering templates.
- Include opt-out instructions.
- Avoid duplicate templates. If a template is submitted with the same wording in the body and footer of an existing template, the duplicate template will be rejected.
- Make sure the message template does not contain content that violates WhatsApp’s Business Policy.
- Do not request sensitive identifiers from users.
- Do not ask people to share full-length payment card numbers, financial account numbers, and other sensitive identifiers. This also includes documents that might contain sensitive identifiers.
- Requesting partial identifiers (e.g., the last 4 digits of their social security number) may be permitted.
- Other formatting guidelines for templates
- Be careful when using variable parameters:
- Do not start or end with a variable parameter.
- Avoid too many variable parameters relative to the message length.
- Avoid adjacent variable parameters (e.g., {{ person.first_name }} {{ person.last_name}}).
- Avoid variable parameters that are missing or have mismatched curly braces.
- For Klaviyo property names containing spaces or special characters, use the
lookupfilter, for example{{ person|lookup:'Favorite Color'|default:'blue' }}. - Do not start a new line (\n) with a variable parameter.
- Avoid emojis or newline characters in the footer.
- Refrain from using emojis, asterisks, formatting markup, or \n in the header.
- Avoid grammatical or spelling errors.
- Only share URLs that include your brand name and avoid URLs with random characters.
- Be careful when using variable parameters:
Quality ratings
Individual templates also have quality ratings assigned by Meta.
The quality ratings for your templates are:
- High Quality
- Medium Quality
- Low Quality
When your template gets approved, it will initially have a rating of Quality pending.
You also see the following statuses related to your template approval status:
- Pending
- Rejected
- Paused
- Disabled
- In appeal
You should reach out to Meta support if you have questions regarding a template’s approval.