Skip to content
A2PCheck
A2PCheck/Sample message checklist

A2P 10DLC sample message checklist

Carriers and TCR review the two sample messages you submit far more carefully than the campaign description itself. The patterns below are what we see flagged in rejection threads over and over.

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

Free — no signup required

Scan your sample messages

Paste your campaign details below — or click 'Scan this example' next to the bad/good messages below to see the verdict instantly. 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

  • Brand identifier at the start (e.g. 'Acme:'). Carriers want recipients to know who's texting them.
  • Specific content — a promo code, an order number, an appointment time. No 'check out our offer'.
  • Msg&data rates may apply (for promotional / marketing).
  • Msg frequency disclosure when applicable ('Msg freq varies', '4 msgs/month').
  • Reply STOP to opt out — exact wording, on every promotional sample.
  • HELP keyword referenced if you've enabled it.
  • URLs use your registered short domain or a clean branded link, not a generic shortener (bit.ly, t.co).
  • Length: keep individual SMS under 160 chars where possible. Long copies look like spam.

Bad vs. good

Rejected

Hi! Check out our new sale at acme.com
  • No brand prefix — who is "us"?
  • No opt-out wording.
  • No frequency or rate disclosure.
  • Vague content — "new sale" says nothing.

Approved-shape

Acme: 20% off this week only. Shop acme.com/sale. Msg&data rates may apply. Msg freq varies. Reply STOP to opt out, HELP for help.
  • Brand identifier ("Acme:").
  • Specific offer with a destination on your own domain.
  • Rate disclosure included.
  • Frequency mentioned.
  • STOP / HELP both surfaced.

Two-message strategy

You submit at least two examples. They should not be near-duplicates — the second one should demonstrate a different message type (transactional vs promotional, alert vs reminder). Carriers use the spread of samples to judge whether the campaign matches its declared use case.

Frequently asked questions

How many sample messages do I need to submit?

At least two distinct examples. They should not be near-duplicates; the spread is what carriers use to verify your campaign matches its declared use case.

Do transactional samples need STOP wording?

Promotional samples must include STOP. Transactional samples (order updates, 2FA, appointment reminders) typically do not require it, but including HELP and a brand prefix is still expected.

Can I use a generic link shortener like bit.ly?

Use your own branded domain or a clean short URL on your domain. Generic shorteners are commonly flagged because carriers cannot easily inspect the destination.

Run a free pre-scanNext: opt-in flow examplesResubmission checklist