Pricing

Dualhook subscription plans, what is included, and how pricing relates to Meta messaging fees.

Looking for the high-level overview first? Start with Pricing and then return here for the implementation details.

Overview

Dualhook pricing is a monthly subscription based on plan tier and connection limits. Dualhook does not charge per WhatsApp message.

All plans include a 30-day free trial. A payment method is required at sign-up, but you are not charged until the trial ends.

WhatsApp message fees are charged by Meta under the WhatsApp Business Platform. Your total cost has two separate parts:

  • Dualhook subscription fee — our product
  • Meta messaging fees — their platform usage

Dualhook Plans

PlanPriceIncluded connectionsBest fit
Developer$12/month1Individuals and early projects
Team$25/month5Growing teams
Agency$89/month20Agencies and multi-client setups
Platform$115/month ($4.50/conn above 25)25 includedSaaS providers onboarding many tenants
  • Team is the most common plan.
  • All plans include a 30-day free trial.
  • A payment method is required at sign-up for self-serve checkout.
  • Checkout may display USD or EUR depending on region.
  • The Platform tier adds a multi-tenant API for self-serve onboarding, a co-branded onboarding flow, signed lifecycle event webhooks, per-tenant webhook routing, and dedicated partner support.
  • Upgrades apply immediately.
  • Downgrades apply at the end of the current billing cycle.

What Is Included

All plans include:

  • Direct webhook delivery (Meta to your endpoint via Webhook Override)
  • Webhook testing and monitoring
  • Template management
  • Heartbeat monitoring
  • In-app support chat for setup questions and bug reports
  • Privacy-first architecture (no message storage)
  • Unlimited webhook deliveries

Message Charges: Dualhook vs Meta

Dualhook does not add per-message fees.

If you send or receive WhatsApp messages through Cloud API, those usage charges are billed by Meta, not by Dualhook. This remains true on every Dualhook tier.

Official Meta Rate Cards

LinkRate Card Description
Meta USD Rate CardOfficial USD rates for template messages by country code/market
Meta EUR Rate CardOfficial EUR rates for template messages by country code/market
Meta INR Rate CardOfficial INR rates for template messages by country code/market
Meta pricing overviewOfficial overview of pricing categories and free windows
  • Meta may update rate cards on a quarterly cadence (Jan 1, Apr 1, Jul 1, Oct 1).
  • Always verify current rates before launching high-volume campaigns.
  • Questions about official Meta rate cards should go to Meta support.

Meta Pricing Model

Since July 1, 2025 Meta charges WhatsApp Business Platform usage on a per-message basis. The previous conversation-based pricing model is deprecated.

  • Charges apply only when a template message is delivered ("type":"template").
  • All non-template messages (text, image, etc.) are free, but can only be sent inside an open 24-hour customer service window (CSW).
  • Rates depend on the template category (marketing, utility, authentication) and the recipient's country calling code.
  • Meta updates rate cards on a quarterly cadence (Jan 1, Apr 1, Jul 1, Oct 1), with at least 1 month notice for rate changes, 3 months for pricing model add-ons, and 6 months for pricing model changes.

Free vs Billed Messages

Whether a message is free or billed is decided by Meta policy and pricing rules, not by Dualhook.

Key windows:

  • 24-hour customer service window (CSW) — opens when the user messages you. Non-template replies are only allowed inside this window. Utility templates inside an open CSW are free.
  • 72-hour free entry point window (FEP) — opens when you respond within 24 hours to a user who messaged you via a Click-to-WhatsApp ad or a Facebook Page Call-to-Action button (Android/iOS WhatsApp app only — desktop and web are not supported). Any message type sent inside the FEP is free.
Message typeFree whenBilled when
Non-template (text, image, etc.)Inside an open CSW or FEPCannot be sent outside CSW
Utility templateInside CSW or FEPOutside both windows
Authentication templateInside FEPAlways charged outside FEP
Marketing templateInside FEPAlways charged outside FEP

Meta charges are based on delivered messages, not sent attempts.

Pricing Object in Status Webhooks

Each message status webhook from Meta carries a pricing object that explains exactly how that delivery was billed. Dualhook does not ingest message-status webhooks (they go straight to your endpoint via Webhook Override), but your downstream handler should read this field for accounting:

"pricing": {
  "billable": true,
  "pricing_model": "PMP",
  "type": "regular",
  "category": "<PRICING_CATEGORY>"
}

Common combinations:

