Before you can send a WhatsApp campaign, you'll need to build the content, design, and images you want your users to receive in the message. WhatsApp templates are reusable message blueprints that you can select in campaigns and journeys to send your users WhatsApp messages. They can contain text, links, and images, and you can customize them with user profile data, event data, data feeds, and Catalog data.
This article explains the different types of WhatsApp templates as well as how to create and edit WhatsApp templates in Iterable.
Looking for information on getting business-initiated WhatsApp templates approved by Meta? See Managing WhatsApp Template Approvals.
NOTE
To add WhatsApp messaging to your Iterable plan, contact your customer success manager.
# In this article
# Required permissions
To create and manage WhatsApp templates, you'll need the Create and Manage Templates and Creative Library permission for your project.
# Configuring your locales for WhatsApp
In order to create WhatsApp templates, your project's locales must be associated with Meta’s supported languages. Before you can start sending via WhatsApp, you'll need to review your project's locales and map them to the Meta-supported language codes.
To do this, go to your Project Settings page, and choose Content. Under Locales, edit your locales' Language selections to match the supported languages. See Setting Up Locales to learn more.
# WhatsApp template types
There are two different types of Iterable templates you can create for WhatsApp messages: user-initiated templates and business-initiated templates. The primary difference between these two template types is who starts the WhatsApp conversation (your business or the user), and there are a few differences in how these templates are created and used.
Business-initiated templates
Business-initiated templates must be approved by Meta and can be used to start conversations with your users. You can use business-initiated templates to send blast campaigns, API-triggered campaigns, or journey campaigns.
User-initiated templates
User-initiated templates can only be used to reply to users who have reached out to your brand within the past 24 hours. Because of this, user-initiated templates can only be used in API-triggered campaigns and journey campaigns, (not blast campaigns). User-initiated templates don’t need to be approved by Meta before they can be used in campaigns.
# Creating a new WhatsApp template
To create a WhatsApp template that you can reuse for a single or multiple WhatsApp campaigns:
Go to Content > Templates.
Click New template > WhatsApp.
Select a WhatsApp template type.
Give your template a name that will make it easy to find when you (or your teammates) are setting up campaigns or journeys. This field has a 150-character limit.
Click Create template.
Alternatively, you can create a template while setting up a new campaign or by using Iterable's API. For more info, see Working with Templates.
# Configuring a WhatsApp message template
To update template details such as message type, sender, message, media URLs, etc., open the template and configure the options in the Details area.
To update these options, click Edit Details. As you make changes, the preview updates. When you're done editing, click Save or Cancel.
IMPORTANT
Do not include leading whitespace characters in template details input fields — doing so can cause send failures. For example:
✅ hi@fiterable.com
❌ hi@fiterable.com
You can trim unwanted whitespace from snippets and Handlebars expressions using
the ~ character. See Removing Whitespace
to learn more.
# Business-initiated templates
Below are descriptions of the various settings you'll see in the Details area of a business-initiated WhatsApp template.
# WhatsApp category
Business-initiated WhatsApp templates must be associated with one of Meta's WhatsApp template categories. Meta uses these categories to determine usage and billing rates. Iterable supports the following WhatsApp categories for business-initiated templates:
Marketing templates: Marketing templates are used for a wide range of promotional activities, such as increasing brand awareness, driving sales, and retargeting users. WhatsApp templates that contain a mix of both marketing and utility content or whose content is unclear may be labeled marketing templates.
Utility templates: Utility templates are used to follow up on user actions or requests, such as a recent transaction, account update, subscription, or other interaction with your brand. Utility templates contain specific details about a recent user interaction.
When you submit a business-initiated template to Meta for review, Meta evaluates the content of the template and determines whether or not it matches the template category you selected. In some cases, Meta may determine that a template's content matches the opposite category than what you selected. When this happens, Meta may still approve the template but automatically recategorize the template, and you'll see the following message when you view the approved template in Iterable:
# Message type
The category to associate with your template, which affects who receives campaigns based on it. To learn more, read Message Channels and Message Types Overview.
If you have any WhatsApp senders bound to a marketing message type, then the message type you choose here may change the senders available for the campaign.
# Sender
The sender that the recipient sees for this message.
For WhatsApp, the options in the message sender dropdown are determined by whether the sender was bound to a particular message type.
When you select a transactional message type, all WhatsApp senders bound to marketing message types are disabled. You're only able to send marketing messages with senders associated with the marketing message type.
For help setting up a WhatsApp sender, contact your customer success manager.
# Header
An optional element that you can include at the top of your WhatsApp message. Can be text (maximum 60 characters) or an image. Supported file formats for images include JPEG or PNG, maximum 5 MB (recommended minimum resolution of 640 x 360 px).
# Message
The body of your WhatsApp message, which can contain text, merge tags, and emojis. This element supports rich-text formatting (bold, italics, strikethrough, code).
When you're working on a message, you can see the total character count to the left of the message body.
This element can't contain:
- A merge tag at the beginning of the message
- A merge tag at the end of the message
- More than two consecutive newlines
- More than four consecutive spaces
If you try to save a template that contains any of these items, Iterable displays an error message highlighting the issue and prevents you from saving the template until the issue is fixed. This helps you avoid rejections when you submit templates to Meta for approval. To learn more, see Managing WhatsApp Template Approvals.
TIP
Click the Iterable AI icon to have Copy Assist suggest alternate phrasing for you.
# Footer
An optional component that appears at the end of your WhatsApp message. Footers support text only and can be a maximum length of 60 characters.
# Buttons
Optional components that allow users to quickly interact with your WhatsApp message with a single tap. WhatsApp templates can include a maximum of 10 buttons, and each button's CTA text can be customized (maximum length 25 characters).
Supported buttons include:
# Visit website
Directs users to a specified webpage in their browser. URLs must include either
https:// or http:// and can include a maximum of one merge parameter. You
can include a maximum of 2 Visit website buttons in a WhatsApp template.
# Call phone
Initiates a phone call to a specified phone number (for example, your business's support line). Maximum 1 per template. You can only include 1 Call phone button in a WhatsApp template.
# Quick reply
Sends a preconfigured text string (which you specify in the template) in response to your WhatsApp message, allowing users to quickly reply with a single tap. You can include a maximum of 10 Quick reply buttons in a WhatsApp template.
# Data feeds
Data feeds allow you to fetch user-specific data from external URLs (your own or third-party) and use it to personalize your messages. For example, a restaurant chain might use a data feed to fetch information about locations close to the user, and then highlight them in their messages. To tell the data feed which user you need information for, you can pass query parameters in the data feed URL.
To enable data feeds, check Data feeds. Then, select an existing data feed from the dropdown or click Add a new data feed.
For more information about data feeds, related configuration options, and how to use them, read Data Feeds Overview.
# Shorten and track
Shorten all links included in the WhatsApp campaign's content. Shortlinks allow you to fit more content in the message and see if your contacts are opening the links.
Shortlinks can vary in length up to six additional characters from the preview URL that you see in the template preview mode.
# Google analytics
Requires Shorten and track. Appends utm_source, utm_campaign, and
utm_medium parameters to links in your messages for Google Analytics tracking.
To learn more, read:
NOTES
- If you don't set up your campaign to use WhatsApp link shortening and click tracking, Iterable doesn't include UTM parameters on any links, regardless of your selection here.
- For UTM parameters on links in test messages, Iterable uses a
campaignIdof-12345.
# Link parameters
Requires Shorten and track. Custom URL parameters that are added to your WhatsApp campaigns. These custom parameters give you the opportunity to track custom metrics (that you define) when a customer clicks on a link in your campaign. This helps track which clicks came from which campaign, and when using other analytics providers besides Google Analytics.
For example, if you add a link parameter with key campaignId and value
{{campaignId}}, links in your template include a query string parameter
for the campaign ID:
https://www.example.com/?campaignId=12345
For more info, read Link Parameters.
TIP
You can use Google Analytics parameters, link parameters, and hard-coded URL parameters in the same campaign. They'll be added in this order:
- Hard-coded URL parameters
- Google Analytics parameters
- Link parameters
NOTE
In fields that support merge tags, you can include Handlebars code and helpers.
# User-initiated templates
Below are descriptions of the various settings you'll see in the Details area of a user-initiated WhatsApp template.
# Message type
The category to associate with your template, which affects who receives campaigns based on it. To learn more, read Message Channels and Message Types Overview.
If you have any WhatsApp senders bound to a marketing message type, then the message type you choose here may change the senders available for the campaign.
# Sender
The sender that the recipient sees for this message.
For WhatsApp, the options in the message sender dropdown are determined by whether the sender was bound to a particular message type.
When you select a transactional message type, all WhatsApp senders bound to marketing message types are disabled. You're only able to send marketing messages with senders associated with the marketing message type.
For help setting up a WhatsApp sender, contact your customer success manager.
# Image
An optional element that you can include at the top of your WhatsApp message. Supported file formats include JPEG or PNG, maximum 5 MB size (recommended minimum resolution of 640 x 360 px).
# Message
The body of your WhatsApp message, which can contain text, merge tags, and emojis. This element supports rich-text formatting (bold, italics, strikethrough, code).
TIP
Click the Iterable AI icon to have Copy Assist suggest alternate phrasing for you.
# Data feeds
Data feeds allow you to fetch user-specific data from external URLs (your own or third-party) and use it to personalize your messages. For example, a restaurant chain might use a data feed to fetch information about locations close to the user, and then highlight them in their messages. To tell the data feed which user you need information for, you can pass query parameters in the data feed URL.
To enable data feeds, check Data feeds. Then, select an existing data feed from the dropdown or click Add a new data feed.
For more information about data feeds, related configuration options, and how to use them, read Data Feeds Overview.
# Creating locale versions of a WhatsApp template
Just like with other message mediums, you can create multiple locale versions of WhatsApp templates. For detailed instructions on how to do this, see Creating Locale Versions of a Template.
All of a business-initiated template’s locale versions must be individually approved by Meta before the template can be used in any campaigns (the status of each locale version must be Approved — if even one of a template’s locale versions is Draft, In Review, or Rejected, the template cannot be used). See Managing WhatsApp Template Approvals to learn more.
# Prohibited content for WhatsApp templates
Meta prohibits content related to certain regulated verticals, as well as content that could be considered exploitative, abusive, discriminatory, offensive, or spam. Content review is conducted by Meta (not Iterable), and infractions can result in your Meta account being suspended or terminated.
For more information, see Best Practices for WhatsApp and Meta's WhatsApp Business Messaging Policy.
# Want to learn more?
For more information about some of the topics in this article, check out these Iterable resources. Iterable Academy is open to everyone — you don't need to be an Iterable customer!
Iterable Academy
Support docs