Creating a WhatsApp message
WhatsApp campaigns are great for directly reaching and programmatically conversing with your customers. You can use Liquid and other dynamic content to create a personal experience with your users and create an environment that fosters and enhances an unobtrusive user experience with your brand.
Prerequisites
To create a WhatsApp message and leverage the WhatsApp channel, you must first read through the WhatsApp overview and do the following:
- Acknowledge policies, limits, and content rules
- Set up your WhatsApp connection
- Build out initial templates in Meta to use in your messages
Step 1: Choose where to build your message
WhatsApp creates different message templates for each language. Either create a campaign for each language with segmentation to serve the correct template to users, or use Canvas.
Not sure whether your message should be sent using a campaign or a Canvas? Campaigns are better for single, simple messaging campaigns, while Canvases are better for multi-step user journeys.
Steps:
- Go to the Campaigns page and click Create Campaign.
- Select WhatsApp, or, for campaigns targeting multiple channels, select Multichannel Campaign.
- Name your campaign something clear and meaningful.
- Add Teams and Tags as needed.
- Tags make your campaigns easier to find and build reports out of. For example, when using the Report Builder, you can filter by particular tags.
- Add and name as many variants as you need for your campaign. You can choose different platforms, message types, and layouts for each of your added variants. For more on this topic, refer to Multivariate and A/B testing.
If all of the messages in your campaign are similar or have the same content, compose your message before adding additional variants. You can then choose Copy from Variant from the Add Variant dropdown.
Steps:
- Create your Canvas using the Canvas composer.
- After you’ve set up your Canvas, add a step in the Canvas builder. Name your step something clear and meaningful.
- Choose a step schedule and specify a delay as needed.
- Filter your audience for this step as necessary. You can further refine the recipients of this step by specifying segments and adding additional filters. Audience options will be checked after the delay at the time messages are sent.
- Choose your advancement behavior.
- Choose any other messaging channels you want to pair with your message.
If an action-based Canvas is triggered by an inbound WhatsApp message, you can reference WhatsApp properties in any Canvas step until the next action path.
Step 2: Compose your WhatsApp message
Select if you’d like to create a WhatsApp template message or response message, depending on your use case. Any business-initiated conversation must start from an approved template, whereas response messages can be used in responses to inbound messages from users within a 24-hour window.
WhatsApp templates currently don’t support coupon code buttons.
Template messages
You can use approved WhatsApp template messages to initiate conversations with your users on WhatsApp. These messages are submitted in advance to WhatsApp for content approval, which can take up to 24 hours to approve. Any edits you make to copy needs to be edited and resubmitted to WhatsApp.
Disabled text fields (highlighted gray) cannot be edited as they are part of the approved WhatsApp template. To make updates to the disabled text, you must edit your template and get it reapproved.
Languages
Each template has an assigned language, so you need to create a campaign or Canvas step for each language to correctly set up user matching. For example, if you’re building a Canvas that uses templates assigned with Indonesian and English, you need to create a Canvas step for the Indonesian template and a Canvas step for the English template.
Variables
If you added variables while creating the WhatsApp template in the Meta Business Manager, those variables will show up as blank spaces in the message composer. Replace these blank spaces with Liquid or plain text. To use plain text, use the format “text here” encased by double braces. If you opted to include images when building your template, you can upload or add images from the media library or by referencing an image URL.
Note that disabled text fields (highlighted gray) cannot be edited as they are part of the approved WhatsApp template. If you would like to make updates to the disabled text, you must edit your template and get it reapproved.
If you plan to use Liquid, be sure to include a default value for your chosen personalization so in the event your user profile of the recipient is incomplete, they will not receive a message. Any messages with missing Liquid variables will not be sent via WhatsApp.
Dynamic links
Call-to-action URLs may contain variables, though Meta requires them to be at the end of the URL, such as https://example.com/{{variable}}
, where the variable can then be replaced in Braze with Liquid. Links can also be included as the body text as part of the template. At this time, neither of these links can be shortened.
Response messages
You can use response messages to reply to inbound messages from your users. These messages are built in-app on Braze during your composition experience and can be edited at any time. You can use Liquid to match the response message language to the appropriate users.
There are three response message layouts you can use:
- Quick Reply
- Text Message
- Media Message
Step 3: Preview and test your message
Braze always recommends previewing and testing your message before sending it. Switch to the Test tab to send a test WhatsApp message to content test groups or individual users, or preview the message as a user directly in Braze.
A conversation window is required to send response messages, including test messages. To initiate a conversation window, send a WhatsApp message to the phone number associated with the subscription group you’re using for this message. The associated phone number is listed in the alert on the Test tab.
Step 4: Build the remainder of your campaign or Canvas
Next, build the remainder of your campaign. See the following sections for further details on how to best use our tools to build WhatsApp messages.
Choose a delivery schedule or trigger
WhatsApp messages can be delivered based on a scheduled time, an action, or based on an API trigger. For more, refer to Scheduling your campaign.
For action-based delivery, you can also set the campaign’s duration and Quiet Hours.
This step is also where you can specify delivery controls, such as allowing users to become re-eligible to receive the campaign, or enabling frequency capping rules.
Choose users to target
Next, you need to target users by choosing segments or filters to narrow down your audience. You should have already chosen the subscription group, which narrows users by the level or category of communication they wish to have with you. In this step, you will select the larger audience from your segments and narrow that segment further with our filters. You’ll automatically be given a snapshot of what that approximate segment population looks like right now. Remember that exact segment membership is always calculated just before the message is sent.
Choose conversion events
Braze allows you to track how often users perform specific actions, conversion events, after receiving a campaign. You can allow up to a 30-day window during which a conversion will be counted if the user takes the specified action.
You can also set custom conversion events based on your specific use case. Get creative and think about how you truly want to measure this campaign’s success.
If you haven’t done so already, complete the remaining sections of your Canvas component. For further details on how build out the rest of your Canvas, implement multivariate testing and Intelligent Selection, and more, refer to the Build your Canvas step of our Canvas documentation.
Because conversation windows can only last 24 hours per inbound message, Braze will check to make sure there are no delays exceeding 24 hours between an inbound message and a response message.
Step 5: Review and deploy
After you’ve finished building the last of your campaign or Canvas, review its details, test it, then send it!
Next, check out WhatsApp reporting to learn how you can access the results of your WhatsApp campaigns.
Supported WhatsApp features
Braze supports the following WhatsApp messaging features.
Outbound messages
You can send users the following in your WhatsApp messages:
Message feature | Details |
---|---|
Headers | |
Text | Supports variable parameters |
Images (JPEG and PNG) | Must be 8-bit, RGB or RGBA, and up to 5 MB for any type |
Body text | Supports variable parameters |
Footer text | Supports variable parameters |
CTAs | See Calls to actions. |
Calls to actions
You can add the following calls to action in your WhatsApp messages:
CTA type | Details |
---|---|
Visit website | One button maximum (including variable parameters). |
Call phone number | Available for message templates only. One button maximum. |
Custom quick reply buttons | Three buttons maximum. |
Marketing opt-out button | This option does not automatically update subscription statuses. For setup instructions, see Opt-ins & Opt-Outs. |
Coupon code message templates | Available for message templates only. These can be opened and edited like other message templates, and are compatible with Liquid and Braze promotion codes. |
CTA response messages | Create a response message that includes a call to action button. |
Inbound messages
Users can send you the following in their WhatsApp messages:
Message feature | Details |
---|---|
Text | |
Images (JPEG and PNG) | Must be 8-bit, RGB or RGBA, and up to 5 MB for any type |
Audio | audio/aac audio/mp4 audio/mpeg audio/amr audio/ogg (only Opus Codecs, base audio/ogg is not supported) |
Documents | text/plain application/pdf application/vnd.ms-powerpoint application/msword application/vnd.ms-excel application/vnd.openxmlformats-officedocument.wordprocessingml.document application/vnd.openxmlformats-officedocument.presentationml.presentation application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
CTAs | See Calls to actions. |
Video | video/mp4, video/3gp Only H.264 video codec and AAC audio codec are supported. We support videos with a single audio stream or no audio stream. |