10DLC Campaign Compliance Checklist

ServiceMinder — Client Resource. Based on Twilio review criteria & CTIA Short Code Handbook v1.9. First Draft — April 2026.

Severity Guide

  • Sev 0 — Immediate rejection or suspension
  • Sev 1 — Serious — likely rejected
  • Sev 2 — Moderate — flagged for review

Contents


1. What Twilio checks and verifies

Brand name aligns with website and contact email domain (Sev 1)

Good example
Brand name: Apex Pest Solutions
Website: apexpestsolutions.com
Contact email: support@apexpestsolutions.com

Common failure
Brand name “AMPS LLC”, website branded as “Apex Mosquito & Pest Solutions”, and a Gmail contact address — none of these align. Reviewers will reject this registration.

Callout
The brand name entered in Twilio must be recognizable on the public-facing website. Generic LLC names, holding company names, or abbreviations that don’t appear on the site will fail.

Website is live, functional, and not hidden behind a login wall (Sev 1)

What reviewers check
Reviewers navigate to the brand’s website URL and confirm it loads, has real business content, and is publicly accessible without creating an account.

Common failure
Website redirects to a “coming soon” page, throws a 404, or requires login before showing any business content — all instant rejection triggers.

Business type in the submission matches what the website describes (Sev 1)

Good example
Business type selected: Home Services / Pest Control
Website clearly describes: “residential and commercial pest control services in [metro area]”

Common failure
Business type selected: “Professional Services” — but the website is a franchise pest control operation. Mismatched classification triggers a flag.

Website does not host or advertise forbidden content categories (Sev 0)

Forbidden categories — automatic rejection
Casinos/gambling, firearms marketing, controlled substances requiring a prescription, Botox/injectables without licensing gates, cannabis (in most cases), adult content, hate speech, or content promoting illegal activity.

Nuance callout
A pest control company advertising a seasonal discount on mosquito treatment is fine. That same company advertising a raffle or sweepstakes on the same domain may trigger a flag and requires a separate approval process.

Twilio reference: Forbidden Message Categories (US & Canada)

Campaign description matches the selected use case exactly (Sev 1)

Use case: Low Volume Mixed (recommended for most franchisees)
Selected use case: Low Volume Mixed
Campaign description: “[Brand Name] sends appointment reminders, service updates, and technician arrival notifications to customers who have opted in. Customers may also receive occasional promotional messages about seasonal service discounts or referral offers.”

Key: the description must name every message type you will send.

Common failure: use case / description mismatch
Selected use case: 2FA — Campaign description says: “We send appointment reminders and promotions to customers.” 2FA is authentication-only. Mixing it with marketing language will be rejected immediately.

Rule of thumb
If you describe it in the campaign description, the use case must support it. When in doubt, use Low Volume Mixed — it covers transactional, informational, and promotional messages in one campaign.

Twilio reference: List of campaign use case types for A2P 10DLC

Sample messages align with use case, campaign description, and brand name (Sev 2)

Transactional sample
“Hi [Customer First Name], this is [Brand Name]. Your technician is on the way and will arrive between [time window]. Reply STOP to opt out.”

Promotional sample
“[Brand Name]: Spring mosquito season is here! Book your first treatment this month and save $[X]. Schedule at [URL]. Msg&data rates may apply. Reply STOP to cancel.”

Key requirement
The brand name in sample messages must match the registered brand exactly. Do not use a DBA, shortened name, or nickname that wasn’t registered.


Consent cannot be forced — phone number OR consent checkbox must be optional (Sev 0)

#1 rejection reason — forced opt-in
Phone number field: required ✓
Consent checkbox: required ✓

Both required = forced consent. CTIA prohibits this. Either the phone number OR the checkbox must be optional — not both required at the same time.

Compliant pattern
Phone number field: optional (remove the asterisk / required attribute)
Consent language: “By providing your phone number, you agree to receive text messages from [Brand Name]. Msg & data rates may apply. Reply STOP to cancel.”

OR: Phone required, but consent checkbox is optional and unchecked by default.

Twilio reference: A2P 10DLC Campaign Approval Requirements

Marketing and non-marketing require separate, optional checkboxes (Sev 1)

Compliant dual-checkbox pattern

☐ I agree to receive service-related messages from [Brand Name] (appointment reminders, technician updates, invoices) — optional

☐ I agree to receive promotional messages from [Brand Name] (seasonal offers, discounts, referral programs) — optional

Terms & Privacy links: can be required. Only consent checkboxes must be optional.

Why this matters
If your Low Volume Mixed campaign description includes promotional messages, a single checkbox covering everything will fail. Reviewers look for separate opt-in proof matching each message category.

Opt-in CTA page includes links to BOTH Privacy Policy and Terms of Service (Sev 1)

Common failure
Opt-in page shows: “By submitting, you agree to our Privacy Policy.” — Terms of Service link is missing. Privacy-only is not sufficient.

Required disclosure language on opt-in page
“By providing your phone number and checking the box above, you agree to receive text messages from [Brand Name]. Message frequency varies. Msg & data rates may apply. Reply STOP to cancel, HELP for help. View our [Terms of Service] and [Privacy Policy].”

