149 countries · crypto-native · no KYC

SMS Delivery Receipts (DLRs): Statuses, Handling, and Fakes

A 'sent' response is a promise, not proof. The delivery receipt is where the truth arrives — if it is real. Here is every status, how to handle them, and how to spot fabricated ones.

$0.035/msg from sub-100ms median 98.6% delivered
SMS Delivery Receipts (DLRs): Statuses, Handling, and Fakes — smsroute
$0.004
per SMS from
149
countries
60s
to first message
6
crypto rails
When an SMS API returns queued or sent, it means one thing: the provider accepted your request. Not that a carrier took it. Not that a handset received it. The SMS delivery receipt (the DLR) is the asynchronous callback that reports what actually happened, and it can arrive seconds or minutes later. Treating the send response as delivery is the single most common mistake in SMS integrations, and it hides every real delivery problem you have. For the authoritative reference, see A2P 10DLC registration.

Why 'sent' tells you almost nothing

When an SMS API returns queued or sent, it means one thing: the provider accepted your request. Not that a carrier took it. Not that a handset received it. The SMS delivery receipt (the DLR) is the asynchronous callback that reports what actually happened, and it can arrive seconds or minutes later. Treating the send response as delivery is the single most common mistake in SMS integrations, and it hides every real delivery problem you have. For the authoritative reference, see A2P 10DLC registration.

Get DLR handling right and you gain the one thing that makes SMS operable at scale: ground truth. Get it wrong and you are flying blind, believing a 99% 'sent' rate while a chunk of it never lands.

The status lifecycle

The status lifecycle — comparison diagram
Status Means Action
queued / accepted Provider took the message Store the id; start the delivery timer
sent Handed to the carrier In flight. Wait, do not resend yet
delivered Handset confirmed receipt Success; record latency (delivered minus sent)
undelivered Carrier tried and failed Validate the number, consider an alternate channel
failed Rejected before delivery Check error code: bad number, blocked, or no route
expired Validity period elapsed undelivered Route congestion or handset long-offline; investigate patterns

The two that teach you the most are expired and undelivered. A cluster of either on one destination is your early warning of a route problem or a number-quality problem. That is exactly the signal the firewall and grey-route articles describe from the carrier side. Single fa

Handling callbacks without shooting yourself

DLRs arrive by webhook, out of order, sometimes twice, sometimes late. Four rules keep the handler correct. The same ones the Node.js tutorial implements in code.

Spotting fake DLRs

Here is the uncomfortable part: not every 'delivered' is true. Grey-route operators and low-quality aggregators sometimes fabricate delivery receipts, because a fake delivered hides their real failure rate and keeps you paying. A DLR you cannot trust is worse than no DLR — it is a lie with a green checkmark.

  1. Seed real SIMsKeep a panel of prepaid SIMs you control in your key destinations. They are your source of truth.
  2. Compare DLR to handset realitySend to the panel; a message the provider marks 'delivered' that never appears on the handset is a fabricated receipt. This is the core check in our delivery benchmark method.
  3. Watch impossible timingSub-second 'delivered' receipts across every message, or delivery rates that never dip regardless of destination, are statistically implausible. Real networks have variance.
  4. Cross-check against verification rateIf DLRs say 99% delivered but your OTP entry rate is far lower than usual, the receipts and the users disagree — trust the users.

SMSRoute is a no-KYC SMS API with crypto billing (BTC, ETH, USDT, XMR, LTC, and SOL) on direct routes, and our position on DLRs is the one this article argues for: we return real carrier-sourced receipts you can audit against your own seed SIMs, and we would rather you run that test than take our word. Fund the $5 credit, send to phones you control, and compare. Honest DLRs survive that check; fabricated ones do not.

SMSRoute's published route pages list delivery from $0.004/message (premium direct-carrier corridors up to $0.035) with sub-100ms median submission and ~98.6% delivered success (smsroute.cc route pages, 2026).

FAQ

What is an SMS delivery receipt (DLR)?
An asynchronous callback from your provider reporting a message's real outcome — delivered, undelivered, failed, or expired — after the initial send response. The send response only confirms the provider accepted your request; the DLR reports what actually happened at the carrier and handset.
Why does my message show 'sent' but not 'delivered'?
'Sent' means the carrier accepted it; 'delivered' means a handset confirmed receipt, which arrives later via DLR. A message can sit in 'sent' briefly (in flight) or end in 'expired'/'undelivered' if the handset is unreachable or a route problem intervenes. Reconcile against the DLR, not the send response.
How do I handle DLR webhooks correctly?
Acknowledge with a 200 immediately and process asynchronously, key all updates on the message id for idempotency (duplicates are normal), respect status ordering so a late callback cannot overwrite a terminal one, and record delivered-minus-sent timestamps as your latency metric.
Can delivery receipts be faked?
Yes — low-quality aggregators and grey-route operators sometimes fabricate 'delivered' receipts to hide failure and keep you paying. Detect it by sending to prepaid SIMs you control and comparing the DLR to what actually arrives on the handset; fabricated receipts claim delivery the phone never saw.

Send your first SMS in 5 minutes

No KYC. Pay with BTC, ETH, USDT, XMR, LTC, and SOL. Live routes to 149 countries.

Get an API key →