SMS Deliverability: A Practical Guide for Marketers
SMS deliverability is the percentage of intended text messages that actually reach recipients’ handsets, calculated as messages delivered ÷ messages intended × 100. That number is your program’s single most honest performance signal. A “sent” status from your API means the message left your provider’s gateway. Only a carrier delivery receipt (DLR) confirms the message reached the device. The gap between those two counts is where revenue disappears.
Three actions you can take before finishing this guide:
Verify your sender registration. If you send A2P traffic in the U.S., confirm your brand and campaign are registered through The Campaign Registry (10DLC). Unregistered numbers face immediate carrier filtering.
Run a phone number validation sweep. Remove landlines, deactivated numbers, and numbers that have ported to a carrier your provider can’t reach.
Check your last 24-hour sent-to-delivered delta. Pull your DLR logs and subtract delivered count from sent count. A significant delta warrants immediate investigation.
Key Takeaways
Strong SMS deliverability requires registered sending numbers, validated contact lists, continuous DLR monitoring, and low complaint rates maintained through automated engagement and suppression handling.
Point | Details |
|---|---|
Delivery rate formula | Measure delivered ÷ intended × 100; target above 90% on a clean list. |
Sent-to-delivered delta | Monitor this gap daily; a widening delta is the earliest signal of silent carrier filtering. |
10DLC registration | Register brand and campaign through The Campaign Registry, but know that carriers score traffic in real time even after registration. |
Failure code triage | Sort fail codes into permanent, temporary, and unknown to drive the right remediation action for each. |
Astreaux automation | Instant replies and automated opt-out processing keep complaint rates low and carrier trust scores stable. |
Which metrics actually measure SMS deliverability?
Twilio’s deliverability documentation draws a clear line between “sent” and “delivered” that most marketers miss. Your platform marks a message sent the moment it leaves the gateway. Delivered means a carrier DLR came back confirming handset acceptance. Those two states are not interchangeable, and treating them as equal will inflate your reported SMS message success rate.
Here are the metrics worth tracking consistently:
Delivery rate: (Messages delivered ÷ Messages intended) × 100. Your baseline KPI. Anything below 90% on a clean list deserves a root-cause investigation.
Sent-to-delivered delta: The raw count difference between sent and delivered. A widening delta over time signals silent carrier filtering, not just bad numbers.
Bounce and fail codes: Categorize every non-delivery into permanent (invalid number, landline) or temporary (device off, network congestion). Permanent failures need list removal; temporary ones may warrant a retry.
Latency: Time between send and DLR receipt. Spikes in latency often indicate throttling or grey-route routing problems before fail codes appear.
Complaint rate: The share of recipients who report your messages as spam. Carriers track this in real time and will throttle or block senders whose complaint rate climbs.
Unsubscribe rate: A rising opt-out rate signals content or frequency problems that will hurt your sender reputation before carriers act.
Reply rate and read interactions: Positive engagement signals that carriers use to score traffic quality.
Metric | Formula / Source | Healthy Benchmark | Warning Sign |
|---|---|---|---|
Delivery rate | Delivered ÷ Intended × 100 | High on a clean list | Below a typical acceptable level |
Sent-to-delivered delta | Sent count minus delivered count | Near zero | Growing over time |
Complaint rate | Complaints ÷ Delivered | As low as possible | Any sustained upward trend |
Unsubscribe rate | Opt-outs ÷ Delivered | Low and stable | Spike after a campaign |
Latency | Seconds from send to DLR | Under 30 seconds | Consistent delays over 2 minutes |
One important caveat: most platforms report “delivered” based on carrier receipts, but that status does not guarantee the user saw the message. Sinch Engage notes that the distinction between “delivered” and “read” matters when you’re interpreting campaign ROI, which is why reply rate and click-through rate belong in your dashboard alongside delivery rate.
Common causes of SMS delivery failure and how to diagnose each
Most SMS deliverability issues trace back to a short list of root causes. Knowing which one you’re facing cuts your triage time significantly.
Invalid or stale numbers: Numbers that have been deactivated, ported, or were never mobile to begin with generate permanent fail codes. Lists older than six months without a validation pass are high-risk.
Carrier filtering: Carriers run automated spam detection on content, volume patterns, and sender behavior. A sudden volume spike from a new number, spammy phrasing, or a shared URL shortener can trigger silent blocking with no explicit fail code returned.
Unregistered or improperly verified sending identities: Sending A2P traffic from an unregistered long code in the U.S. is the fastest path to carrier filtering. Short codes require separate carrier approval; toll-free numbers need their own verification process.
Grey-route routing: Some aggregators route traffic through unofficial paths to reduce cost. These routes increase both latency and loss rates, and they often produce no DLR at all, making the failure invisible in your dashboard.
Device-level problems: A powered-off phone, a full inbox, or a handset roaming on a network your provider can’t reach will generate temporary fail codes. These are usually retriable.
Silent filtering vs. explicit fail codes: Silent filtering is the harder problem. Your provider shows the message as sent; no DLR ever arrives. The only way to detect it is monitoring the sent-to-delivered delta over time, not just looking at individual message statuses.
Pro Tip: Set up a small seed list of real numbers across the major U.S. carriers (AT&T, T-Mobile, Verizon) and include them in every campaign send. If your seed numbers stop receiving messages while the rest of the send looks normal, you have carrier-specific filtering.
How do number types and routing options affect deliverability?
Choosing the right sending number is one of the highest-leverage decisions in your SMS program. The trade-offs between long code vs. short code, toll-free, and branded sender IDs are real and affect both throughput and filtering risk.
Long code / 10DLC
Standard 10-digit long codes registered under the 10DLC framework are the right starting point for most small-to-mid-volume senders. Registration through The Campaign Registry assigns a trust score that influences your throughput limits and filtering treatment. Twilio’s long code vs. short code comparison notes that 10DLC numbers are well-suited for two-way, conversational messaging but carry lower throughput than short codes and higher filtering risk if registration is incomplete or engagement metrics are poor.
Short code
Short codes (5–6 digit numbers) offer very high throughput and tend to receive more favorable carrier treatment because of their vetting process. Mailchimp’s comparison guide notes that short codes can handle large volumes of messages per second, making them suitable for high-volume promotional sends. The trade-off: a multi-week carrier approval process and significantly higher monthly cost. For most service professionals starting out, short codes are a later-stage investment.
Toll-free numbers
Toll-free numbers sit between long codes and short codes on throughput and cost. They require their own verification process and work well for transactional notifications and customer service use cases. Two-way messaging is supported, though throughput limits apply.

