Skip to content
A2PCheck
A2PCheck/Opt-in flow examples

A2P 10DLC opt-in flow examples

"Users sign up on our website" is the single most common opt-in description and the single most common reason for rejection. Carriers want a specific, reproducible narrative: where the call to action lives, the consent text, the confirmation step.

Guidance only — A2PCheck is not affiliated with Twilio, The Campaign Registry, or any carrier, and we can't guarantee approval.

Free — no signup required

Test your opt-in description

Paste your campaign details below — we'll flag whether your opt-in flow reads specific enough for carriers. Free, no signup.

01

Campaign Info

Basic details about your messaging campaign.

02

Sample Messages

Provide at least 2 example messages you'll send.

03

Consent & Message Flow

How users opt in, out, and get help.

04

URLs

Links to your website, privacy policy, and terms.

05

Content Flags

Declare any special content attributes.

Checklist

  • Name the exact URL or location where consent is captured.
  • Quote the consent text users see, verbatim, in your campaign description.
  • State that the consent box / control is unchecked by default.
  • Describe the confirmation step (email, on-screen, or first SMS).
  • Distinguish promotional vs transactional opt-in if you send both.
  • Reference STOP, HELP, msg-freq, msg&data rates inside the consent text.
  • Mention your privacy policy URL and terms URL where the consent appears.
  • Don't claim opt-in via a third party (purchased lists, partners) — that triggers rejection.

What rejection looks like

Too vague

Users sign up on our website.

Carriers cannot verify this. They will ask for the form URL, consent text, and confirmation step — or just reject the campaign outright.

Flow templates

Web form

Customers opt in at https://acme.com/sms by entering their phone number and checking an unchecked-by-default consent box: 'By providing my phone number, I agree to receive recurring marketing text messages from Acme. Msg&data rates apply. Reply STOP to unsubscribe. See Privacy Policy and Terms.' On submit they receive a one-time confirmation message asking them to reply Y to confirm.

  • URL of the actual form is named.
  • The exact consent string is quoted.
  • Consent box is unchecked by default (no pre-ticked boxes).
  • Confirmation step is described.

Checkout checkbox

During checkout at https://acme.com/checkout, customers see an optional, unchecked checkbox below the phone field labelled 'Text me about my order and occasional promotions from Acme. Msg&data rates apply, msg freq varies, reply STOP to unsubscribe.' Marketing messages are only sent if this box is checked; transactional order updates are governed by a separate transactional opt-in disclosed in Terms.

  • Checkout URL is named.
  • Promotional opt-in is separate from transactional.
  • Explicit rate / frequency / STOP wording.

Keyword opt-in

Customers see signage at our retail locations and on https://acme.com/sms reading 'Text JOIN to 55555 for 10% off and to receive recurring promotional messages from Acme. Msg&data rates apply, msg freq varies. Reply STOP to unsubscribe, HELP for help.' After texting JOIN, they receive a confirmation message containing the same disclosure.

  • Where the call to action appears (signage / web).
  • Full disclosure on the call-to-action itself.
  • Confirmation reply text described.

Frequently asked questions

Can I claim opt-in via a partner or purchased list?

No. Carriers reject campaigns whose opt-in is sourced from third parties, purchased lists, or affiliates. The opt-in must be direct, with verifiable consent captured by you.

Does the consent checkbox need to be unchecked by default?

Yes. Pre-checked consent boxes are treated as no consent. State explicitly in the campaign description that the box is unchecked by default.

What if my opt-in happens offline (phone, in person)?

Describe the script the staff member reads, where the consent is recorded, and how the user receives a confirmation message. Offline opt-in is acceptable when documented; vague is what gets rejected.

Run a free pre-scanSample message checklistResubmission checklist