Tool

Sample Message Validator

Paste your campaign sample messages and lint them against the rules carriers actually check — length, placeholders, HTTPS-only links, no link shorteners, brand name, opt-out language, and 2–5 distinct samples.

tool Last verified mid-2026 2 min read

Sample messages are one of the most-scrutinized parts of a 10DLC campaign. Reviewers reject samples that are too short, identical, missing the brand name, or carrying link shorteners or bare HTTP URLs. Paste your samples below — one per line — and this validator flags the same issues a DCA reviewer would.

Sample Message Validator
Lint your 10DLC sample messages before submitting
At least one sample must contain this.
Paste at least one sample message above to validate it.
A linter, not a guarantee. Passing every check here does not guarantee campaign approval — reviewers also weigh use-case alignment and prohibited content. Use it to catch the common, mechanical rejection causes before you submit.

How it works

Each line is checked for length (20–1024 characters), the presence of [bracketed] template placeholders, bare http:// links (carriers require HTTPS), and link shorteners (bit.ly, tinyurl, t.co, goo.gl, ow.ly) — which are flagged as failures because they hide the destination. Embedded links and phone numbers are noted so you remember to set has_embedded_links / has_embedded_phone to match.

Set-level checks mirror the registry rules: at least one sample must include your brand name, at least one must include opt-out language (STOP / unsubscribe / cancel), and you need 2–5 distinct samples. See the rejection reasons table for the full list. Everything runs in your browser.

Sources