SMSLocal
DLT & Compliance

The top 10 reasons DLT templates get rejected

Ninety percent of DLT rejections share the same root causes — wrong category, missing opt-out, or banned URL shorteners. Use this cheat sheet to avoid them before you submit.

4 min readUpdated 18 Mar 2026

Operators reject templates for cause. The reason codes aren't always descriptive, but the underlying issue is usually one of these.

The usual suspects

  • Promotional text in a transactional template.
  • Variables placed inside URLs ('visit shop.com/{#var#}' — disallowed).
  • Missing opt-out in a promotional template.
  • Category mismatch — 'Hurry, buy now!' submitted as service-implicit.
  • Generic brand name that clashes with another PE's trademark.
  • URL shortener (bit.ly, tinyurl) not registered with the operator.
  • Unicode special characters (smart quotes, em-dashes) that don't match across operator systems.
  • Variable slots not in the {#var#} format.
  • More than 30 variables in one template (hard operator limit).
  • Template identical to one already approved under another PE — considered a duplicate.

If a rejection is wrong, use the appeals flow — most legitimate templates are approved on first appeal within 48 hours.

Did this article help?

If something isn't clear or the steps don't match what you're seeing, tell us and we'll fix the doc the same day.