Branded sender IDs
Alphanumeric sender IDs (available in many markets outside the U.S.) allow you to display a brand name instead of a number. They improve recognition but eliminate two-way messaging capability and aren’t supported by U.S. carriers.
Start with a registered 10DLC long code for conversational and low-to-mid-volume campaigns.
Plan for a short code when your monthly volume exceeds what 10DLC throughput supports or when carrier trust becomes a bottleneck.
Use toll-free for transactional flows where two-way messaging matters but short code cost isn’t justified.
Always ask your provider whether they use direct carrier connections or rely on aggregator chains, since extra hops increase both latency and loss.
For a deeper breakdown of the 10DLC registration process and how brand trust scores are assigned, the A2P 10DLC registration guide covers the step-by-step process.
What technical settings actually improve text message delivery?
Getting the technical configuration right prevents a category of failures that have nothing to do with your list quality or content.
Message encoding: GSM-7 encoding supports 160 characters per segment and is processed efficiently by most carriers. Switch to UCS-2 (required for emoji, accented characters, or non-Latin scripts) and your character limit drops to 70 per segment, increasing segmentation and cost. Some carriers treat heavily segmented UCS-2 messages with more scrutiny.
Concatenation: Messages over the single-segment limit are split into multipart messages and reassembled on the device. Carriers handle concatenation differently, and some networks may deliver segments out of order or drop one segment of a multipart message. Keep messages under 160 GSM-7 characters where possible.
DLRs and webhooks: Configure your provider to push DLR status callbacks to a webhook endpoint you control. Twilio’s troubleshooting documentation recommends using event webhooks and status callbacks to flag messages for resend or audit in near real time. Polling for status is slower and misses time-sensitive filtering events.
Retry logic: For temporary failures (device off, network congestion), implement exponential backoff rather than immediate re-sends. Rapid retries on the same number look like spam behavior to carrier filters and can worsen your sender score.
Failure code categorization: Build a simple rule engine that sorts incoming fail codes into three buckets: permanent (remove from list immediately), temporary (schedule retry with backoff), and unknown (flag for manual review). This prevents automated retries from hammering permanently invalid numbers.
Pro Tip: Archive every raw DLR callback, not just the final status. Intermediate states and timestamps reveal routing problems and throttling patterns that a simple delivered/failed summary will hide.
Operational best practices to sustain high deliverability
Deliverability isn’t a one-time setup. It’s an ongoing operational discipline that requires consistent habits across your entire SMS program.
Consent and suppression
Every contact on your list needs documented opt-in consent. Double opt-in, where the subscriber confirms via a reply keyword, produces a higher-quality list and gives you a defensible record if a carrier or regulator asks. Maintain a suppression list that captures every opt-out immediately and syncs across all sending systems. A contact who opted out and receives another message is a complaint waiting to happen.
Segmentation and volume pacing
Warm up new sending numbers gradually. Starting with a large blast from a new 10DLC number is one of the most reliable ways to trigger carrier filtering. Ramp volume over days or weeks, and segment your list so your highest-engagement contacts receive messages first during a warm-up period.
Here’s a practical operational checklist:
Collect opt-in at the point of contact and record the timestamp, source, and keyword.
Send a confirmation message immediately after opt-in to validate the number and set expectations.
Segment by engagement level and send frequency preference.
Throttle sends to stay within your registered throughput limits.
Run a phone number validation pass on any list segment that hasn’t been messaged in 90 days.
Audit message content before every campaign for spam triggers: URL shorteners, excessive capitalization, missing opt-out language, and promotional phrasing that mimics phishing patterns.
Monitor complaint and unsubscribe rates within 24 hours of every send.
Klaviyo’s SMS deliverability guide identifies spammy phrasing, shared URL shorteners, sudden volume spikes, and missing opt-out instructions as the most common content triggers that lead to carrier filtering. Replacing shared shorteners with branded or dedicated domains alone removes one of the most common filtering signals.
How to run a deliverability audit in a single workday
A structured audit turns a vague “deliverability feels off” concern into a prioritized fix list. Run this plan whenever your delivery rate drops or your sent-to-delivered delta widens.
Pull your baseline data. Export delivery rate, sent-to-delivered delta, bounce codes, complaint rate, and unsubscribe rate for the last 7–30 days. Segment by campaign, number, and send time.
Categorize your fail codes. Sort every non-delivery into permanent, temporary, and unknown. A high permanent rate points to list hygiene. A high temporary rate points to throttling or device issues. A high unknown rate points to silent filtering or routing problems.
Run a controlled test send. Take a small, clean segment and send a plain-text message with no links from your registered number. Compare the delivery rate against your baseline. If it’s significantly higher, your content or links are triggering filters.
Test alternate number types. If you’re on a long code, send the same message from a toll-free number to a matched segment. A meaningful delivery rate difference confirms carrier-level filtering on your long code.
Validate your number list. Use a phone number verification service to identify landlines, deactivated numbers, and numbers that have ported. Remove permanent failures immediately.
Check your registration status. Log into The Campaign Registry or your provider’s dashboard and confirm your brand and campaign are approved, not pending or suspended. Carrier feedback notes in the TCR portal often identify specific compliance gaps.
Build your remediation plan. Prioritize fixes in three tiers:
Immediate: Remove invalid numbers, update suppression lists, fix missing opt-out language.
Within one week: Audit content for triggers, adjust send pacing, replace shared URL shorteners.
Longer term: Evaluate short code acquisition, switch providers if routing quality is consistently poor.
Sinch Engage’s delivery failure guide structures a similar ranked action plan: registration first, then list hygiene, then content, then pacing. That order matters because fixing content before fixing registration wastes effort.
How automation and engagement signals improve sender reputation

