All posts

Why SMS Delivery Fails: 8 Reasons and Which Ones You Can Prevent

··4 min read

Most failed texts come from a short list of causes, and about half of them are list problems you can fix before you press send: invalid numbers, missing or wrong country codes, landlines, and duplicates. The rest are about permission and reputation: opt-outs, unregistered 10DLC traffic and carrier filtering. Here's each one, what it looks like and how to prevent it.

The eight reasons

# Reason Typical sign Preventable with a list check?
1 Invalid or incomplete number Rejected immediately Yes
2 Missing or wrong country code Undelivered, or sent to another country Yes
3 Landline Undelivered or "unreachable" Yes, with a line type lookup
4 Duplicate numbers Same person texted twice, complaints Yes
5 Recipient opted out Blocked by your provider Partly: keep a suppression list
6 Unregistered US business traffic (10DLC) Filtered or blocked No: register your brand and campaign
7 Carrier spam filtering Delivered status missing, or "filtered" No: content and sending behaviour
8 Phone off, out of coverage or number disconnected Delivery fails or expires No list check can know this in advance

1. Invalid or incomplete numbers

A number one digit short, a fake 555 number from a form, or a field holding "n/a". These fail at once and still cost you a request with some providers. Validation against the country's numbering plan catches them. See how to check if a phone number is valid and 555 phone numbers.

2. Missing or wrong country code

07400 123456 is a UK mobile. Sent as is through a US-configured platform, it's either rejected or treated as a US number. SMS platforms need the full international form, E.164: +447400123456. Normalise every number with the right default country before you upload. For mixed lists, see international phone number format.

3. Landlines

Most landlines can't receive SMS. Outside North America, mobile prefixes make them easy to filter. In the US and Canada, mobiles and landlines share area codes, so you need a carrier lookup to tell them apart. Texting landlines wastes money and drags down your delivery rate, which carriers notice. More in validating phone numbers for SMS.

4. Duplicates

The same phone in three formats looks like three numbers. People who get the same promo twice are more likely to report it as spam. Deduplicate after normalising to E.164; see remove duplicate phone numbers.

5. Opt-outs

When someone replies STOP, providers typically block further messages to that number from your sender. If your list doesn't carry those opt-outs, sends to them fail, and in some setups you're also breaking the rules. Keep one suppression list and apply it to every campaign. Twilio, for example, returns a specific error when you message an unsubscribed recipient; its error code reference lists the codes.

6. Unregistered 10DLC traffic

In the US, business texts from ordinary 10-digit numbers (10DLC) must be registered. Carriers require brand and campaign registration through The Campaign Registry, usually done through your SMS provider. Unregistered traffic gets filtered or blocked, and no list cleaning will fix it. If you're sending A2P texts to US numbers, check your registration status with your provider first.

7. Carrier filtering

Carriers filter traffic that looks like spam: link shorteners, sudden volume spikes, content that doesn't match the registered use case, high opt-out or complaint rates. Follow your provider's guidance and the CTIA's messaging principles, keep content consistent with what people signed up for, and ramp volume gradually.

8. Phones that are off or numbers that are gone

A phone that's switched off or out of coverage fails until the message expires. A disconnected number fails or, worse, was reassigned to someone else. No validator can tell you in advance whether a phone is switched on. For consent-based US sends on older lists, the Reassigned Numbers Database checks for disconnections.

A pre-send checklist

  1. Normalise every number to E.164 with the right default country.
  2. Remove invalid numbers.
  3. Remove landlines; keep mobiles (and VoIP if your use case allows).
  4. Deduplicate.
  5. Apply your opt-out suppression list.
  6. Confirm 10DLC or sender registration for the destination country.
  7. Send a small batch first and read the failure codes.

Doing steps 1–4 on a CSV

Upload your list on SimpleVerifier's verifier. Each phone gets phone_status, phone_e164, phone_country and the numbering-plan phone_type, on paid plans. Outside North America that type already separates mobiles from landlines.

For US and Canadian lists, live carrier lookups, a paid extra (see pricing), add the real line type (mobile, landline or VoIP) and the carrier, so you can drop landlines before you send. If the file has emails, they get a live mailbox check in the same upload.

Check a single number first with the free phone number validator.

Related: mobile vs landline lookup · is this a cell phone number? · TCPA: mobile vs landline · clean phone numbers in a CSV

Common questions

Why are my text messages not being delivered?

The most common causes are numbers that are invalid or missing a country code, landlines that can't receive SMS, recipients who opted out, unregistered business traffic on US 10DLC numbers, and carrier spam filters. The first three are list problems you can fix before sending.

Can you send an SMS to a landline?

Usually not as a normal text. Some carriers convert the message to a voice call and some businesses enable texting on their landlines, but for campaigns you should treat landlines as unable to receive SMS.

What is 10DLC and why does it affect delivery?

10DLC means sending business texts from standard 10-digit US long codes. US carriers require these senders to register their brand and campaign through The Campaign Registry. Unregistered traffic is filtered or blocked.

Does 'delivered' mean the person read the text?

No. A delivered status means the carrier reported the message reached the handset or the network's delivery point. It doesn't confirm the person read it, or that the number still belongs to the person you meant to reach.

Check your list before you send

Real mailbox checks over SMTP, and nothing is sent to the address. Sign in with Google and your first 100 email checks are free, no card. Plans for bigger lists are on the pricing page.