Skip to content

Glossary drawing · Messages & interactivity

Sticker Message

Also called: WhatsApp sticker · WebP sticker · Animated sticker · Sticker

Note 1 —A WhatsApp message that sends a WebP sticker, static up to 100 KB or animated up to 500 KB, referenced by media ID or link.

Term
Sticker Message
Abbreviation
—
Category
Messages & interactivity
Level
Foundation
Reviewed
Sheet no.
GLO-MES-021
Drawn by
InfiQ Glossary

Drawing 1 · Interactive

Static or animated: read the sticker spec sheet

6 / 6
Static or animated: read the sticker spec sheet. 6 rows by 2 columns. Each cell is a button: activate it to read its note, and use the arrow keys to move between cells.
Static stickerAnimated sticker
File format
Max file size
Canvas
Caption
Send by
Inbound webhook

Hover, tap or arrow-key through the cells — a dot in the corner means there is a note.

Inbound webhook by Static sticker

animated: falseWhat you receive

Plus mime_type, sha256 and a media ID valid for 7 days.

Legend — press one to highlight its cells

Every rule a sticker must meet, side by side for static and animated WebP files. Tap a cell for the detail behind the limit, or a legend entry to see which rules are hard limits.

Row 6 of 6. Inbound webhook × Static sticker: animated: false. Plus mime_type, sha256 and a media ID valid for 7 days.

What is a sticker message?

A sticker message is one of the WhatsApp Message Types: it sends a single sticker — a WebP image, static or animated, shown in the chat without a bubble around it. On the Cloud API it is type: sticker with a sticker object holding either the id of uploaded media or a link to a hosted file. It is one of the types covered by Media Message, narrower than that overview, and the only type that accepts WebP files at all.

The format rules are strict. Meta's Media File Limits list stickers as image/webp only: static stickers up to 100 KB and animated stickers up to 500 KB. WhatsApp's sticker guidelines use a square 512 × 512 pixel canvas with a transparent background, which is what makes an image read as a sticker rather than a photo; the Cloud API documents only format and size, so treat that canvas as the safe default. Stickers take no caption, and like every non-template type they can only be sent while a 24-hour customer service window is open.

Customers send stickers too. An inbound sticker arrives on the Messages Webhook as type: sticker with mime_type: image/webp, a sha256 hash, a media id and an animated flag that is true for animated stickers. A media ID received in a webhook expires after 7 days, and the download URL you fetch with it after 5 minutes, so download any sticker you need to keep promptly. A sticker is a message of its own; an emoji pinned to an earlier bubble is a Reaction Message.

Key takeaways

  • A sticker message sends one WebP image as a sticker, with type: sticker and a media id or link.
  • Static stickers can be up to 100 KB and animated stickers up to 500 KB, both as image/webp.
  • WebP files can only be sent as stickers; use JPEG or PNG for an ordinary image message.
  • Stickers carry no caption, and like every free-form type they need an open 24-hour window.
  • Inbound stickers arrive with an animated flag and a media ID that expires after 7 days.

Specifications

A sticker message: key facts and limits

Type
sticker
Format
WebP only (image/webp)
Static sticker
Up to 100 KB
Animated sticker
Up to 500 KB
Canvas
512 × 512 px, transparent (WhatsApp sticker guidelines)
Caption
Not supported
Media ID lifetime
30 days uploaded · 7 days from a webhook
Inbound flag
animated: true or false

Implementation

A sticker message in code

# 1. Upload the WebP once and keep the returned media ID (valid for 30 days)
curl -X POST "https://graph.facebook.com/v26.0/{PHONE_NUMBER_ID}/media" \
-H "Authorization: Bearer {ACCESS_TOKEN}" \
-F "messaging_product=whatsapp" \
-F "file=@in-the-oven.webp;type=image/webp"
# -> {"id":"{MEDIA_ID}"}
# 2. Send it as a sticker inside the customer's open window
curl -X POST "https://graph.facebook.com/v26.0/{PHONE_NUMBER_ID}/messages" \
-H "Authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "919812345678",
"type": "sticker",
"sticker": { "id": "{MEDIA_ID}" }
}'

