Business texting not delivering? Causes and fixes that actually work

Answer first: when business SMS stops landing, the cause is almost always compliance (missing A2P 10DLC registration), consent (opt-out or no prior relationship), or carrier filtering — not a broken CRM. Work through those three layers before you rip out your automation.

A business owner troubleshooting why customer SMS messages show as undelivered on a phone dashboard next to carrier compliance settings

Start with the symptom, not the platform

Business texting failures look chaotic from the inside: one customer swears they never got your reminder, another got it twice, your dashboard shows "sent" with no delivery receipt, and your appointment reminder workflow ran fine yesterday. Before you rebuild automations or switch CRMs, sort the failure into one of three buckets — compliance, consent, or carrier filtering. Nine times out of ten the fix lives there, not in your workflow logic.

We see this on live GoHighLevel accounts running missed-call text-back, review requests, and reminder sequences. The pattern repeats: owner texts their own mobile during setup — success — then real customer volume exposes gaps carriers ignored in the sandbox. This guide walks the causes in fix order so you stop guessing.

Cause #1: missing or incomplete A2P 10DLC registration

This is the top reason business SMS "randomly" stops delivering in the US. Since 2023, AT&T, T-Mobile, Verizon, and their MVNOs require businesses sending from local 10-digit numbers to register a brand (who you are) and a campaign (what you send) through A2P 10DLC. Unregistered numbers may deliver a handful of test messages, then get throttled, silently dropped, or hard-blocked — especially above ~10–50 messages per day.

Symptoms: delivery works to your phone but fails to customers; some carriers receive texts while others do not; your SMS platform shows the number as "pending" or "unregistered"; volume increases and failure rate climbs.

Fix: complete brand and campaign registration, paste sample messages with "Reply STOP to opt out," link your sending number to the approved campaign, and retest on real handsets on different carriers. Our full walkthrough — timeline, costs, rejection fixes — is in the A2P 10DLC registration guide. Budget about seven calendar days from first submit to production-safe SMS; do not promise customers texting until carriers approve.

Do not create a second brand to "start over." Duplicate EIN registrations cause more rejections. Fix the cited rejection reason and resubmit the same brand.

Cause #2: opt-out, consent, and TCPA basics

Carriers enforce opt-out at the network level. If a contact replied STOP, unsubscribed in your CRM, or never consented to SMS, messages to that mobile will fail — and repeated attempts can hurt deliverability for your entire campaign.

Symptoms: delivery fails for specific people who previously opted out; platform shows "suppressed" or "opted out"; you imported an old marketing list and half the sends bounce.

Fix:

  • Honor STOP automatically — every compliant platform syncs opt-outs; never manual-delete and resend.
  • Only text people with a recent business relationship: booked an appointment, completed service, called your line, or explicitly opted in on a form with SMS disclosure.
  • Scrub imported lists before enabling workflows; cold SMS to purchased numbers fails legally and technically.
  • Include opt-out language on recurring automations: "Reply STOP to unsubscribe."

Review and reminder flows in our Google reviews guide and no-show reminders guide assume post-service or post-booking consent — match that model unless you run a dedicated marketing campaign with its own opt-in.

Cause #3: carrier filtering and content flags

Even with A2P approval, carriers scan message content. Certain patterns trigger spam scores and silent filtering — the message leaves your platform but never reaches the handset.

Common content triggers:

  • Public URL shorteners (bit.ly, tinyurl) — use your full domain or a branded link on your website instead.
  • ALL CAPS subject lines and aggressive promo language ("ACT NOW!!!", "FREE!!!").
  • Restricted categories — cannabis, CBD, firearms, crypto, debt relief, and adult content face hard blocks regardless of registration.
  • Missing sender identity — messages that do not name the business look like phishing; start with your business name.
  • Mismatch with declared campaign — sending marketing promos on an "Account Notification" campaign triggers filtering.

Fix: rewrite samples to match your approved campaign use case; use full URLs (your booking page, a direct Google review link, your reschedule page); keep messages under 320 characters when possible; A/B test one change at a time on a small segment before blasting a list.

Cause #4: wrong number, landline, or inactive mobile

Business CRMs store whatever the customer typed. Typos, missing area codes, office main lines, and Google Voice numbers that cannot receive SMS are routine — and they fail per-recipient, not globally.

Symptoms: mixed delivery on the same send; failures cluster on certain contacts; delivery report shows "invalid" or "landline."

Fix:

  • Validate numbers at capture: mobile vs landline lookup (most SMS platforms offer this).
  • Normalize to E.164 format (+1 for US) before storing.
  • On failed delivery, check whether the number is a landline — call instead of resending SMS.
  • Ask customers to confirm mobile at booking: "Best number for text reminders?"

If everyone fails, suspect A2P or platform config. If some fail, suspect the number row.

Cause #5: throughput limits and new-number warmup

