Back to blog
May 11, 2026 · Looper HQ

Twilio A2P 10DLC for sole proprietors in 2026: the actual process (no EIN required)

A complete walkthrough of registering Twilio A2P 10DLC as a sole proprietor in 2026 — without an EIN. What it costs ($21 first month), how long vetting takes, what every screen actually wants.

Twilio A2P 10DLC for sole proprietors in 2026: the actual process

If you're a solo founder trying to send transactional or marketing SMS through a US 10DLC number, you have to register for A2P 10DLC. There is no opting out and no "trial" exception that lets you skip it forever. Carriers throttle and eventually block unregistered traffic.

Twilio's own docs explain the what but they're surprisingly unclear about the how when you're a sole proprietor without an EIN. Here's the exact flow we ran on May 10, 2026 for a single-founder business — what every screen actually wants, what it costs, and how long it takes.

TL;DR

  • Cost: $21 the first month. Breaks down as $4 one-time brand registration + $15 one-time campaign vetting + $2 monthly messaging service fee. Per-message rates are separate.
  • You don't need an EIN. Sole Proprietor track accepts your SSN + personal address.
  • You DO need a paid account. Trial accounts can't register. Upgrade with a payment method first.
  • Carrier vetting takes 1–3 business days after submission. Status sits at PENDING_VETTING the whole time.
  • You can send SMS the moment status flips to VERIFIED — no further action.

What A2P 10DLC actually is

Application-to-Person 10-Digit Long Code messaging. It's the carriers' (T-Mobile, AT&T, Verizon) way of separating legitimate business SMS from spam. Every brand that wants to send SMS through a US long code goes through the same registration: tell us who you are, what you'll send, get vetted, get a throughput allowance. Without it carriers block or throttle.

The Campaign Registry (TCR) is the third-party clearinghouse. Twilio submits your data to TCR. TCR sells your data to carriers. Carriers approve or reject.

The four resources you create

This trips up most people: A2P 10DLC isn't one form. It's four linked resources Twilio walks you through in sequence:

  1. Customer Profile — who you are (legal name, address, SSN/EIN, type of business)
  2. A2P Trust Bundle / Brand — your brand's public-facing name (built from the Customer Profile)
  3. Messaging Service — the routing layer that owns your phone number(s)
  4. A2P 10DLC Campaign — what kinds of messages you'll send (marketing? transactional? both?)

Each one references the previous. You can't skip ahead.

Step-by-step

Step 0 — Upgrade out of the trial

Click Upgrade in the top-right of Twilio Console and add a payment method. If you don't, the A2P submission button is grayed out with the message "You cannot register for A2P Messaging in a trial account."

Step 1 — Customer Profile (Sole Proprietor track)

Console → Regulatory Compliance → Customer Profiles → New Customer Profile.

Pick "Sole Proprietor" as the business type. This is the track that doesn't require an EIN. You'll provide:

  • Legal first + last name
  • Personal home address
  • SSN (last 4 digits)
  • Mobile number (used for OTP verification — must be a number you can receive SMS on)

This profile is reviewed by Twilio (not the carriers). Approval is typically same-day.

Step 2 — A2P Brand (built from the Customer Profile)

Once the Customer Profile is APPROVED, go to Trust Hub → Trust Products → A2P Brand. Twilio prefills the Brand from the Customer Profile. You'll add:

  • Brand name (this is what carriers see — make it match your customer-facing name)
  • Website URL (must be live and match your business)
  • Vertical (pick the closest match to your industry)

Submit. Cost: $4 one-time brand registration fee, billed immediately.

Step 3 — Messaging Service

Console → Messaging → Services → Create Messaging Service.

  • Give it a friendly name (e.g. "Marketing SMS")
  • Pick the use case (Notifications, 2FA, Marketing, Mixed)
  • Add your existing Twilio phone number(s) to the sender pool

This is the routing wrapper. The Service has a SID (MGxxxxxxxx…) which you'll use in your application code or .env (we use TWILIO_MESSAGING_SERVICE_SID).

Step 4 — A2P 10DLC Campaign

Inside the Messaging Service → A2P 10DLC tab → Create new campaign.

This is the form that actually goes to carriers and costs $15 one-time vetting fee when submitted.

The carrier-facing fields you'll have to write:

  • Campaign description — 1–2 sentences on what you'll send and why
  • Sample message 1 + Sample message 2 — real examples of the messages you'd send (must include opt-out language in at least one)
  • How do consumers opt in? — the exact mechanism (web form, in-store sign-up sheet, double opt-in, etc.)
  • Opt-out method — STOP keyword (Twilio handles automatically) + describe it in plain English
  • Help message — HELP keyword response

Tip: include the brand name + opt-out language ("Reply STOP to unsubscribe") in every sample message. Carriers reject vague samples.

Once submitted, status flips to PENDING_VETTING. Vetting takes 1–3 business days. There's nothing you can do to speed it up.

Step 5 — Bind the number

While the campaign vets, attach your Twilio number to the Messaging Service (Console → Messaging → Services → {your service} → Sender Pool → Add Sender). The number can be active in the pool even while the campaign is pending; you just can't send A2P traffic through it yet.

Cost breakdown (first month)

ItemCostFrequency
Brand registration$4.00One-time
Campaign vetting$15.00One-time
Messaging Service$2.00Monthly
First-month total$21.00

Per-message costs are separate ($0.0075/segment for sole-prop traffic in May 2026, but check current pricing). After month 1 you're paying $2/month + per-message fees.

What happens during vetting

The campaign sits at PENDING_VETTING while TCR routes your data to T-Mobile, AT&T, and Verizon. Each carrier returns a verdict independently. Some campaigns get VERIFIED across all three; others get partial approvals (you might be fully vetted on AT&T but rejected on T-Mobile).

Reasons for rejection:

  • Sample messages too generic ("Reply for offers") — rewrite with the brand name + a specific value prop
  • Website mismatch — your Brand name doesn't appear on the linked website
  • Vertical mismatch — pick the closest industry
  • Restricted content — gambling, payday loans, cannabis-related, adult content all get extra scrutiny or outright denial

If rejected, you can resubmit (no additional vetting fee on the first revision).

Once vetted

When status shows VERIFIED:

  • Your throughput is unlocked (sole-prop is typically 75 messages/minute per number)
  • Carriers stop filtering traffic from your messaging service SID
  • You can route production SMS without further action

If you're using a tool like Looper HQ for sequences or voice/SMS automations, drop the TWILIO_MESSAGING_SERVICE_SID into your environment and you're done.

Gotchas we ran into

  • Chrome extension disconnected mid-form — losing context. Twilio's session is cookie-based so just reload, you don't lose progress.
  • Sample messages need to be REAL — carriers reject placeholder text. Write what you'd actually send.
  • Trial accounts silently block the Submit button — Twilio doesn't always show a clear error. Check that you've upgraded.
  • The Brand → Messaging Service link is implicit — once the Brand is approved, every Messaging Service you create can attach a campaign to it. There's no separate "link these together" step.

The hard truth about timelines

If you're shipping a product that needs SMS, register A2P 10DLC the day you decide to send SMS, not the day before launch. The 1–3 business day vetting wait is real, plus 1–2 days for the Customer Profile to clear, plus rework time if a campaign gets rejected. Plan for a week from start to first-message-sendable.


Built Looper HQ as the marketing OS that bundles brand kit + AI site builder + CRM + SMS + voice agents for solo founders. Sole proprietor SMS sequences run through the same Twilio A2P pipeline described above — once verified, sequences send without you thinking about it again.