Skip to content
OmniChannels.ai

WhatsApp Marketing Metrics: What to Track and How to Read It

WhatsApp marketing metrics explained: delivered, read, replies, clicks and opt-outs, what read receipts miss, attribution with ads and UTM links, a dashboard.

Updated 9 min read

By OmniChannels.ai Editorial Team · Reviewed by BroadNet Messaging Solutions Team

Marketing

Short answer

Track WhatsApp marketing as a funnel: sent, delivered, read, replies, button clicks, conversions and opt-outs, measured per campaign and per template. Delivered is the most reliable number; read is a floor, not a total, because a missing read status proves nothing. Add quality rating and template status as health metrics, and use UTM links and click-to-WhatsApp ad referral data to attribute revenue. Meta publishes no benchmarks for these rates.

On this page
  1. Which WhatsApp marketing metrics should I track?
  2. What do sent, delivered and read actually mean?
  3. What can read receipts tell me, and what can't they?
  4. How do I measure replies and button clicks?
  5. How do I track opt-outs?
  6. Which health metrics protect my sending?
  7. How do I attribute sales to a WhatsApp campaign?
  8. What does a sample WhatsApp campaign dashboard look like?
  9. Worked example: a Riyadh electronics retailer
  10. What are the common mistakes?
  11. How OmniChannels.ai helps

Key takeaways

  • Measure a funnel per campaign: sent, delivered, read, replies, button clicks, conversions and opt-outs, then divide each stage by the one before it.
  • Per Meta's status reference, a message counts as read when it is displayed in an open chat; a missing read receipt does not prove the message went unseen.
  • Meta's template analytics report sent, delivered, read and button clicks, but read and click data are available for only 7 days after sending, so export results quickly.
  • Quality rating and template status are early-warning metrics: a falling rating or a paused template means send volume and delivery are about to suffer.
  • Attribute revenue with UTM parameters on links and, for click-to-WhatsApp ads, the referral data and ctwa_clid click ID in the inbound webhook.

This guide is for marketing and CRM teams who run WhatsApp campaigns and need a clear answer to "did it work?". It defines each metric, explains what the numbers can and cannot tell you, covers health metrics such as quality rating, shows how to attribute sales, and ends with a dashboard you can copy.

Facts about Meta's reporting are stated as documented by Meta at the time of writing. Meta publishes no benchmark rates for these metrics, so this guide does not quote any.

Which WhatsApp marketing metrics should I track?

Track the funnel in order: sent, delivered, read, replied or clicked, converted, and opted out. Each stage is a ratio of the one before it, which makes problems easy to locate.

Metric Definition Source What it tells you
Sent Message left the platform Status webhook, campaign report Volume you attempted
Delivered Reached the customer's device Status webhook Real reach
Read Displayed in an open chat Status webhook Minimum attention
Replies Inbound messages after the send Inbound webhook, inbox Conversation interest
Button clicks URL and quick-reply taps Template analytics, link tracking Intent to act
Conversions Orders, bookings, sign-ups Your analytics or CRM Revenue
Opt-outs Customers who stop marketing user_preferences webhook, your keyword handling Audience fatigue

Calculate, for example, delivery rate as delivered divided by sent, read rate as read divided by delivered, and click-through rate as clicks divided by delivered. Use delivered as the denominator for engagement, because an undelivered message cannot be read.

What do sent, delivered and read actually mean?

Sent means the message left Meta's servers, delivered means it reached the customer's device, and read means it was displayed in an open chat. These are the definitions in Meta's status reference.

Two details matter for reporting:

  • A message that is seen while the chat is open can be delivered and read at the same moment. In that case no separate delivered event arrives, because delivery is implied. Meta says not to expect a delivered event before every read.
  • Statuses can arrive out of order, so count by the highest status reached per message, not by event totals.

On OmniChannels.ai, statuses are normalised to SUBMITTED, SENT, DELIVERED, READ, FAILED and REJECTED across channels. See message delivery statuses explained and the webhooks guide.

What can read receipts tell me, and what can't they?