Privacy Policy excludes SMS opt-in data from third-party marketing sharing (Sev 1)

Required statement — add to Privacy Policy
“The above categories exclude text messaging originator opt-in data and consent; this information will not be shared with third parties for marketing and promotional purposes.”

Why this exists
If the Privacy Policy mentions sharing data with “affiliates,” “partners,” or “service providers,” without this exclusion, reviewers will assume SMS consent data is being sold or shared for marketing.

Twilio reference: A2P 10DLC Campaign Registration Recommendations

Terms of Service includes required CTIA messaging disclosures (Sev 2)

For recurring message programs — add to Terms of Service
“Text messages from [Brand Name] are recurring. Message frequency varies depending on account activity. Message and data rates may apply. Reply STOP to cancel at any time. Reply HELP for help. Contact us at [support email or phone].”

Status
Not enforced 100% today but carriers are tightening enforcement. Get this in place now to avoid remediating across all clients later.


3. Opt-in proof requirements

Proof provided for every opt-in method listed in the message flow (Sev 1)

Common failure
Message flow says: “Customers opt in via our website, a verbal agreement at time of service, and by texting START.” Proof submitted: one web form screenshot only.

Three methods declared = three proofs required.

Recommendation
Keep it simple — only declare opt-in methods the client actually uses. If they only use a web form, only list web opt-in. Don’t list verbal or keyword opt-in unless they use them and can prove it.

Twilio reference: A2P 10DLC Campaign Vetting FAQ

Web opt-in message flow describes the sign-up page in step-by-step detail (Sev 1)

Too vague — will be rejected
“Customers opt in on our website when they fill out a form.”

Compliant message flow description
“When a customer visits [brand website URL] and requests a free inspection, they complete a contact form including their name, address, phone number, and email. Below the phone number field, the following consent language appears: [paste exact text]. The checkbox is unchecked by default and optional. By checking the box and submitting, the customer consents to receive service-related and/or promotional text messages from [Brand Name]. A screenshot of this form is included as Attachment A.”

Verbal opt-in includes a complete script with all required disclosures (Sev 1)

Verbal opt-in script template
“Before we confirm your appointment, may I have your permission to send you text message updates from [Brand Name]? You would receive messages about your upcoming service, technician arrival, and occasional offers. Standard message and data rates may apply, and you can reply STOP at any time to cancel. Do I have your consent to send text messages to [customer phone number]?”

Required elements in verbal script
Brand name, description of message types, message/data rates disclosure, STOP opt-out instruction, and an explicit yes/no consent request — all must be present in the script submitted as proof.


4. Message flow submission

Opt-in confirmation message sent immediately after opt-in (Sev 1)

Compliant opt-in confirmation message
“[Brand Name]: Thanks for signing up for service updates! You’ll receive messages about your appointments and service. Msg frequency varies. Msg & data rates may apply. Reply STOP to cancel, HELP for help.”

STOP command terminates all messages and triggers a confirmation reply (Sev 0)

Opt-out confirmation message
“[Brand Name]: You’ve been unsubscribed and will no longer receive text messages from us. Reply START to re-subscribe at any time.”

Required opt-out keywords
Must respond to: STOP, END, CANCEL, QUIT, UNSUBSCRIBE. No further messages after the confirmation. STOP must appear in all call-to-action language.

HELP command returns brand name and customer care contact info (Sev 2)

HELP reply template
“[Brand Name] Alerts: For support, contact us at [support email or phone] or visit [support URL]. Reply STOP to unsubscribe.”


5. If your campaign does not pass

Use this checklist to self-review before contacting support

Why this matters
Do not resubmit on your own after a failed campaign — repeated failed submissions can delay approvals further. Work through this checklist first to identify what may need to change.

What to review

  1. Check your opt-in page: is consent forced? Are both Privacy Policy and Terms of Service linked?
  2. Check your Privacy Policy: does it include the SMS data exclusion statement?
  3. Check your Terms of Service: does it include STOP, HELP, message frequency, and data rates disclosures?
  4. Check your website: is it live, publicly accessible, and free of forbidden content?

Contact ServiceMinder support for help resubmitting

How to reach us
Submit a support ticket at support@serviceminder.io or through the Help! portal. Include your brand name and a note that your campaign did not pass. Our team will help resubmit once you feel your campaign is ready for submission.

What we can and cannot do for you
We are not able to speak on behalf of our third-party texting provider or their regulatory team. We can not audit your campaign for submission quality. We can help you resubmit your campaign or make edits to a currently failed one but you must be able to use this guide and Twilio's guides to help edit your campaign, website, and other areas accordingly. 

Best practice
Once a campaign is approved, save the campaign description, message flow, and opt-in page configuration as your baseline template. Keep a record of approved campaigns to use as a reference template. Future submissions for similar brands should match that structure as closely as possible — consistency improves approval rates.

What can vary between brands
Brand name, website URL, contact email domain, and opt-in page URL will differ per brand. The structure, consent language, disclosure text, and message samples should remain consistent.


6. Twilio public reference articles


This document is intended as a preparation guide only. ServiceMinder does not guarantee campaign approval. Requirements may change as carrier policies evolve. Contact support@serviceminder.io with questions.