Help Center / SMS Error Codes

SMS Error Codes

When a message fails, Linxi shows the carrier's own error code. This is what each one means in plain English, and what actually fixes it — because most of them are not retryable, and resending a blocked message just fails again.

Delivered, sent and undelivered are different things. "Sent" means the carrier accepted it. "Undelivered" means the carrier accepted it and then something downstream refused it — which is why an undelivered message still carries an error code worth reading.
1

❌ 30034 — Message blocked — A2P registration required

What happened. The sending number is not registered for A2P 10DLC. US carriers block unregistered traffic to mobile numbers; Verizon is the strictest and usually the first to reject.

On an inbound message this means the opposite. If you see 30034 on a message coming in, it is the sender's number that is unregistered, not yours — there is nothing to fix on your side.

If your own registration is already approved, 30034 is not about your setup. Two other things produce it: the recipient is itself an unregistered A2P long code, or the message went out on a number that is not attached to your approved Messaging Service. Re-registering an approved campaign will not change either.

How to fix it. Register the campaign. Nothing else fixes it and resending will fail identically every time. On a Linxi-managed number this happens automatically at provision; on your own number, use A2P Campaigns in Linxi Settings.

Read more →

2

❌ 30007 — Filtered as spam

What happened. A carrier spam filter blocked the message after Twilio accepted it. The message left Linxi and never reached the handset.

How to fix it. Three usual causes, in order of likelihood: the campaign is unregistered or registered for a different use case than the message you sent; the message contains a shortened link (bit.ly, tinyurl — carriers block these outright because the destination is hidden from filtering); or the wording looks promotional on a campaign registered as transactional.

Read more →

3

❌ 30004 — Blocked by the carrier

What happened. The carrier refused delivery to this handset.

How to fix it. By far the most common cause is that the recipient replied STOP at some point. That block lives at the carrier, so it holds regardless of what Linxi's own contact record says — and re-adding the contact does not, and must not, clear it. They have to reply START themselves.

Read more →

4

❌ 21610 — Recipient has opted out

What happened. This contact replied STOP to your number.

How to fix it. They cannot be messaged again until they text START. Deleting and re-creating the contact will not change this, and attempting to work around an opt-out is a TCPA violation, not a technical problem.

Read more →

5

⚠️ 30003 — Handset unreachable

What happened. The phone was switched off, out of coverage, or otherwise could not be reached.

How to fix it. Nothing is wrong with your configuration. Try again later — this one usually resolves itself.
6

⚠️ 30005 — Unknown or disconnected number

What happened. The destination number does not exist or has been disconnected.

How to fix it. Correct the number or remove the contact. Repeatedly sending to dead numbers hurts your sender reputation.
7

⚠️ 30006 — Landline, or SMS not supported

What happened. The destination is a landline or a number that cannot receive SMS.

How to fix it. Landlines cannot be texted by anyone. If the contact has a mobile as well, use that.
8

⚠️ 30008 — Unknown carrier error

What happened. The carrier rejected the message without giving a reason.

How to fix it. If it happens once, resend. If it happens repeatedly to the same recipient, treat it as a block on their side.
9

❌ 21211 — Invalid destination number

What happened. The number is not a valid phone number.

How to fix it. Check it is in full international form starting with + — +15615550123, not 5615550123 or (561) 555-0123.
10

❌ 21408 — Region not enabled

What happened. Sending to that country is not switched on for the carrier account.

How to fix it. Geographic permissions have to be enabled in the carrier console before messages to that region go anywhere.
11

Codes not listed here

These are Twilio's codes. Telnyx numbers use a different numbering scheme entirely, so a code from a Telnyx send will not appear above — the error panel links to the right provider's documentation for whichever carrier actually sent the message.

For any Twilio code not covered, Twilio's error reference is authoritative.