Creating a 10DLC Campaign
A campaign describes the type of messages you intend to send under a registered brand. Carriers use this to approve your traffic and decide your per-second throughput. Every long-code SMS to a US number must be sent under an approved campaign.
Manage campaigns at Campaigns → 10DLC. Create a new one at Campaigns → New.
Before you start
You need an approved brand. See Registering a 10DLC Brand and the list of your brands at Brand Registry. Only brands in Verified status can be selected on the new-campaign form.
Step 1: Pick a use case
Use case determines approval criteria, throughput, and per-message cost. Pick the closest fit — picking too broad ("Marketing" for transactional) gets you rejected; picking too narrow leaves throughput on the table.
| Use case | Examples |
|---|---|
| Account notifications | Receipts, shipping updates, account alerts |
| Customer care | Conversational support, AI chat replies |
| Marketing | Promotional offers, drip campaigns |
| 2FA | One-time passwords, login codes |
| Higher education | Class cancellations, financial aid alerts |
| Polling / voting | Civic engagement, surveys |
| Public service announcement | Non-profit awareness, public-health updates |
| Delivery notifications | Package, food, ride status |
| Fraud alert | Account-takeover and payment-fraud warnings |
| Mixed | Falls back when traffic spans multiple buckets |
We pre-fill the form using use-case templates so you don't start from a blank page. You can always edit before submitting.
Step 2: Describe the campaign
Fill in:
- Campaign description — 2–4 sentences explaining what messages will say and why. Carriers read this. Write it for a human.
- Sample messages — 2 to 5 real examples. Include opt-out language ("Reply STOP to opt out") in at least one. Don't use lorem ipsum — carriers reject submissions with placeholder text.
- Embedded content — declare whether messages will include links, phone numbers, or media (MMS). Lying here gets you blocked later.
- Opt-in flow — how recipients consent. Acceptable: web form, keyword opt-in, IVR, written consent at point of sale, double opt-in email. Not acceptable: purchased lists.
- Opt-in keywords / opt-out keywords / help keywords — the exact text. Defaults are
START/STOP/HELP. - Age-gated — flag if content requires 18+ (gambling, alcohol, etc.).
- Affiliate marketing — flag if you'll send on behalf of third parties.
Step 3: Submit
Click Submit for approval. The campaign is registered and forwarded to the carriers. Approval timelines:
| Use case | Typical approval |
|---|---|
| Account notifications, customer care, 2FA, delivery notifications | Same business day |
| Marketing | 1–3 business days |
| Restricted (political, sweepstakes, gambling) | 3–10 business days |
Watch status on the campaign detail page (/campaigns/10dlc/<id>). Carrier or registry feedback also shows up in the Compliance Inbox.
Step 4: Attach numbers
After approval, attach the numbers you'll send from. Open the campaign detail page and click Add numbers, or pick the campaign on each number at Numbers → Manage.
A number must be attached to a campaign and belong to a messaging profile before you can send US application traffic from it.
Campaign sharing
If a separate company (such as a customer or partner) needs to send under your campaign — common in ISV/CPaaS reseller scenarios — share it from the campaign detail page. They must accept the share before sending begins. Sharing transfers responsibility for compliance to the sender, but you retain visibility.
Throughput (MPS)
Once active, your campaign has a per-second throughput (MPS) determined by:
- Use case — 2FA and account notifications get higher throughput than marketing.
- Brand vetting score — higher score = higher MPS.
- Number of attached numbers — some throughput is per-number; some is per-campaign.
View current throughput on the campaign detail page. To request more, raise the brand's vetting score (see Registering a 10DLC Brand) or open a support ticket.
Common rejection reasons
| Reason | Fix |
|---|---|
| Sample messages don't match the use case | Replace with realistic, compliant samples |
| Opt-in flow can't be verified | Add screenshots or a public URL of your consent capture |
| Missing STOP / HELP language | Include the standard opt-out and help reply in at least one sample |
| Mixed traffic under a narrow use case | Switch to "Mixed" or split into multiple campaigns |