Carriers limit how many messages a new or low-trust number can send per minute and per day. Spike from zero to 500 review requests on day one and you will hit temporary blocks even with valid A2P registration.

Symptoms: first 20 messages deliver, then failures climb; errors mention rate limit or throughput; brand-new number on a fresh campaign.

Fix: ramp volume over several days; batch large sends across hours; use one approved campaign for related use cases (reminders + review asks) instead of fragmenting trust across numbers; confirm your campaign tier matches expected monthly volume when registering.

Cause #6: platform and workflow misconfiguration

Less common than compliance, but worth checking after the layers above:

  • Wrong sending number — workflow uses an old unregistered line while you registered a different one.
  • SMS action disabled or wrong channel — workflow sends email only, or "SMS" points at a number without SMS capability.
  • Quiet hours / DND — contact in do-not-disturb never receives until window opens (looks like failure if you expect instant delivery).
  • Duplicate workflows — two automations fire; customer opts out after the second message; you blame delivery on the first.

Pull the message log for one failed recipient: timestamp, sending number, delivery status, and error code. That row tells you more than guessing from the workflow canvas. On GoHighLevel, open Conversations → filter by failed delivery, or check the workflow execution history for the SMS step status on that contact.

Delivery troubleshooting checklist (in order)

  1. A2P status — brand approved? campaign approved? sending number linked? (registration guide)
  2. Opt-out lists — is the contact suppressed? did they reply STOP?
  3. Number validity — mobile, correct country code, not landline?
  4. Message content — full URLs, business name, matches campaign use case, no shorteners or spam triggers?
  5. Volume — are you within daily throughput for this number/campaign?
  6. Platform log — exact error code for failed rows?
  7. Cross-carrier test — send manual SMS from production number to colleagues on AT&T, T-Mobile, and Verizon.

Only after all seven pass should you escalate to your SMS provider support with specific message IDs — generic "texts not working" tickets get generic answers.

When SMS is the wrong channel (for now)

Sometimes the honest fix is not more troubleshooting. Skip or pause SMS if you are not texting US mobiles, you send fewer than ~10 customer touches a month, or your audience prefers email and phone. International rules differ; Canada has separate registration paths on some providers.

When SMS is the right channel — reminders, text-back, review loops — register once and reuse the same approved stack across text-back, reminders, and review automation. Delivery problems compound when each workflow uses a different unregistered number.

Common questions

Why did my business texts work in testing but stop delivering later?

US carriers often allow a small volume of unregistered SMS through a sandbox window, then filter or block the same number once real workflows run. That is the classic A2P 10DLC gap — tests to your own phone succeed, customer messages silently fail. Register brand and campaign, link your sending number, and retest on handsets on different carriers.

How do I know if A2P 10DLC is blocking my messages?

Symptoms: delivery reports show failed or unknown, some carriers receive texts while others do not, volume above a dozen messages per day triggers drops, or your SMS platform shows the number as unregistered or pending campaign approval. Fix: complete brand and campaign registration — see our A2P 10DLC guide — then assign the approved campaign to the number that sends workflows.

What does undelivered mean for business SMS?

Unlike consumer iMessage, business SMS through an API often returns a delivery receipt: delivered, failed, or no final status. Failed usually means invalid number, landline, opt-out, or carrier block. No status after minutes can mean filtering without a hard bounce. Check your platform's message log per recipient before resending — duplicate blasts make filtering worse.

Can I text a customer who opted out or replied STOP?

No. Carriers enforce opt-out at the network level — once someone texts STOP (or your platform marks them opted out), further messages to that mobile will fail and can penalize your entire campaign. Remove them from all SMS workflows, confirm the opt-out synced across lists, and use email or phone for re-permission if they contact you again.

Why do some customers get texts and others do not?

Mixed delivery almost always means per-recipient issues, not a global outage: one person opted out, another gave a landline, a third uses an MVNO with stricter filtering, or the number was mistyped. Pull the failed rows from your last send, verify each number is a mobile with SMS enabled, and send a single manual test before blaming the platform.

Restore delivery before you scale sends

Fix compliance first: walk through A2P 10DLC registration for small business — brand, campaign, sample messages with STOP language, and linking your sending number. Most "texts stopped working" tickets end there.

Do it yourself: generate your free review link & QR (so SMS content passes carrier checks), start a GoHighLevel 14-day trial, register A2P on day one, and test delivery to colleagues on AT&T, T-Mobile, and Verizon before turning workflows live.

Have us do it: we diagnose delivery failures, file or fix A2P registration, link numbers to approved campaigns, and test real sends — included in every done-for-you GoHighLevel setup.

Get the GHL Setup Checklist — free

The exact checklist we run for paying setup clients: 27 steps from empty account to booked appointments, including the A2P compliance items everyone forgets. Drop your email and read it right away.

No spam, no sequence-of-doom. We only email when we publish something worth your time. Privacy policy.