Operating sequence

How does a sticker message work?

  1. Design on the right canvas

    Export a 512 × 512 WebP with a transparent background. Keep static files under 100 KB and animated ones under 500 KB.

  2. Upload once

    Use a Media Upload: POST the file to /{PHONE_NUMBER_ID}/media with type image/webp to get a media ID. Uploaded IDs expire after 30 days, so keep the source file and re-upload on a schedule.

  3. Send by ID

    Send type: sticker with sticker.id inside the customer's open window. A link also works, but Meta recommends uploaded media over hosted links.

  4. Watch the status

    A sticker gets the usual sent, delivered and read statuses keyed to its wamid; a failed status explains what went wrong.

  5. Handle inbound stickers

    Branch on type: sticker, download it through the media ID within 7 days if you need it, and respond to the person rather than ignoring the message.

Failure modes

Common mistakes with a sticker message

  • Renaming a PNG to .webp

    The extension does not change the format. Convert the file properly and check its RIFF/WEBP header before uploading.

  • Oversized animations

    Animated stickers over 500 KB are rejected. Drop frames, shorten the loop or simplify the artwork until it fits.

  • Sending a sticker to open a conversation

    Stickers are free-form, so they fail outside the 24-hour window, and templates cannot carry them either. Start with a template; send stickers once the customer replies.

  • Expecting a caption

    Stickers carry no text. Send the words as a separate message first, and wait for it to be delivered so the two arrive in order.

  • Ignoring inbound stickers

    A bot that only handles text leaves sticker replies unanswered. Add a branch, even if all it does is acknowledge.

Recommended practice

Best practices for a sticker message

  • Keep a small, reviewed sticker set and store the source files so you can re-upload when media IDs expire.
  • Use stickers for moments of delight, not for information the customer has to act on.
  • Test static and animated stickers on both Android and iOS before launch.

Example: Four stickers for a bakery's order updates

A Pune bakery designs four branded stickers — 'Order received', 'In the oven', 'Out for delivery' and 'Enjoy!' — as 512 × 512 WebP files: three static at about 40 KB and one animated at 380 KB. A monthly job re-uploads them and stores the fresh media IDs. When a customer confirms an order inside the window, the bot sends the order summary as text and, once that reports delivered, the 'In the oven' sticker, so the two never arrive in the wrong order. Customers often answer with a sticker of their own, which the bot acknowledges with a 👍 reaction instead of trying to interpret it.

Sticker Message FAQs

What size can a WhatsApp sticker be?+
Static stickers can be up to 100 KB and animated stickers up to 500 KB, both in WebP format. WhatsApp's sticker guidelines also use a 512 × 512 pixel canvas with a transparent background.
Can I send a sticker with the WhatsApp Business API?+
Yes. Send a message with type sticker and a sticker object holding an uploaded media ID or a link, inside an open 24-hour customer service window.
Can I add a caption to a WhatsApp sticker?+
No. Sticker messages have no caption field. Send any text as a separate message, ideally before the sticker and only once it has been delivered, so the two arrive in order.
How do I tell if an inbound WhatsApp sticker is animated?+
Check the animated flag in the webhook's sticker object: true means animated, false means static. Both arrive as image/webp with a media ID to download.

Design intent

Why does a sticker message matter?

Stickers are part of everyday chat in India, and a small set of branded ones — 'Order packed!', 'Thank you' — can make a transactional flow feel human without adding words. They are also a quiet source of failures: a PNG renamed to .webp, an animated file at 700 KB, a sticker sent after the window closed. Inbound, an unhandled sticker is a customer message your bot ignored, which is why even teams that never send stickers need to handle receiving them.

See InfiQ pricing

Put Sticker Message to work

InfiQ is an official Meta Business Partner. Start a 7-day free trial — no card needed — and see this running on your own number.