AWS’s SMS optimization guide makes a point that most marketers underestimate: expecting 100% delivery is unrealistic because carrier networks are dynamic. The practical goal is building a resilient sender reputation through consistent hygiene and sustained engagement, not chasing a theoretical perfect rate.
Carrier scoring is continuous. Signal House explains that 10DLC registration is necessary but not sufficient. Carriers score traffic in real time and will filter registered campaigns when engagement and complaint metrics indicate spammy behavior. Registration opens the door; your ongoing behavior determines whether you stay inside.
This is where automation creates a measurable advantage:
Instant replies to inbound messages signal two-way engagement, which carriers read as a positive reputation indicator.
Automated opt-out processing eliminates the manual delay that can turn an opt-out into a complaint. A contact who opts out and receives another message because the suppression list wasn’t updated in time is a preventable complaint.
Automated confirmations and appointment reminders reduce no-show rates, which in turn reduces the frustrated reply-spam behavior that drives complaint rates up.
Consistent, predictable send patterns (rather than sporadic volume spikes) build the stable reputation that carrier trust scores reward.
For service professionals running SMS-based lead follow-up, the connection between response speed and deliverability health is direct. Faster engagement means lower complaint rates, and lower complaint rates mean better carrier scoring.
How regulations and compliance vary by country and region
Regulatory frameworks for commercial SMS vary significantly across markets, and the compliance requirements in one country can be entirely different from those in another.
In the U.S., the Telephone Consumer Protection Act (TCPA) governs consent requirements for marketing messages, and the FCC’s A2P 10DLC framework sets the technical registration standard for business-to-consumer SMS. The Campaign Registry sits at the center of that system, assigning brand and campaign trust scores that directly influence carrier filtering decisions.
In the European Union, the General Data Protection Regulation (GDPR) imposes strict consent and data-handling requirements on any organization messaging EU residents, regardless of where the sender is based. Canada’s Anti-Spam Legislation (CASL) requires express consent for commercial messages and carries significant penalties for violations.
The practical implication for your deliverability program: compliance isn’t just a legal obligation. Carriers in each market apply filtering rules that reflect local regulatory standards. A message that passes U.S. carrier filters may be blocked by a European operator applying GDPR-aligned filtering logic. If you send across multiple markets, your compliance posture needs to match the strictest framework in your recipient base.
How carrier type and regional network differences affect delivery
Not all carriers treat SMS traffic the same way, and the differences matter more than most senders realize.
Tier-1 carriers (AT&T, T-Mobile, Verizon in the U.S.) run the most aggressive spam-detection systems and apply the strictest filtering. They also have the most complete DLR reporting, which means failures are visible. Smaller regional carriers and MVNOs (mobile virtual network operators) vary widely in their filtering sophistication and DLR reliability. Some return no DLR at all for undelivered messages, creating the silent failure problem.
International delivery adds another layer. Messages crossing borders typically route through one or more aggregators, each adding latency and a potential failure point. Grey routes, where traffic is sent through unofficial interconnects to reduce cost, are common in international SMS and produce higher loss rates and unreliable DLRs. If international delivery is part of your program, ask your provider specifically about their carrier interconnect agreements and whether they use direct routes or aggregator chains.
Regional network conditions also affect delivery timing. Rural coverage gaps, network congestion during peak hours, and roaming scenarios all generate temporary fail codes that look like permanent failures if your retry logic doesn’t distinguish between them.
How does A2P 10DLC registration affect your delivery rates?
A2P 10DLC (Application-to-Person, 10-digit long code) registration is the U.S. carrier framework for business SMS traffic. Every brand sending A2P messages on a 10-digit number must register their company and each messaging campaign through The Campaign Registry. Carriers use that registration data to assign trust scores that govern throughput limits and filtering treatment.
The registration process has two components: brand registration (your company identity) and campaign registration (the specific use case, such as marketing, transactional, or two-way messaging). Each campaign type carries different throughput allowances and content expectations. Mismatching your actual message content with your registered campaign type is a common cause of filtering that doesn’t show up as an obvious fail code.
What registration does not do is guarantee delivery. As Signal House documents, carriers continue scoring registered traffic in real time. A registered campaign with rising complaint rates or spammy content patterns will be filtered just as aggressively as an unregistered one. Registration sets your baseline trust level; your ongoing behavior either builds on it or erodes it.
Does message content type affect deliverability rates?
Transactional messages (appointment confirmations, order updates, one-time passwords) consistently achieve higher delivery rates than promotional messages. The reasons are structural, not accidental.
Transactional messages are expected by the recipient, sent in direct response to an action they took, and typically contain no promotional language. Carriers recognize these patterns and apply lighter filtering. Promotional messages, by contrast, are unsolicited in the sense that the recipient didn’t trigger them with a specific action. They’re more likely to contain the content patterns (urgency language, promotional offers, links) that carrier filters flag.
The practical guidance: keep your campaign registration type accurate, and don’t blend promotional content into a transactional message stream. A confirmation message that ends with a promotional offer crosses into promotional territory and may be treated as such by carrier filters. Separate your transactional and promotional sending numbers where volume justifies it, and apply stricter content discipline to your promotional campaigns.
How to read and act on delivery failure codes
Failure codes are the diagnostic output of the carrier network, and most marketers ignore them beyond a simple delivered/failed split. That’s a missed opportunity.
Failure codes generally fall into three categories:
Permanent failures: The number doesn’t exist, is a landline, or has been deactivated. Error codes in this category (such as Twilio’s error 21211 for invalid numbers or 21614 for non-mobile numbers) mean the contact should be removed from your list immediately. Retrying permanent failures wastes throughput and harms your sender reputation.
Temporary failures: The device is off, the inbox is full, or the network is temporarily unavailable. These are retriable, but only with appropriate backoff. Immediate retries on temporary failures look like spam behavior.
Unknown or no DLR: The message was sent but no receipt came back. This is the signature of grey-route routing or silent carrier filtering. A pattern of unknown codes from a specific carrier or route is a signal to escalate to your provider.
Twilio’s troubleshooting documentation recommends building a rule engine that categorizes fail codes into permanent, temporary, and unknown buckets so automated remediation can run safely.
Emerging trends shaping SMS deliverability
Two key developments are reshaping how deliverability works in practice: RCS and AI-driven carrier filtering.
RCS (Rich Communication Services) is the protocol that replaces standard SMS with a richer messaging experience, including read receipts, typing indicators, and media support. Google Messages and Apple’s iOS 18 update have significantly expanded RCS adoption. For deliverability, RCS introduces a new layer of sender verification (RCS Business Messaging requires brand verification through Google) and a new set of delivery signals. Brands that invest in RCS verification early are building a reputation asset that will matter more as adoption grows.
AI-driven carrier filtering is already the dominant mechanism for spam detection at major U.S. carriers. These systems analyze content, volume patterns, sender behavior, and engagement signals simultaneously, and they update in near real time. The implication is that the filtering environment is no longer static. A content pattern that passed filters last quarter may not pass today. This makes continuous monitoring, not periodic audits, the only reliable approach to maintaining delivery rates.
The combination of these two trends points toward a future where sender identity verification and real-time engagement signals matter more than any single technical configuration choice.
Setting realistic SMS deliverability KPIs
Most marketers set a delivery rate target and then stop. That’s the wrong frame. Delivery rate is a lagging indicator. By the time it drops, the underlying problem has already been running for days or weeks.
A better KPI structure monitors the leading indicators: complaint rate, unsubscribe rate, and sent-to-delivered delta. These move before delivery rate does, which gives you time to intervene before carriers act. Complaint rates should stay as low as possible; any sustained upward trend warrants immediate content and list review. Latency above two minutes on a domestic send is worth investigating even if delivery rate looks fine.
Know when to escalate. A sudden spike in unknown fail codes, a delivery rate drop of more than 5 percentage points in 48 hours, or a complaint rate that doubles in a single campaign are all signals to contact your provider’s technical support team, not just adjust your content. Some filtering events require carrier-level intervention that no amount of content editing will fix.
Chasing 100% delivery, as AWS notes, is unrealistic given how dynamic carrier networks are.
Astreaux keeps your SMS reputation working for you
The fastest way to damage your sender reputation is a slow, manual response process that lets opt-outs pile up and leaves leads waiting long enough to mark your messages as spam. Astreaux solves that at the source by automating instant, personalized replies the moment a lead responds, keeping engagement signals high and complaint rates low.