typecategoryMeaning
regularmarketing, utility, authenticationStandard billable template delivery via Cloud API /messages
regularmarketing_liteMarketing template delivered via Marketing Messages API for WhatsApp /marketing_messages. Same per-message billing as marketing; the category lets you distinguish send paths in your accounting.
regularauthentication_internationalAuth template billed under authentication-international rates
regulargeneral_purpose_aiNon-template message delivered by an AI Provider in an applicable market
free_customer_serviceserviceFree non-template message inside open CSW
free_customer_serviceutilityFree utility template inside open CSW

pricing_model is PMP (per-message pricing) for all messages delivered after July 1, 2025. Edge case: a utility conversation opened before July 1, 2025 retains pricing_model: "CBP" until the conversation closes.

Volume Tiers

Meta unlocks lower per-message rates for utility and authentication templates as monthly volume grows. Marketing templates do not have volume tiers.

Key mechanics:

  • Tiers are aggregated at the business portfolio level, across every WABA the portfolio owns.
  • Tiers are market–category specific — e.g. India–authentication, Brazil–utility — each accrues independently.
  • Only billed messages count toward the tier; free utility messages (in CSW or FEP) do not.
  • Tiers reset on the 1st of each month at 12am WABA timezone.
  • When a tier is reached, only the messages above the threshold get the new rate. Messages already sent in that month stay at the prior rate.

Starting October 1, 2025 Meta sends an account_update webhook with event VOLUME_BASED_PRICING_TIER_UPDATE when a portfolio reaches a new tier. See Account Update Events for the payload shape. For intra-month progress, query the pricing_analytics field on the WABA.

Authentication-International Rates

A separate, higher rate applies to authentication template messages delivered to users in: Egypt, India, Indonesia, Malaysia, Nigeria, Pakistan, Saudi Arabia, South Africa, and the United Arab Emirates — but only when the sending business is based outside that country.

Eligibility is automatic: a business that delivers more than 750,000 messages outside customer service windows in a moving 30-day period to users in any of these countries is deemed eligible. Eligibility is permanent and Meta gives 30 days notice via email and an account_update webhook with event AUTH_INTL_PRICE_ELIGIBILITY_UPDATE before rates begin.

To check eligibility and start times for a WABA:

curl 'https://graph.facebook.com/<GRAPH_VERSION>/<WABA_ID>?fields=auth_international_rate_eligibility' \
  -H 'Authorization: Bearer <ACCESS_TOKEN>'

To check Meta's record of the business's primary location:

curl 'https://graph.facebook.com/<GRAPH_VERSION>/<WABA_ID>?fields=primary_business_location' \
  -H 'Authorization: Bearer <ACCESS_TOKEN>'

When billed under this rate, the status webhook pricing.category is authentication_international. Charges are still per delivered message, just at a higher list rate.

AI Provider Pricing

Effective February 16, 2026 (Italy) and March 11, 2026 (broader EU/EEA list including Belgium, France, Germany, Spain, Netherlands, etc.), Meta charges "AI Providers" — providers of large language models, generative AI platforms, or general-purpose AI assistants — for non-template messages they deliver to users in those markets. This is a narrow exception to the rule that non-template messages are free; it applies only if your business meets Meta's definition of an AI Provider.

When billed under this policy, status webhooks carry pricing.category: general_purpose_ai, and the pricing_analytics API surfaces these as pricing_category: AI_BOT.

If you only send transactional, marketing, or authentication traffic, this policy does not change anything for you.

Throughput and High-Volume Sending

Throughput is primarily controlled by Meta account quality, messaging limits, and number status.

Upgrading between tiers increases Dualhook connection capacity and support level. It does not directly purchase higher Meta message throughput.

Example Cost Breakdowns

Team plan + high message volume:

  • Dualhook: $25/month (Team plan)
  • Meta: separate usage fees for delivered WhatsApp messages

Agency with many connections:

  • Dualhook: $89/month (Agency plan)
  • Meta: separate usage fees across the connected numbers

FAQ

Is there a free trial? Yes. All plans include a 30-day free trial. A payment method is required at sign-up, but you are not charged until the trial ends.

Do you charge for inbound or outbound WhatsApp messages? No. Message usage is billed by Meta.

If I upgrade my Dualhook plan, will my Meta message pricing change? No. Meta message pricing is separate.

Can I change plans anytime? Yes. Upgrades are immediate; downgrades apply at period end.

Related

  • About DualhookWhat Dualhook is, where it fits in the WhatsApp ecosystem, and how it works.
  • Quick StartSet up Dualhook and connect your first WhatsApp Business Account in minutes.
Browse more docsStart Free Trial