Skip to content

WhatsApp message and image formats

Here are requirements for message structure, components, and media assets for creating WhatsApp messages and templates.

There are two types of WhatsApp messages in Braze: Template messages and response messages.

Template messages must be submitted to Meta for approval, which can take up to 24 hours. After approval, they can be sent at any time. Response messages (called “session messages” in Meta’s documentation) can only be sent while an active conversation window is open—within 24 hours of the last inbound message from the user.

Template messages

WhatsApp template messages are pre-approved message formats used for business-initiated outreach. In Braze, they are built from components you define before submitting to Meta. All template messages are category-based: Marketing, utility, or authentication.

Marketing templates

Marketing templates are the most common type used in Braze. They consist of up to four components:

Character length

Button types

Parameter formatting

Template variables can use either named parameters (such as {{first_name}}) or positional parameters (such as {{1}}). In Braze, variables can be replaced with Liquid or plain text. Always include default values for Liquid variables; messages with missing variable values will not be sent.

Carousel templates display a message body followed by 2–10 horizontally scrollable product cards, each with its own media asset and buttons. They are only available for marketing template messages.

Top-level message

Per-card specifications

Per-card character lengths

Response messages

Response messages (also called “session messages” by Meta) can only be sent within the 24-hour conversation window. They are opened and reset when a user sends your business a message.

Response messages that are composed directly in the Braze campaign or Canvas editor do not require Meta approval.

Braze supports seven response message layouts:

List message components

Quick reply components

Media specifications

The following specifications apply to all media in WhatsApp template headers, response messages, or standalone media messages.

Images

These specifications apply to template headers, response media messages, and image messages.

Video

The following specifications apply to template headers, response media messages, video messages, and carousel card headers.

Android compatibility

H.264 “High” profile encoded with B-frames is not supported on Android WhatsApp clients. Use the H.264 “Main” profile without B-frames or the “Baseline” profile for the broadest compatibility. If re-encoding with ffmpeg, use the -movflags faststart flag to place moov boxes before mdat boxes.

Audio

The following specifications apply to response media messages and audio messages, and are based on their audio type: Voice message or basic audio message.

Voice message

A voice message functions like a recorded voice note, with playback controls and transcription support.

Basic audio message

The following specifications apply to standard audio file sharing (music clips, audio ads, and sound files).

Considerations

  • No caption support for audio messages.
  • A common error is mismatched MIME types. Verify your file’s MIME type matches its extension before sending.

Documents

The following specifications apply to template headers (document format), response media messages, and document messages.

Considerations

  • Captions are optional and can be 1,024 characters maximum.
  • Filename is optional. WhatsApp uses the file extension to determine which document icon to display in the conversation.
  • Only the listed formats are officially supported. Other file types may send but are not guaranteed to render correctly in WhatsApp

Quick reference: WhatsApp media specifications

New Stuff!