For service professionals running SMS-based lead follow-up, the operational benefits are direct: automated opt-out processing syncs suppression lists in real time, so no contact receives a message after opting out. Integrations with over 7,000 apps keep your CRM and number validation data current, reducing invalid-number sends before they happen. And because Astreaux learns your business’s voice, every automated reply feels personal, not robotic, which drives the reply rates that carrier scoring rewards.
Whether you’re a contractor, mortgage broker, or real estate agent, consistent engagement and clean suppression handling are what separate a high-performing SMS program from one that gets filtered. Start your trial at Astreaux and see how automated engagement protects your deliverability from day one.
Sources
SMS deliverability: how to fix delivery failures - Sinch Engage
Short Code vs 10DLC: Which One Works for Queue Systems? — Mailchimp
FAQ
What is SMS deliverability and how is it measured?
SMS deliverability is the percentage of intended messages that reach recipients’ handsets, calculated as messages delivered ÷ messages intended × 100. The key distinction is that a “sent” status from your provider only means the message left the gateway; a carrier DLR confirms actual delivery.
Do SMS texts always get delivered?
No. Delivery can fail due to invalid numbers, carrier filtering, unregistered sending identities, device conditions, or routing problems. Even registered 10DLC senders can be filtered if their complaint or engagement metrics indicate spammy behavior.
What causes a delay in delivering SMS messages?
Latency typically signals throttling, grey-route routing, or network congestion. Domestic messages on direct carrier routes usually deliver in under 30 seconds; consistent delays above two minutes warrant a routing investigation with your provider.
Is SMS text blasting illegal?
Mass SMS sending is legal in the U.S. when you have documented opt-in consent and comply with TCPA requirements, including honoring opt-outs immediately. Sending to purchased lists or contacts without consent violates TCPA and can result in significant penalties.
Is SMS becoming obsolete?
SMS remains a high-engagement channel, and RCS (Rich Communication Services) is expanding its capabilities rather than replacing it. The practical focus for marketers is maintaining sender reputation and adapting to AI-driven carrier filtering, not abandoning the channel.





