CodeWords raises $9M seed round
Blog

whatsapp-message-limits-explained


title: WhatsApp message limits explained: what builders need to know description: >- A clear guide to WhatsApp message limits — 24-hour windows, template rules, Meta rolling caps, plan-level limits, and how Personal Device removes them. date: '2026-07-15' author: Rebecca Pearson authorAvatar: /blog/authors/rebeca-avatar.webp category: Resources cover: /blog/whatsapp-message-limits-explained/blog-thumbnail-blank.png readingTime: 6 tags:


WhatsApp message limits are one of the most misunderstood parts of building a WhatsApp bot. Builders often discover them the hard way — when a message doesn't send, a template gets rejected, or a campaign they planned turns out to be outside what the API allows.

This article breaks down every relevant limit clearly: what it is, why it exists, and what it means for how you design your bot.

TL;DR

  • The 24-hour service window is the most important limit to understand — you can only send free-form messages within 24 hours of a customer's last inbound message.
  • Meta's rolling cap on unreplied outbound messages can reduce your daily limit automatically; low reply rates are the fastest way to trigger it.
  • Personal Device connection removes all of these limits and is often the simplest path for builders who want fewer constraints.

The 24-hour service window

The 24-hour service window is Meta's way of defining an "active conversation." When a customer sends you a message, a 24-hour window opens. Within that window, you can send any message you like — no templates required, no additional fees per message.

When the 24-hour window closes, you can only send a message if you use a pre-approved template. Templates must be approved by Meta in advance, are limited to specific formats, and are charged at a per-conversation rate.

What this means for bot design:

Your bot should be designed to complete its most important actions — booking, qualifying, answering, resolving — within the 24-hour window after a customer messages in. If you need to follow up after the window closes, you'll need a template.

For most service businesses, this isn't a significant limitation. Customers typically start and complete their interaction within a single session. The constraint mainly affects businesses that want to send proactive messages to customers who haven't messaged recently.

Template messages vs session messages

Session messages are any messages you send within the 24-hour window after a customer's last inbound message. They can be free text, contain links, images, documents — no restrictions. These are what your bot sends most of the time.

Template messages (also called HSM — Highly Structured Messages) are pre-approved message formats used to initiate conversations or reach out outside the 24-hour window. They must be submitted to Meta for approval, can take 24 to 48 hours to be reviewed, and must comply with Meta's content guidelines.

Templates are required when:

  • You're sending a message to a customer who hasn't messaged you in the last 24 hours
  • You're initiating outbound contact with a customer for the first time
  • You're sending a marketing campaign to an opted-in list

Important note for US businesses: as of April 2025, Meta significantly restricted marketing template sending to US numbers. If you're primarily targeting US customers with outbound marketing messages on WhatsApp, you'll need to verify the current guidelines before building a campaign.

CodeWords daily limits by plan

If you're using CodeWords with Business API connection, the following daily outbound DM limits apply by plan:

  • Starter: 5 DMs per day
  • Growth: 20 DMs per day
  • Business: 50 DMs per day

These limits are intentionally conservative. They reflect Meta's quality guidelines and help protect your sender reputation — sending at high volumes before you've established a track record with Meta is one of the factors that can trigger enforcement.

As your account matures and you demonstrate a good reply rate, Meta may increase your message limit tier automatically. New Business API accounts typically start at a lower tier and unlock higher limits over time based on messaging quality.

Meta's rolling cap on unreplied messages

Beyond the per-day limits set by your plan, Meta applies a dynamic rolling cap based on the percentage of your outbound messages that receive a reply.

If you're sending messages that very few people reply to, Meta treats that as a signal of poor quality or spam. The rolling cap works by reducing the number of messages you're allowed to send in a given period — effectively throttling your outbound volume automatically.

The threshold isn't published by Meta with precision, but in practice:

  • A reply rate below around 15 to 20 percent is cause for concern
  • Sustained low reply rates over several days can significantly reduce your effective send limit
  • A high block or report rate alongside a low reply rate can trigger account review

How to maintain a healthy reply rate:

  • Only message customers who genuinely expect to hear from you
  • Make your messages easy to reply to — ask a question, provide a clear next step
  • Personalise messages so they feel relevant, not broadcast
  • Avoid sending messages where the natural response is to ignore or delete

Messaging tiers and how they scale

Meta organises Business API accounts into messaging tiers. New accounts typically start at Tier 1, which allows 1,000 unique customers per day (this is a Meta-level limit, separate from CodeWords' plan limits). Higher tiers allow 10,000, 100,000, and unlimited unique customers per day.

Tier upgrades happen automatically when:

  • You've been at the current tier for at least seven days
  • Your reply rate is above Meta's quality threshold
  • You haven't had a recent flag or quality alert

The key insight is that getting to higher tiers requires demonstrating quality at lower tiers first. There's no way to buy your way to a high tier — you earn it through good messaging behaviour.

Personal Device connection: removing the limits

If the Business API limits feel constraining for your use case, Personal Device connection is the alternative.

With Personal Device, you connect your own WhatsApp number to CodeWords via a pairing code. The setup takes about 30 seconds and doesn't require any Meta approval process. Key differences:

  • No daily message caps: your bot can handle unlimited inbound conversations
  • No template requirement: you're not bound by the 24-hour window rules in the same way
  • No per-conversation fees: Meta's conversation-based pricing doesn't apply
  • Faster setup: no approval process, no waiting for account verification

The tradeoff is that Personal Device isn't officially sanctioned by Meta for business use at scale. Inbound-first behaviour is especially important here — if you're using a personal number to send unsolicited outbound messages at volume, you risk getting the number banned. Used as a responsive, inbound-first setup, Personal Device is stable and effective for most SME use cases.

See our guide on WhatsApp automation mistakes that get your number flagged for a fuller picture of what to avoid.

Practical implications for bot design

Understanding these limits should shape how you design your bot from the start:

Prioritise inbound-first flows: design your marketing and customer journey so customers initiate contact. Click-to-chat links, QR codes, and "chat with us" CTAs cost nothing and keep you in the safer inbound-response mode.

Complete key actions within the 24-hour window: if a customer contacts you about a booking, your bot should aim to confirm the booking in that same session — not follow up the next day when the window has closed.

Use templates strategically: if you do need outbound sends (appointment reminders, order updates, re-engagement), plan your templates in advance, get them approved, and budget for the per-conversation cost.

Monitor your reply rate: this is the most important health metric for a Business API account. If it drops, investigate immediately.

Consider Personal Device for high-volume inbound: if your main use case is handling a large volume of incoming customer messages, Personal Device is often simpler and more cost-effective.

Where to check current limits

Meta's limits and policies evolve, sometimes quickly. The April 2025 US marketing template change is a good example — it affected builders who'd built campaigns assuming the old rules still applied.

Always verify current limits against Meta's official documentation before building a campaign or launching a new outbound flow.

And if you're building on CodeWords, Cody (the AI automation assistant) keeps your setup within safe limits by default. You can review CodeWords' current plan limits at codewords.agemo.ai/pricing.

Start building on CodeWords and let the platform handle the limit management for you.

Get started today

Your first agent is free to build.

Describe what you need. Cody handles the build, the connections, and the deployment.