Skip to content
Meta Business PartnerGlossary term

Delivery Receipt

A delivery receipt is the WhatsApp Business API's confirmation that your message reached the recipient's device — the moment the second grey tick appears. It sits one step beyond "sent" and one step before "read," and on today's WhatsApp it carries real commercial weight: since Meta moved to per-message billing on 1 July 2025, a delivered message is a billable message. Understanding exactly what a delivery receipt does and does not tell you is the difference between a clean, cost-controlled messaging setup and one that quietly leaks budget on numbers that never actually receive anything.

Second grey tick (two ticks)
Visual cue
delivered
Webhook status
Message reached recipient's device
Confirms
Delivered = billable per Meta's rate card
Billing relevance
sent (single tick)
Comes after
read (two blue ticks)
Comes before

In one line

A delivery receipt confirms a WhatsApp message reached the recipient's device (the second grey tick). It is distinct from "sent" (accepted by WhatsApp) and "read" (opened by the user). Because WhatsApp now bills per delivered message by category, delivery status is what you should track for both reliability and cost.

What a delivery receipt actually confirms

A delivery receipt is WhatsApp's acknowledgement that a message has been handed off to the recipient's device — not merely accepted by WhatsApp's servers. On the WhatsApp Business API it surfaces in two places: visually, as the second grey tick next to a message, and programmatically, as a status webhook with the value 'delivered' sent to your callback URL. That webhook is the authoritative signal for automated systems: it carries the message ID, the recipient, and a timestamp, letting you reconcile exactly which of your outbound messages landed. Crucially, delivery means the message physically arrived on the handset; it says nothing about whether the person has opened WhatsApp, seen a notification, or read the content.

  • One tick (sent): WhatsApp accepted the message from your system
  • Two grey ticks (delivered): the message reached the recipient's device — this is the delivery receipt
  • Two blue ticks (read): the recipient opened the chat and the message is marked read
  • failed: WhatsApp could not deliver, and a status webhook returns an error code

Sent vs delivered vs read — three different truths

These three statuses are often conflated, but each answers a distinct question and each fires a separate webhook. 'Sent' only tells you your request was well-formed and accepted — it is an internal handshake, not proof of reach. 'Delivered' tells you the message left WhatsApp's queue and arrived on a real, reachable device. 'Read' tells you the recipient actually opened it, and it depends entirely on the user having read receipts enabled — many people switch them off, so a low read rate is not the same as poor delivery. For measuring reliability, delivered is the metric that matters: it isolates infrastructure and deliverability from human behaviour. If a message sits at 'sent' and never advances to 'delivered', the recipient's device is unreachable — powered off, out of coverage, or the number is not on WhatsApp.

Why delivery receipts matter for cost on today's WhatsApp

Since 1 July 2025, Meta bills the WhatsApp Business API per delivered message, priced by category — marketing, utility, or authentication —. This replaced the older per-conversation model, and it makes the delivery receipt the event that maps most directly to what you pay. The 24-hour window that opens when a customer messages you still exists, but it is now a free service window for back-and-forth support replies, not a billing unit. In practical terms: a template message that reaches a device counts; a message stuck at 'sent' that never delivers does not become a delivered charge. Tracking delivery receipts therefore does double duty — it is your reliability dashboard and your cost ledger. InfiQ surfaces delivered status per message and applies transparent ₹ pricing (ex-GST), so the number of delivery receipts you generate lines up cleanly with your invoice.

How to capture and act on delivery receipts

To use delivery data programmatically you register a webhook endpoint with your WhatsApp Business API provider; WhatsApp then POSTs a status object each time a message advances through sent, delivered, read, or failed. Well-built systems store these against the original message ID and use them to drive real decisions — retry logic, suppression of unreachable numbers, and accurate delivery-rate reporting. A healthy delivery rate on clean, opted-in lists is typically very high; a sudden dip is an early-warning signal worth investigating before it drags down quality rating.

  • Log every status webhook against its message ID for a full audit trail
  • Alert when delivery rate falls below your normal baseline — it often precedes quality-rating drops
  • Suppress numbers that repeatedly fail to deliver instead of re-sending to them
  • Never treat 'sent' as success in reporting — always reconcile to 'delivered'

Common mistakes and misreadings

The most frequent error is treating the single tick ('sent') as delivery — it only means WhatsApp accepted the request. The second is reading absence of blue ticks as failed delivery; a message can be reliably delivered yet never marked read because the recipient disabled read receipts. Teams also misattribute low delivery rates to their platform when the real cause is list hygiene: messaging numbers that are not on WhatsApp, are invalid, or never opted in. Another trap is ignoring the 'failed' webhook and its error code, which frequently pinpoints the exact issue — an unregistered number, a policy block, or a template problem. Finally, some assume every delivered message was 'seen'; delivery is a device-level fact, not a human-attention one, so keep delivery and read metrics separate in every report.

See InfiQ pricing

Talk to InfiQ

See how this works on InfiQ

Tell us your use-case — we’ll show it running in a sandbox, usually within a working day.

Step 1 of 2
WhatsApp

Protected by invisible spam checks · replies within 1 working day

Frequently asked questions

What does a delivery receipt mean on WhatsApp?+
It means your message reached the recipient's device. Visually it is the second grey tick; on the WhatsApp Business API it arrives as a status webhook with the value 'delivered'. It does not mean the message has been read or even seen — only that it physically landed on the handset.
What is the difference between sent and delivered?+
'Sent' (one tick) means WhatsApp accepted your message request — an internal handshake. 'Delivered' (two grey ticks) means the message actually reached the recipient's device. A message can sit at 'sent' indefinitely if the device is off, out of coverage, or the number is not on WhatsApp; only when it reaches the device does the delivery receipt fire.
Does a delivery receipt mean the message was read?+
No. Delivery and read are separate statuses. A delivery receipt (two grey ticks) confirms the message reached the device; a read receipt (two blue ticks) confirms the recipient opened the chat. Because many users disable read receipts, a message can be reliably delivered without ever showing as read.
Am I charged when a message is delivered?+
Since 1 July 2025, WhatsApp bills per delivered message by category — marketing, utility, or authentication —. So a delivery receipt corresponds to a billable event. A message that never advances past 'sent' is not a delivered charge. InfiQ applies transparent ₹ pricing (ex-GST).
How do I receive delivery receipts on the WhatsApp Business API?+
You register a webhook (callback) URL with your provider. WhatsApp then POSTs a status object each time a message moves through sent, delivered, read, or failed. Each object includes the message ID, recipient, and timestamp, which you store against the original message for reporting and retry logic.
Why is my message stuck on 'sent' and never delivered?+
The recipient's device is unreachable — powered off, out of network coverage, or the number is not registered on WhatsApp. It can also mean the number is invalid or was never opted in. If it stays at 'sent' for a long time, treat the number as unreachable and clean it from your active list.
What does a 'failed' status tell me?+
A 'failed' webhook means WhatsApp could not deliver the message and returns an error code explaining why — commonly an unregistered number, a policy or template issue, or the recipient having blocked your business. Always log and act on these codes rather than blindly re-sending.
Does a high delivery rate guarantee good engagement?+
No. Delivery measures whether messages reach devices; it says nothing about whether people find them relevant. You can have near-perfect delivery and still see low read or response rates. Track delivery for reliability and cost, and track read and reply metrics separately for engagement.

Track every delivery, control every rupee

See per-message delivery status and transparent ₹ pricing — talk to an InfiQ onboarding specialist to set up delivery-aware reporting for your WhatsApp campaigns.