You send a text to a customer. Your dashboard says it went out. The customer swears they never got it. Nothing errored, nothing bounced, no red banner appeared anywhere, and yet the message is simply not on their phone. That gap between "the software says it sent" and "the person says it never arrived" is the most confusing failure mode in business messaging, because the system that failed you is one you have no login to.
Text messaging is not like email. There is no inbox to inspect, no spam folder the recipient can dig through, and no bounce message explaining what happened. Between your send button and someone's lock screen sit your platform, an aggregator, a carrier network, and automated spam filters that make judgment calls in milliseconds and rarely explain them. When a message dies in that chain, it dies quietly.
Here is what is actually happening, and how to figure out which problem is yours.
What "not delivering" usually means
Almost every "my texts are not delivering" complaint turns out to be one of five things, and they are not equally likely.
Carrier filtering. Your message reached the carrier and the carrier decided not to hand it to the subscriber. This is the most common cause by a wide margin for business senders, and the most invisible, because filtering frequently produces no useful error at all.
A registration problem. In the United States, business texting from a standard 10-digit number has to be registered under A2P 10DLC, and unregistered traffic is not deprioritized, it is blocked. Twilio's documentation is blunt: unregistered 10DLC messages return error 30034, and Twilio phased in blocking from July 5, 2023 to a full block of unregistered U.S. traffic after August 31, 2023.
A throughput or volume ceiling. You tried to push more messages per second, or more messages per day, than your sending profile is allowed. The overflow gets queued, delayed, or dropped.
A real device or number problem. Landline, disconnected number, or a handset that blocked you. This is the cause everyone assumes first and it is rarely the answer.
Nothing at all. The message arrived and the recipient never saw it. Both iPhone and Android silently sort unknown senders into a secondary messages tab.
The reason this list is worth memorizing is that each cause has a completely different fix, and treating a filtering problem like a phone problem burns weeks.
The delivery states nobody explains
Your messaging dashboard reports a status for every message, and those statuses mean far less than they appear to. Using Twilio's terminology, which most platforms mirror:
- —Queued or accepted. Your platform received the message. It has not gone anywhere yet. This tells you your own code worked.
- —Sent. The message was handed off downstream to the carrier. It says nothing about whether the carrier will deliver it.
- —Delivered. A delivery receipt came back indicating the carrier accepted the message for the subscriber.
- —Undelivered. A delivery receipt came back saying it did not get there, usually with a 3XXXX or 6XXXX error code attached.
- —Failed. Something broke while processing the message, with an error code attached explaining what.
- —Unknown. Twilio surfaces error 30008 when a generic error comes back from a carrier partner, or when the returned error code has not been mapped to a specific one. It is genuinely a shrug.
Two things about this list surprise people.
First, delivered does not mean read. For SMS, the delivery receipt is a network acknowledgement, not a read receipt. Twilio publishes a support article on messages that show as delivered but do not show up on the device, and notes that not every message gets a delivery receipt at all, because not all carrier partners return them. If your reporting shows 98 percent delivered, that is a claim about network handoffs, not human attention.
Second, the absence of an error is not evidence of success. Filtering is designed to be undetectable to spammers, which means it is also undetectable to you. A message can be accepted, marked sent, never delivered, and never generate a single alert.
Why carriers filter business text messages
Carriers filter because consumers demand it. The FCC's consumer guidance on unwanted robocalls and texts, along with rules requiring providers to block illegal texting traffic, put carriers under real pressure to be aggressive. Their filters weigh several signals at once, and the signals compound.
Registration status. Registered traffic tied to a verified brand gets treated as a known sender. Unregistered traffic looks exactly like spam, because spammers also do not register.
Content patterns. ALL CAPS, stacked punctuation, heavy emoji use, multiple links, and promotional phrasing all raise scores. So does the SHAFT set, which CTIA's Messaging Principles and Best Practices (May 2023) defines as sex, hate, alcohol, firearms, and tobacco. Those categories require specific handling and are filtered aggressively by default.
Sending velocity. A number that jumps from 20 messages a day to 2,000 looks compromised or rented. Ramping matters.
The reply ratio. Real conversations get replies. Blast traffic does not. A number sending thousands and receiving almost nothing back is behaving like an advertiser, and carrier scoring notices.
Opt-out and complaint rates. This is the signal most businesses underweight. Bandwidth's support documentation explains that recipients report unwanted messages by forwarding them to 7726, which spells SPAM on a keypad, and that a high volume of spam complaints combined with a high opt-out percentage can cause a carrier to block the sending number outright.
CTIA's guidance treats elevated opt-out rates as direct evidence of consumer dissatisfaction. Honoring STOP instantly and permanently is not just a legal obligation, it is deliverability hygiene. A registered, well-behaved campaign with a bad complaint rate still gets filtered.
Link shorteners and why they hurt
If you take one tactical thing from this article, take this one: stop using public link shorteners in business texts.
CTIA's Messaging Principles and Best Practices addresses this directly, advising that where a sender uses a URL shortener, it should be a shortener with a web address and IP addresses dedicated to that sender's exclusive use. The same guidance says links in messages should not conceal or obscure the sender's identity, and that the destination should clearly identify the site owner.
The reason is straightforward. Public shorteners like bit.ly and tinyurl.com are shared infrastructure. Thousands of unrelated senders, including active phishing campaigns, use the same domain, and a filter cannot see where any given short link goes. You inherit the worst behavior on the platform.
The fix is a branded short domain you control, or your own full URL. It builds its own reputation over time, and a recipient who can read the domain is more likely to tap it.
Registration problems that look like delivery problems
A large share of "our texts stopped working" tickets trace back to registration, and the symptoms mislead because they are partial. Messages to one carrier land while another's vanish. Volume works fine Tuesday and dies Thursday. Three failure patterns are worth knowing.
Not registered at all. The simplest case, and the one that produces total blocking rather than partial. If you are new to business texting or you inherited a number from a previous vendor, verify registration first. Our guide to what 10DLC is and how registration works walks through the brand and campaign layers.
Registered incorrectly. Registration includes sample messages and a declared use case. Carriers now compare live traffic against what was registered. If you registered a customer care campaign and send marketing, or your samples do not resemble what you actually send, the mismatch is a filtering trigger even though your registration status reads "approved."
Registered but capped. Throughput on 10DLC is measured in message segments per second and is tied to the brand's trust score and campaign use case. Twilio's documentation notes that sole proprietor and low-volume brands do not go through secondary vetting and are not assigned a trust score, so they get fixed throughput plus hard ceilings: 1,000 messages per day toward T-Mobile subscribers and 15 messages per minute toward AT&T subscribers, per campaign.
T-Mobile applies its daily limit at the brand level, which all of a brand's campaigns share. Hit those ceilings and messages queue or drop, which on your end looks exactly like filtering.
Number type matters here too. Shared short codes, where several businesses split one five or six digit code, were retired by U.S. carriers in 2021. A dedicated short code offers very high throughput but costs hundreds of dollars a month and takes weeks to approve. Toll-free numbers require their own verification and sit between the two. For most small and mid-sized businesses having real conversations, a properly registered 10DLC number is the right tool. The problem is almost never the number type. It is the registration and the behavior.
How to diagnose your own sending
Work in this order. It goes cheapest to most expensive.
- 01Read the logs, not the summary. Pull the actual message record and find the status and error code. 30034 means unregistered. 30008 means unknown, which usually means filtering. 30007 means carrier violation, which means content or reputation. The summary dashboard will not tell you this.
- 02Test across all three major carriers. Get a test recipient on Verizon, AT&T, and T-Mobile. If one carrier fails and two succeed, you have a carrier-specific filtering or throughput issue, not a platform issue.
- 03Confirm your registration is approved and accurate. Not just approved. Compare your registered sample messages to what you are actually sending this week.
- 04Audit one week of outbound copy. Count the links, the shorteners, the capitalized words, and the promotional phrasing. Rewrite the worst offender and test again.
- 05Check your opt-out rate. If it is climbing above roughly one percent, treat that as the root cause and fix the list and the message before blaming the network.
- 06Check your ratio of outbound to inbound. If you are sending far more than you receive, you are running broadcasts, and broadcasts get scored like broadcasts.
What you can and cannot control
Let us be honest about the ceiling here, because the industry usually is not.
Nobody can guarantee delivery to a mobile carrier. Not your platform, not your aggregator, not us. Carriers make independent filtering decisions on their own networks using criteria they do not publish, and those criteria change. Any vendor promising you a specific deliverability rate or guaranteed inbox placement is describing something they do not control. Treat that promise as a warning sign.
What you do control is substantial: registration accuracy, what your messages say, how fast you ramp, how clean your list is, how quickly you honor opt-outs, and whether your traffic looks like conversation or like a megaphone. Those inputs are the whole game.
There is also a quieter factor. Carriers score two-way traffic more favorably than one-way traffic, and two-way traffic requires actually answering people. That is the part most businesses skip, because replying to every inbound text at 9 pm on a Sunday is not realistic for a human team. It is what Kai does.
When someone texts in, Kai reads the thread, answers the question, qualifies, schedules the appointment, and hands off to a person when the conversation needs one. When someone asks to stop, Kai stops. Good customer service first, healthier sending pattern second.
Fix the registration, clean up the copy, drop the public shorteners, honor every opt-out immediately, and hold real conversations. That is the list.
Frequently asked questions
Why are my texts not delivering to some people but not others?
Carrier-specific filtering is the usual answer. Verizon, AT&T, and T-Mobile run separate filtering systems with separate thresholds, so a message can reach one carrier's subscribers and be blocked for another's. Test the same message to a recipient on each of the three major carriers. If failures cluster on one carrier, the problem is filtering or a throughput ceiling on that network, not your platform.
Does "delivered" status mean the person read my text?
No. For SMS, a delivered status means a delivery receipt came back indicating the carrier accepted the message for that subscriber. It is a network acknowledgement, not a read receipt. Twilio also documents cases where messages show as delivered but do not appear on the device, and notes that not all carrier partners return delivery receipts at all.
Why do link shorteners hurt SMS deliverability?
Public shorteners such as bit.ly and tinyurl.com are shared by thousands of unrelated senders, including phishing campaigns, so the domain carries a shared and often poor reputation. CTIA's Messaging Principles and Best Practices advises senders who use a shortener to use one with a web address and IP addresses dedicated to their exclusive use. A branded short domain or your own full URL is the safer choice.
Can anyone guarantee my business texts will be delivered?
No. Mobile carriers make independent filtering decisions using criteria they do not publish and can change at any time, so no platform or vendor can guarantee carrier delivery or inbox placement. What you can control is registration accuracy, message content, sending velocity, list quality, and opt-out handling, and those factors have the largest effect on outcomes.
Does 10DLC registration fix my delivery problems?
Registration is necessary but not sufficient. Unregistered 10DLC traffic to U.S. numbers is blocked outright and returns error 30034, so registration removes a hard blocker. But carriers keep scoring registered traffic on content, volume patterns, complaint rate, and opt-out rate, so a registered campaign with poor sending hygiene still gets filtered.
---
Sources: Twilio, "Shutdown of Unregistered 10DLC Messaging FAQ" and error reference 30034, blocking phased in from July 5, 2023 to a full block after August 31, 2023. Twilio, "Track the Message Status of Outbound Messages" and "Troubleshooting Undelivered Messages," accessed August 2026. Twilio, "SMS messages show the status Delivered, but are not showing up," accessed August 2026. Twilio, "Message throughput (MPS) and Trust Scores for A2P 10DLC in the US," accessed August 2026. CTIA, "Messaging Principles and Best Practices," May 2023. Bandwidth Support Center, "Understanding SPAM complaints," accessed August 2026. Text-Em-All, "Causes of carrier SMS filtering" and "Group texting for business: short codes, long codes and 10DLC," accessed August 2026. Federal Communications Commission, "Stop Unwanted Robocalls and Texts," accessed August 2026. Product guidance, not legal advice.