Skip to main content

WhatsApp Message Categories and Costs

WhatsApp Business API messages are priced by Meta based on message category and the recipient's country. CustomerFlows passes Meta's costs through at cost with no markup. This page explains how pricing works, what's free, and how to monitor your usage.


Message Categories

Meta classifies every WhatsApp message into one of four categories:

CategoryWho InitiatesUS Cost per MessageWhen It's Used
ServiceCustomer messages you firstFree -- no capCustomer asks about your services, requests a quote, reports an issue
UtilityYou send a transactional update~$0.005Appointment confirmations, job status updates, invoice notifications
MarketingYou send a promotional message~$0.035Seasonal promotions, maintenance reminders, re-engagement campaigns
AuthenticationYou send a verification code~$0.009Account verification (rarely used by contractors)

The most important takeaway: When a customer messages you first, the entire conversation is free. This is the primary use case for contractors -- a homeowner reaches out, the AI chatbot qualifies them, and the conversation costs $0.


The Free Service Window

When a customer sends you a message, a 24-hour service window opens. Within this window:

  • You can respond with unlimited messages at zero cost
  • The AI chatbot's qualifying conversation happens entirely within this free window
  • The window resets every time the customer sends a new message

Example: A customer messages at 9 PM. The chatbot qualifies them. At 10 AM the next day, your team follows up with additional details. At 2 PM the customer replies with a question. The window resets for another 24 hours. All of this is free.

When the window matters: If you want to message a customer more than 24 hours after their last message, you must use a pre-approved template message (utility or marketing category), which has a per-message cost.


Click-to-WhatsApp Ad Bonus

Leads from Click-to-WhatsApp Facebook and Instagram ads are eligible for Meta's free entry point window. The customer message opens the normal 24-hour service window; if your business responds within that 24 hours, Meta opens a 72-hour free entry point window starting from the business response. If the 24-hour service window closes while the free entry point window is still open, you can still send approved templates at no Meta charge, but free-form replies require a new customer message.


Included Messages by Plan

Each CustomerFlows plan includes a monthly messaging allowance for outbound template messages. Inbound service conversations are always free and don't count against the allowance.

PlanIncluded Outbound MessagesOverage Rate
Starter ($49/mo)1,000/month$0.005 per message
Growth ($149/mo)5,000/month$0.005 per message
Scale ($349/mo)15,000/month$0.005 per message

Counts against allowance: Utility messages, marketing messages.

Does NOT count: Inbound service conversations (always free, unlimited), your replies within the 24-hour window (free), AI chatbot messages during qualification (free -- happens within service window).


Cost Modeling for a Typical Contractor

Most contractors spend very little because the primary use case (inbound lead qualification) is free.

ActivityMonthly VolumeCategoryCost
Inbound lead conversations (AI chatbot)~200 messagesService (free)$0
Appointment confirmations~50 messagesUtility~$0.25
Post-job review requests~30 messagesUtility~$0.15
Seasonal marketing broadcast~30 messagesMarketing~$1.05
Total estimated cost~$1.45/month

Compare this to SMS ($0.01-0.05 per segment) or an answering service ($200-500/month).


Template Messages

When messaging customers outside the 24-hour service window, you must use a template message pre-approved by Meta.

What is a template? A pre-written message submitted to Meta for review. Templates can include variables (like the customer's name or appointment date) that are filled in dynamically.

Example templates:

  • Appointment confirmation (Utility): "Hi {{name}}, your appointment with {{company}} is confirmed for {{date}} at {{time}}. Reply CHANGE to reschedule."
  • Review request (Utility): "Hi {{name}}, thanks for choosing {{company}}! If you had a good experience, we'd appreciate a quick review: {{link}}"
  • Seasonal promotion (Marketing): "Spring is here! {{company}} is offering $99 AC tune-ups this month. Reply BOOK to schedule."

Creating templates:

  1. Go to Settings, then WhatsApp, then Templates
  2. Click New Template
  3. Choose the category (Utility or Marketing)
  4. Write your message with variables in double curly braces
  5. Submit for Meta review (typically approved within 24 hours)
  6. Once approved, the template is available in automations and broadcasts

Meta's approval rules: Templates must clearly identify the sender, marketing templates require opt-in, and content cannot be misleading. Rejected templates include a reason code so you can edit and resubmit.


Monitoring Your Usage

In CustomerFlows: Go to Settings, then WhatsApp to see messages sent this month vs. your allowance, breakdown by category, and estimated cost.

The WhatsApp billing page can also show blocked events. These happen when CustomerFlows cannot send a paid template because the workspace needs a payment method, the WhatsApp account is not active, or a marketing spending cap would be exceeded. Fix the billing or activation issue, then send again.

On your monthly invoice: WhatsApp messaging appears as a separate line item:

Plan: Growth -- $149.00
WhatsApp messaging: 847 of 5,000 included -- $0.00
WhatsApp overage: 0 additional messages -- $0.00
Total: $149.00

If you exceed your allowance:

Plan: Growth -- $149.00
WhatsApp messaging: 5,000 of 5,000 included -- $0.00
WhatsApp overage: 312 messages x $0.005 -- $1.56
Total: $150.56

Spending Caps

To prevent unexpected charges, set a monthly spending cap:

  1. Go to Settings, then WhatsApp, then Spending Cap
  2. Set a maximum monthly spend (e.g., $10)
  3. When the cap is reached, outbound template messages pause until next billing cycle
  4. Inbound conversations (free) are never affected by spending caps
  5. You receive an email alert at 80% of your cap

See WhatsApp Spending Caps for detailed configuration.

If a marketing template is blocked by a spending cap, CustomerFlows shows that reason in the WhatsApp billing or Inbox recovery flow. Increase the cap, wait for the next billing cycle, or send a service-window reply after the customer messages you again.


FAQ

Are inbound messages really free with no cap? Yes. Since November 2024, Meta does not charge businesses for inbound service conversations. There is no monthly cap. This applies to all CustomerFlows plans.

What happens if I exceed my included messages? Overage is billed at $0.005 per message (Meta's cost, no CustomerFlows markup). Set a spending cap to prevent unexpected charges.

How do I know if a message is Service (free) or Utility (paid)? Service messages are responses within the 24-hour window after a customer contacts you. If you initiate a message using a template outside this window, it's Utility or Marketing depending on the template category.

Does CustomerFlows add markup to Meta's messaging costs? No. CustomerFlows passes through Meta's per-message fees at cost. The $0.005 overage rate is what Meta charges.

Can I send marketing messages to all my contacts? Marketing broadcasts require the recipient to have opted in. Meta enforces this and may restrict your messaging if you send unsolicited marketing. Start with small batches to engaged customers.



Need help? Email support@customerflows.com or ask in r/CustomerFlows.