Your GoHighLevel SMS stopped delivering. Your numbers were working last month. Now they're not. You added new numbers, submitted the registration, and they got rejected — again. You have no idea if it's A2P, Twilio, your brand registration, your campaign use case, or some combination of all four. This is the most common failure state in GHL phone infrastructure right now, and almost nobody who documents it online explains what's actually happening at the carrier and regulatory layer. This post does.
The brief: a client with two GHL subaccounts, existing numbers that stopped sending, new numbers getting rejected during A2P and regulatory approval, needing reliable SMS delivery to the United States, United Kingdom, and Australia — all simultaneously. Three existing numbers to restore, three new numbers to fully operationalize, and a compliance architecture that doesn't collapse the next time a carrier updates its filtering rules.
What follows is the complete diagnostic and build. Why numbers fail, why registrations get rejected, how A2P 10DLC, Toll-Free verification, UK regulatory bundles, and Australian sender compliance each work, and the exact configuration sequence that resolves all of it. No trial-and-error. No generic "submit your brand registration" advice. The full system.
Most GHL users who hit SMS delivery failures assume the problem is in GHL itself. It rarely is. GHL's phone system runs on Twilio's infrastructure (marketed as LC Phone when provisioned directly through GHL). The failures happen at four layers above GHL — and understanding which layer is failing determines everything about the fix.
| Failure Layer | What's Happening | Symptom in GHL | Fix Layer |
|---|---|---|---|
| A2P Campaign Registration Expired / Rejected | Your 10DLC campaign is not approved or has been suspended by The Campaign Registry (TCR). US carriers filter all unregistered A2P traffic. | Messages show "delivered" in GHL but never arrive. Or outright send failures on 10DLC numbers. | A2P 10DLC re-registration with correct campaign use case |
| Toll-Free Number Not Verified | Since 2023, unverified toll-free numbers are hard-blocked by US carriers. Twilio enforces this at the API level. | Toll-free numbers return error codes 30034 or 30007 on every outbound attempt | Toll-Free Verification submission via Twilio / LC Phone |
| UK Regulatory Bundle Not Submitted | Ofcom requires a local address and business identity bundle for UK numbers. Twilio will not activate UK numbers without an approved bundle. | UK numbers stuck in "pending" or immediately rejected post-provisioning | UK Address Bundle + Regulatory Bundle creation in Twilio console |
| Australian Alpha Sender ID Not Registered | Australia does not use 10DLC. SMS is sent via Alpha Sender IDs (brand name strings). Unregistered sender IDs are filtered by Telstra, Optus, and Vodafone AU. | SMS to AU numbers silently fails or is delivered from a random numeric sender | AU Sender ID registration via Twilio + ACMA compliance check |
| Subaccount-Level Misconfiguration in GHL | Numbers provisioned at the agency level are not assigned to the correct subaccount, or the LC Phone integration is broken at the subaccount level. | Numbers visible in GHL but not selectable in conversations or workflows | GHL subaccount phone settings audit + re-assignment |
For the client in this brief — two subaccounts, six numbers across three countries, a mix of existing failures and new rejections — all five failure layers were present simultaneously. The fix is not a single action. It is a sequenced remediation across each layer, in the right order, because some registrations are prerequisites for others.
"SMS delivery failures in GHL are almost never a GHL problem. They are a compliance infrastructure problem. The platform is fine. The registration architecture underneath it is broken." Arsalan Faysal — Revenue Systems Architect, GoHighLevel Expert Partner
Before touching any registration, run a complete audit of what's actually failing and why. GHL's conversation logs show message status but not the carrier-level error code. For that, you need the Twilio console (or LC Phone logs if you're on GHL's native phone).
In Twilio console: navigate to Monitor → Logs → Messaging. Filter by date range and direction (outbound). Every failed message shows an error code. These codes are the diagnostic ground truth — not the GHL conversation status.
| Twilio Error Code | Meaning | Action Required |
|---|---|---|
30034 |
Message blocked — toll-free number not verified | Submit Toll-Free Verification immediately |
30007 |
Message delivery failed — carrier filtering (often A2P or TFN) | Check A2P campaign status; verify TFN if applicable |
30008 |
Unknown destination handset | Usually a bad number — not a compliance issue |
21611 |
SMS sending not enabled for this number | Number not provisioned with SMS capability — reprovision or re-enable |
30035 |
Message filtered — A2P 10DLC campaign not approved | Fix brand or campaign registration in TCR |
30450 |
A2P registration required but missing | Brand registration not linked to sending number |
14107 |
Regulatory bundle issue — usually UK numbers | Create and submit UK regulatory bundle |
Map every failing number to its error code. This is your repair sequence. Numbers throwing 30034 and 30035 have different fixes. Do not run both fixes simultaneously — complete and confirm each registration before layering the next one.
In GHL, navigate to each subaccount → Settings → Phone Numbers. For every number, confirm:
Document the status of all six numbers in a tracking sheet before touching anything. Numbers that look broken in GHL but are fine at the Twilio layer just need subaccount reassignment. Numbers that look fine in GHL but failing at Twilio need compliance remediation. The two problems have different root causes and different fix sequences.
A2P 10DLC (Application-to-Person, 10-digit long code) is the US carrier framework that governs all business SMS sent from standard US phone numbers. It has been mandatory since 2023. Every business sending SMS to US numbers — regardless of platform — must register a brand and at least one campaign through The Campaign Registry (TCR), linked to their sending numbers.
In GHL, this registration lives at: Agency Settings → Phone → A2P Registration (or within each subaccount's Settings → Phone Numbers → A2P Registration, depending on your GHL version).
LAYER 1 — BRAND REGISTRATION (one per business entity)
──────────────────────────────────────────────────────────────────
Required fields:
• Legal business name (must match EIN/TIN exactly)
• EIN / Tax ID
• Business type (LLC, Corp, Sole Prop, etc.)
• Business address (must be US address for US brand)
• Website URL (must be live and reference SMS opt-in)
• Business contact (name, phone, email)
• Vertical (e.g., Healthcare, Professional Services, Marketing)
Common rejection reason: EIN does not match IRS records.
Fix: Use exact legal name from EIN confirmation letter.
Vetting fee: $4 (one-time, non-refundable via Twilio/TCR)
LAYER 2 — CAMPAIGN REGISTRATION (one per use case)
──────────────────────────────────────────────────────────────────
Required fields:
• Campaign use case (must match actual message content)
• Sample messages × 2 (must include brand name + opt-out language)
• Opt-in method description
• Privacy policy URL
• Terms of service URL
• Message flow description
Most common rejection reason: Sample messages don't include
opt-out language ("Reply STOP to unsubscribe") OR brand name
is missing from message body.
Campaign fee: $10/month ongoing (paid to TCR via Twilio)
LAYER 3 — NUMBER ASSOCIATION
──────────────────────────────────────────────────────────────────
Each sending number must be explicitly associated with an
approved campaign. In GHL/Twilio, this happens automatically
once the campaign is approved — but verify in Twilio console:
Messaging → Services → [Your Service] → Phone Numbers
If numbers are not listed here, add them manually.
There are five rejection patterns that cover 90%+ of failed A2P brand registrations:
Campaign rejections are almost always content-related. The two non-negotiable elements that must appear in every sample message:
If the client's existing US numbers are toll-free (800, 833, 844, 855, 866, 877, 888 prefixes), A2P 10DLC does not apply — but Toll-Free Verification (TFV) does. These are completely separate registration systems.
Since August 2023, all toll-free numbers sending more than a minimal volume of messages to US carriers must be verified. Unverified TFN traffic is hard-blocked by AT&T, T-Mobile, and Verizon. This is likely the primary cause of the "previously worked, now doesn't" failure pattern described in the brief.
TFV submission lives in the Twilio console under Phone Numbers → Manage → Toll-Free Verification. Required fields:
Approval timeline: 3–7 business days. There is no expedited path. Submit it before anything else in this engagement because it is time-gated and cannot be parallelized.
The UK does not use A2P 10DLC. UK phone number provisioning is governed by Ofcom (Office of Communications) and regulated through Twilio's UK regulatory bundle system. Every UK local phone number requires a verified address bundle before it can be activated for SMS.
This is the most common reason new UK numbers get immediately rejected in GHL/Twilio — the regulatory bundle either doesn't exist or was submitted with incorrect documentation.
A UK regulatory bundle in Twilio is a verified collection of business identity documents linked to a UK address. Twilio submits this to Ofcom on your behalf. Without an approved bundle, UK numbers cannot be activated.
UK REGULATORY BUNDLE ARCHITECTURE
──────────────────────────────────────────────────────────────────
STEP 1: Create a UK Address in Twilio
Path: Console → Phone Numbers → Regulatory Compliance → Addresses
Required:
• Street address (must be a real UK address — not a PO Box)
• City, postcode
• Country: United Kingdom
Note: If the client does not have a UK physical address, a
registered agent address or virtual office address is acceptable
PROVIDED it is registered to the business entity. Mail forwarding
services without business registration are rejected.
STEP 2: Create a Regulatory Bundle
Path: Console → Phone Numbers → Regulatory Compliance → Bundles
Select: UK Local Phone Number
Business Profile: Link to existing business profile (or create)
Required documents:
• Business registration (Companies House number for UK entities
OR equivalent for international businesses operating in UK)
• Proof of address (utility bill, bank statement — issued within 90 days)
• Authorized representative ID (passport or driving licence)
STEP 3: Submit Bundle for Twilio Review
Twilio reviews the bundle before submitting to Ofcom.
Review timeline: 2–5 business days.
Status path: Pending → Twilio Review → Provisionally Approved → Active
STEP 4: Associate Bundle with UK Number
Once bundle is approved, navigate to the UK number settings
and associate the approved bundle.
Numbers cannot be activated without this association.
In order of frequency:
Beyond number provisioning, UK SMS content is regulated by the Information Commissioner's Office (ICO) under PECR (Privacy and Electronic Communications Regulations). Key requirements that affect GHL workflow SMS:
Australia is the most technically distinct of the three markets. The Australian SMS landscape does not use 10DLC or toll-free verification systems. Australian carriers — Telstra, Optus, Vodafone AU — route business SMS through Alpha Sender IDs: alphanumeric strings (your brand name) that replace the sending number in the recipient's inbox.
The Australian Communications and Media Authority (ACMA) Spam Act 2003 governs all commercial electronic messages, including SMS. Violations carry penalties of up to AUD $2.2 million per day for corporations.
AUSTRALIAN SMS DELIVERY ARCHITECTURE ────────────────────────────────────────────────────────────────── OPTION A: Alpha Sender ID (Recommended for brand recognition) ───────────────────────────────────────────────────────────── What the recipient sees: "BRANDNAME" instead of a phone number Character limit: 11 characters (alphanumeric) Example: "ARSALANFAY" or "REVOPSARCH" Registration: Via Twilio → Messaging → Sender ID Registration Required: Business name, use case, sample messages Timeline: 5–10 business days for AU carrier approval IMPORTANT: Alpha Sender IDs cannot receive replies. Two-way SMS to Australia requires a Long Number or Shared Short Code. OPTION B: Virtual Long Number (VLN) ───────────────────────────────────────────────────────────── What the recipient sees: An Australian +61 mobile number Supports two-way messaging Provisioning: Via Twilio as +61 4XX XXX XXX number Regulatory: Standard Twilio AU number provisioning Filtering: Sent through AU carrier gateways directly Note: AU carriers filter high-volume VLN traffic aggressively. Keep message volumes below carrier thresholds or use multiple numbers with sending rotation logic in GHL. OPTION C: Shared Short Code (Legacy — not recommended) ───────────────────────────────────────────────────────────── What the recipient sees: A short number (e.g., 19XXXX) Status: Being phased out by most AU carriers Do not provision new shared short code infrastructure.
Three requirements that every Australian commercial SMS must satisfy:
GHL does not natively expose Alpha Sender ID configuration in its phone settings UI (as of mid-2025). The configuration must be done at the Twilio layer:
The GHL routing logic for AU contacts is typically handled by a contact tag or custom field (country = Australia) that triggers a different workflow branch using a different Twilio sending path. This requires a conditional logic split in your GHL automation workflows.
With all three compliance layers understood, here is the complete system architecture for a GHL deployment that reliably delivers SMS to all three markets from two subaccounts.
GHL MULTI-COUNTRY SMS ARCHITECTURE
──────────────────────────────────────────────────────────────────
AGENCY LEVEL (Twilio / LC Phone)
├── US Number Pool
│ ├── TFN-001 (Toll-Free) → TFV submitted + approved
│ ├── 10DLC-001 (Local) → Brand registered, Campaign approved
│ └── 10DLC-002 (Local) → Same campaign, additional number
│
├── UK Number Pool
│ ├── UK-001 (Local +44) → Regulatory Bundle approved + associated
│ └── UK-002 (Local +44) → Same bundle (one bundle covers multiple UK numbers)
│
└── AU Sending Layer
├── Alpha Sender ID: "BRANDNAME" → AU carrier approved
└── AU VLN-001 (+61) → Backup for two-way AU conversations
SUBACCOUNT 1 (Primary business operations)
├── Assigned numbers: TFN-001, 10DLC-001, UK-001
├── Workflows use contact country field to route:
│ IF country = US → send via TFN-001 or 10DLC-001
│ IF country = UK → send via UK-001
│ IF country = AU → send via Twilio Messaging Service (Alpha ID)
└── A2P Campaign: linked to 10DLC-001
SUBACCOUNT 2 (Secondary / overflow)
├── Assigned numbers: 10DLC-002, UK-002, AU VLN-001
├── Same routing conditional logic
└── A2P Campaign: same TCR brand, separate campaign registration
MESSAGE FLOW (simplified)
──────────────────────────────────────────────────────────────────
GHL Contact Created
│
▼
[Workflow Trigger fires]
│
▼
[Conditional Branch: contact.country]
│
┌─────┴─────┬─────────────┐
▼ ▼ ▼
US UK AU
│ │ │
▼ ▼ ▼
TFN / 10DLC UK Local Alpha Sender ID
│ │ │
▼ ▼ ▼
Twilio US Twilio UK Twilio AU Gateway
Carriers (Ofcom (Telstra/Optus/
compliant) Vodafone AU)
Sequence matters. Some registrations depend on others being completed first. Running them out of order costs approval time.
| Step | Action | Platform | Timeline | Dependency |
|---|---|---|---|---|
| 1 | Pull all Twilio error logs. Map each number to its error code. Build the repair tracking sheet. | Twilio Console | 2–3h | None — do this first |
| 2 | Audit all 6 numbers in GHL subaccount settings. Confirm SMS capability, correct subaccount assignment, LC Phone integration status. | GHL Agency + Subaccounts | 1–2h | None — parallel with Step 1 |
| 3 | Submit Toll-Free Verification for any TFN numbers (if applicable). This has the longest approval window — submit first. | Twilio Console → TFV | 3–7 business days | Requires live website with SMS opt-in disclosure |
| 4 | Check existing A2P brand registration in TCR. If rejected or missing, fix EIN mismatch and resubmit brand. Do NOT resubmit without fixing the root cause of original rejection. | GHL A2P Settings / Twilio Console | 1–3 business days | Valid EIN, live website with privacy policy |
| 5 | Once brand is approved, fix or create A2P campaign registration. Ensure sample messages include brand name + opt-out language. Match use case to actual message content. | GHL A2P Settings / Twilio Console | 1–3 business days | Approved brand (Step 4 complete) |
| 6 | Create UK Address and Regulatory Bundle in Twilio for UK numbers. Submit for review. | Twilio Regulatory Compliance | 2–5 business days | UK address documentation, business registration |
| 7 | Once UK bundle approved, provision or re-activate UK numbers with bundle association. Test outbound SMS to UK mobile. | Twilio + GHL | Same day as bundle approval | Approved UK bundle (Step 6) |
| 8 | Submit Alpha Sender ID registration for AU market (or configure AU VLN). Set up Twilio Messaging Service for AU routing. | Twilio Messaging | 5–10 business days | None — can run parallel with Steps 4–7 |
| 9 | Build GHL workflow conditional logic for country-based SMS routing. Test each routing branch with real test contacts in all three countries. | GHL Workflow Builder | 3–5h | All registrations at least submitted (ideally approved) |
| 10 | Full end-to-end test: send from all 6 numbers to test contacts in US, UK, AU. Confirm delivery receipt in Twilio logs. Document final configuration state. | GHL + Twilio | 2–3h | All approvals received |
Total elapsed time from Step 1 to completed, stable infrastructure: 7–14 calendar days, with the majority of the wait being regulatory approval windows rather than active build time. Active implementation hours: approximately 15–20h for an experienced GHL + Twilio specialist.
Fixing a broken SMS infrastructure once is the easy part. Keeping it from breaking again requires understanding the ongoing maintenance obligations that most GHL users ignore until the next failure.
The brief priced this at $25–$65/hour. That rate range is correct for someone who can do basic troubleshooting. It is significantly below market rate for someone who can navigate simultaneous US A2P, UK regulatory bundle, and AU sender ID compliance without trial-and-error. Here is the actual cost breakdown for running this infrastructure ongoing.
| Cost Item | One-Time | Monthly Recurring | Notes |
|---|---|---|---|
| A2P Brand Registration (TCR) | $4 | — | Non-refundable. Per business entity. |
| A2P Campaign Registration (TCR) | — | $10/campaign | Per active campaign. Two campaigns = $20/month. |
| Toll-Free Verification | Free | — | No fee for TFV submission via Twilio |
| UK Regulatory Bundle | Free | — | No Twilio fee — but requires documentation prep time |
| AU Alpha Sender ID | Free | — | No Twilio fee — approval by AU carriers |
| US Local (10DLC) Number | — | $1.15/number | Twilio standard US local number pricing |
| US Toll-Free Number | — | $2/number | Twilio TFN monthly rental |
| UK Local Number (+44) | — | $1/number | Twilio UK local number pricing |
| AU VLN Number (+61) | — | $3/number | Twilio AU mobile number pricing |
| SMS (outbound, US) | — | $0.0079/SMS | Twilio standard rate. Volume discounts available. |
| SMS (outbound, UK) | — | $0.04/SMS | Higher than US due to carrier surcharges |
| SMS (outbound, AU) | — | $0.05/SMS | AU carrier gateway fees included |
For a GHL deployment sending 5,000 messages/month across all three markets (roughly 60% US, 25% UK, 15% AU), the infrastructure cost is approximately $280–$350/month all-in including number rental, campaign fees, and message volume. The implementation cost to get the architecture correctly built and compliant is a one-time investment that pays back in the first month of avoided compliance failures.
Every GHL operator who has hit this failure pattern — numbers that worked, then stopped; new numbers that get rejected on registration — treats it as a technical support problem. Submit a ticket, wait for Twilio to respond, hope someone fixes it.
It is not a support problem. It is an infrastructure architecture problem. The registration systems for US A2P, UK Ofcom compliance, and Australian ACMA regulations are not self-healing. They require correct initial setup, correct ongoing maintenance, and someone who understands what each error code means and which layer of the stack it's coming from.
The build documented here — six numbers, two subaccounts, three countries, fully compliant and stable — takes 15–20 hours of focused implementation work and 7–14 calendar days of approval windows. For a business whose GHL automations depend on SMS delivery, every day of non-delivery is pipeline leakage. The compliance infrastructure is not optional. It is the precondition for everything downstream — lead nurture, appointment reminders, follow-up sequences, and closed revenue — to function.
Build it right once. Document it. Maintain it quarterly. It does not break if it is built correctly.