Read receipts are a lower bound on attention. A read status proves the message was displayed; a missing one proves nothing.

  • Meta's status reference defines read as displayed in an open chat, but does not list every case where a read status might not be sent, so do not assume a fixed share of seen messages is reported.
  • A read does not mean the customer understood or acted on the message.
  • A message can be skimmed in a notification without the chat being opened.

Use read rate to compare your own campaigns, such as two templates to the same segment. For decisions about content, rely on replies and clicks, which are actions rather than displays.

Meta also uses read rate in its own controls. Its marketing-template documentation says a customer's marketing read rate is one factor in how many marketing templates that person receives. Content that customers ignore therefore reduces future reach.

How do I measure replies and button clicks?

Count replies from inbound webhooks and clicks from template analytics or your own tracked links.

Replies. Match each inbound message to the most recent campaign sent to that number within a time window you define, for example 48 hours. Record it against the campaign. Replies are the strongest on-platform signal of interest, and each one also opens a 24-hour customer service window.

Button clicks. Meta's template analytics report sent, delivered, read and clicked counts, including clicks on URL and quick-reply buttons, for a template over a date range. Two limits from Meta's documentation:

  • Template analytics are daily, with a lookback window of up to 90 days.
  • Read and click data are available for only 7 days from the date the message is sent. After that the counts reset to zero.
  • Template insights must be enabled for the WhatsApp Business Account first, and Meta says this cannot be undone.

Because of the 7-day limit, pull results into your own reporting within a week of each send. For URL buttons, a tracked link with UTM parameters gives you a click record that does not expire. See interactive messages and buttons.

How do I track opt-outs?

Treat opt-outs as a metric and a stop signal. Count customers who ask to stop and customers who stop marketing in WhatsApp.

Meta's documentation describes a user setting for marketing messages. If a customer has stopped marketing templates and you send one, the API accepts the request but does not deliver it, and a status webhook reports error code 131050. You can subscribe to the user_preferences webhook to learn when a customer stops or resumes marketing messages. Meta also notes that a customer choosing "Not interested" does not trigger that webhook, but it can affect per-user marketing limits.

Add your own handling for typed requests such as "stop", record the consent change, and exclude those numbers from future audiences. See opt-in and consent. A rising opt-out rate after a campaign means the audience, frequency or content was wrong.

Which health metrics protect my sending?

Quality rating and template status are health metrics: they change before delivery does.

  • Phone-number quality and messaging limits control how many people you can reach. Meta's mechanism is covered in messaging limits and quality rating; this article does not repeat it.
  • Template quality is rated GREEN, YELLOW, RED or UNKNOWN (new templates without enough feedback). WhatsApp Manager shows approved templates as Active with pending, high, medium or low quality.
  • Template pausing. Meta says quality ratings factor into template pacing and pausing, which can affect delivery, and a template whose status is not APPROVED cannot be sent in template messages. For pause durations, read Meta's current template-pausing documentation.

Review these before every large send. A template with a falling rating should be rewritten before the next campaign, not after it is paused. See template categories and approval.

How do I attribute sales to a WhatsApp campaign?

Give every campaign a way to be recognised downstream, then match it in your analytics or CRM.

  1. UTM parameters on each link: source, medium and a campaign name that matches your campaign label.
  2. Unique codes or links per segment so a purchase can be traced without cookies.
  3. Phone-number matching. If the customer replies or checks out with the same number, join orders to the campaign recipient list.
  4. Click-to-WhatsApp referral data. When a chat starts from a click-to-WhatsApp ad, Meta's inbound message webhook carries a referral object with the ad's source_id, source_url, headline and a ctwa_clid click ID. Meta omits ctwa_clid for ads placed in WhatsApp Status. Store these fields with the conversation. See click-to-WhatsApp ads.
  5. A review window. Decide in advance how many days after a send a purchase counts, and keep it the same across campaigns.

For link tracking mechanics, the same principles apply as in SMS link tracking.

What does a sample WhatsApp campaign dashboard look like?

One row per campaign and template. The figures below are placeholders for the layout, not benchmarks.

Campaign / template Sent Delivered Delivery rate Read rate Reply rate Click-through Opt-outs Orders Template status
eid_offer_ar n n x% x% x% x% n n Active, quality
cart_reminder_en n n x% x% x% x% n n Active, quality

