Pepperwire

Get your Twilio number ready to text US numbers

US carriers block business texts from unregistered numbers. Here's what A2P 10DLC registration is, how long it takes, and how to get through it.

Last updated August 11, 2026

If you're texting US phone numbers from a business, the mobile carriers require your number to be registered first. This is called A2P 10DLC — "application-to-person messaging on a 10-digit long code," which is the carriers' way of saying "a business texting from a normal phone number."

It is the single most common reason a text sent from HubSpot never reaches anybody, so it's worth getting right early.

Why this matters more than it used to

Carriers used to filter unregistered business texts. They now block them. Since early 2025 the major US carriers stop unregistered A2P traffic outright — the message doesn't arrive late, it doesn't arrive at all.

What makes this painful is that everything looks fine from your side. Twilio accepts the message, Pepperwire shows it as sent, and the recipient never receives anything. Registration is the fix, and there is no way around it.

What it costs and how long it takes

Time to fill in the formsAbout 15 minutes
Brand approvalMinutes to a few hours
Campaign approvalRoughly 10 to 15 days
FeesA one-off brand registration fee plus a small monthly campaign fee, both charged by Twilio

The two-week campaign wait is why we mention this in the setup guide rather than leaving you to discover it. Start it on day one and it'll be approved by the time you're ready to send at volume.

What you need before you start

Have these to hand — hunting for them mid-form is what makes this feel hard:

  • Your legal business name and address, exactly as they appear on your registration documents.
  • Your EIN (US businesses) or the equivalent business tax ID. If you don't have one, there's a Sole Proprietor route below.
  • Your company website. It needs to be live, and it needs a privacy policy on it. Reviewers do check.
  • An authorised contact — a real person's name, business email, and job title.
  • How people opt in to your texts. A screenshot of the form with the consent checkbox, or a link to the page. This is the part most rejected applications get wrong.
  • Two sample messages of the kind you'll actually send.

Register, step by step

Everything happens in the Twilio Console, not in Pepperwire. Go to Messaging → Regulatory Compliance and follow the A2P 10DLC path.

A2P 10DLC registration lives in the Twilio Console under Messaging → Regulatory Compliance.
A2P 10DLC registration lives in the Twilio Console under Messaging → Regulatory Compliance.

1. Create your customer profile. Twilio calls this Trust Hub. It's your business details: legal name, address, tax ID, website, and an authorised contact. Submit it once and it feeds everything after it.

2. Register your brand. The brand is your company as the carriers see it. Twilio passes it to The Campaign Registry, which checks your details against public business records. This usually comes back within hours.

Most businesses register as Standard. If you send fewer than about 3,000 messages a day you may qualify for Low-Volume Standard, which is cheaper and has the same approval path. If you have no EIN — a genuine sole trader — there's a Sole Proprietor route with lower limits; answer "no" to the tax ID question and Twilio routes you there.

3. Register your campaign. The campaign describes what you'll actually text people about. This is the slow step and the one that gets rejected, so take your time:

  • Use case. Pick the one that matches what you'll send — customer care, account notifications, marketing, two-factor codes. Be honest; mismatched traffic gets your campaign suspended later.
  • Description. Write two or three real sentences. "Appointment reminders and follow-up messages to customers who have booked a consultation with us" gets approved. "Notifications" does not.
  • Sample messages. Write two you would genuinely send. Include your business name in each, and end at least one with an opt-out line. Use square brackets for anything that varies: Hi [name], this is [Business] confirming your appointment on [date]. Reply STOP to opt out.
  • How people consent. Show where and how someone agrees to be texted — the URL of your form, or a screenshot showing the checkbox and its wording. Pre-ticked boxes and "we bought this list" will be rejected.

4. Attach your phone number. Once the campaign is approved, add the number to the Messaging Service Twilio created for it: open the Messaging Service, click Add Senders, and pick your number.

After approval

Send a real text to a real phone. If it arrives, you're done — there's nothing to change in Pepperwire, and your numbers keep working exactly as before.

Handling STOP and HELP

US carriers require that anyone can text STOP to opt out and HELP to find out who you are. Twilio handles both automatically on registered numbers: STOP stops further messages to that person, and any attempt to text them afterwards is rejected. You'll see that rejection as a failed message in Pepperwire, which is the system working correctly.

Don't try to work around an opt-out. It's the fastest route to a suspended campaign, and in the US it carries real legal exposure.

If your campaign is rejected

Rejections are common and usually fixable. The reasons, in the order we see them:

ReasonFix
Consent evidence is unclearLink to the actual page with the opt-in checkbox, or attach a screenshot showing the exact consent wording
Sample messages are too vagueRewrite them as real messages, with your business name and a STOP line
Website has no privacy policyPublish one and resubmit. It has to be reachable without logging in
Business details don't match recordsUse your exact registered legal name and address, not a trading name
Use case doesn't match the samplesPick the use case that actually describes your messages

Fix the flagged item and resubmit — you don't start over.

Toll-free numbers are a different path

If you use a toll-free number instead of a local one, you don't do A2P 10DLC. You do Toll-Free Verification, a separate form in the same part of the Twilio Console. It asks for much the same information and takes roughly the same time. Unverified toll-free traffic is blocked too.

What Pepperwire does about all this

We can't register on your behalf — the carriers require the business that's sending to register itself. What we do is stop it being invisible:

  • Twilio's rejection reasons are shown in plain English on the Messages page rather than as an error code.
  • The Phone numbers page reminds you about registration before you point a workflow at a number.
  • The troubleshooting guide tells you when a failure is a registration problem rather than something you can fix by clicking around.

Still unsure whether registration is your problem? Email support@pepperwire.app with one of the phone numbers involved and roughly when you sent the message, and we'll look it up.