Add a second tab with failures grouped by error code, and a third with cohort conversion by days since send. OmniChannels.ai offers delivery reports in summary and advanced views with filters and CSV export, and the bulk-insights endpoint for per-recipient WhatsApp status.

Worked example: a Riyadh electronics retailer

"Najd Electro" (synthetic) sends a weekend offer to 20,000 opted-in customers in two Arabic template variants.

  1. Each variant has a campaign label and a UTM campaign name, such as weekend_a and weekend_b.
  2. Delivered counts come from status events; the team computes delivery rate and sees one segment with many failures, which they trace to numbers that had not messaged them in a long time.
  3. On day 2, they export template analytics, because read and click data are kept for only 7 days.
  4. Variant B has a higher click-through rate but also more opt-outs. They compare orders per delivered message, not clicks alone.
  5. The winning template goes into the next campaign. The losing one is rewritten after a quality check.

What are the common mistakes?

  • Using sent as the denominator. Undelivered messages inflate the apparent weakness of the content.
  • Treating read as total attention, and dismissing a campaign because reads look low.
  • Waiting past 7 days to export template read and click data.
  • Quoting industry benchmarks without a source. Compare against your own history.
  • Ignoring opt-outs and quality. A good click rate that damages quality costs you reach later.
  • Last-click only. A WhatsApp message may prompt a later purchase on another channel; use a consistent attribution window and say what it is.
  • Limits: Meta can change analytics definitions and retention. Confirm them in Meta's documentation.

How OmniChannels.ai helps

OmniChannels.ai campaigns run on every channel with quick send, bulk, personalised and auto-schedule modes, and delivery reports carry normalised statuses into one webhook format so WhatsApp, SMS and RCS can be reported side by side. Reports come in summary and advanced views with filters and CSV export, and the shared inbox keeps replies attached to each customer. For Meta analytics fields beyond these, ask our team. See campaigns, the WhatsApp channel and the webhooks reference.

Frequently asked questions

Which WhatsApp metrics matter most for marketing?

Start with delivery rate, read rate, reply rate, button click-through rate, opt-out rate and conversion rate, each measured per campaign and template. Delivery tells you reach, replies and clicks tell you interest, and conversions tell you revenue. Add template quality and phone-number quality as health checks that protect your future sending.

What is a good WhatsApp read rate?

Meta does not publish a benchmark read rate, and any figure quoted without a source should be treated with caution. Compare your own campaigns against each other instead: the same template, audience segment and send time over several weeks. A sudden drop against your own baseline is more useful than a comparison with an industry number.

Do read receipts show if a customer opened my message?

Only partly. Meta's status reference says a message is read when it is displayed in an open chat on the customer's device. It does not promise a read status in every case where a message is seen, so use reads as a lower bound and rely on replies and clicks for confirmed engagement.

How do I track conversions from WhatsApp campaigns?

Put UTM parameters on every link, use a unique link or code per campaign, and match orders or leads to them in your analytics or CRM. For click-to-WhatsApp ads, store the referral data and ctwa_clid from the first inbound message. Tracking by phone number against your own customer records also works when the customer replies in the chat.

What happens when customers opt out of WhatsApp marketing?

Per Meta's documentation, customers can stop marketing templates from a business. If you still send one, the request is accepted but not delivered, and a status webhook with error code 131050 reports it. You can subscribe to the user_preferences webhook to learn when a customer stops or resumes marketing messages. Remove these customers from marketing audiences.

How long does Meta keep WhatsApp template analytics?

Meta documents a lookback of up to 90 days for template analytics, but template read and click data are available for only 7 days from the date the message is sent, after which the counts reset to zero. Export campaign results within a week of sending and store them in your own reporting.

Sources

  1. Analytics — WhatsApp Business Platform, Meta for Developers
  2. Message status webhook reference — WhatsApp Business Platform, Meta for Developers
  3. Template quality — WhatsApp Business Platform, Meta for Developers
  4. Marketing templates — WhatsApp Business Platform, Meta for Developers
  5. Text message webhook reference (referral object) — WhatsApp Business Platform, Meta for Developers