DLT SMS Template Rejected? Reasons and How to Fix Them
By Neha
You wrote a simple appointment reminder, submitted it on the DLT portal, and a day later it came back rejected with a one-line reason that explains nothing. Your SMS provider says "just fix the template", but nobody tells you what is actually wrong.
This guide lists the real reasons a DLT template is rejected under TRAI's current rules, how to fix each one, and the order of steps that gets a template approved the first time.
Short answer: A DLT template is usually rejected for one of five reasons: blanks written in the wrong format or without the right tag, too little fixed text, a brand name that does not match your registered header, selling words in a service or transactional template, or a link or phone number that has not been whitelisted. Fix the wording, pick the category that matches the message, then resubmit under the right header.
What is a DLT template, and why is it checked?
DLT (Distributed Ledger Technology) is the shared registry Indian telecom operators use, under TRAI rules, to record every business that sends bulk SMS. A content template is the fixed wording of one message, with blanks for the parts that change, such as a name or an order number.
Every business SMS is matched against an approved template before it is delivered. If the message does not match, it is blocked. That is why the template check is strict: operators are trying to stop spam and fraud messages that pretend to be from banks, couriers or government offices.
The rules come from TRAI's Telecom Commercial Communications Customer Preference Regulations, usually shortened to TCCCPR. The 2025 amendment tightened template checks. A specially assigned person at each operator now reviews templates, a template can be linked to only one header, and templates unused for 90 days are switched off automatically.
You register on one operator's portal, such as Jio, Airtel, Vodafone Idea (Vilpower) or BSNL, and the registration is shared with the others.
Why was my DLT template rejected? The common reasons
Most rejections are mechanical, not personal. The reviewer is checking your wording against a list. Here are the reasons you are most likely to see, and the fix for each.
| Reason | What it looks like | How to fix it |
|---|---|---|
| Blanks in the wrong format | Dear [name] or Dear XXXX | Use the DLT blank format with the right tag, such as {#alphanumeric#} |
| Mostly blanks | {#alphanumeric#} {#numeric#} {#url#} | At least 30% of the characters must be fixed text |
| Two blanks side by side | {#alphanumeric#}{#numeric#} | Put fixed words between them |
| Brand name missing or different | Template says "Sharma Sweets", header is registered to another brand | Use the brand your header belongs to, in the text |
| Selling words in a service template | "Your order is ready. Flat 20% off next time!" | Remove the offer, or register a separate promotional template |
| Link or number not whitelisted | A bit.ly link or a mobile number nobody registered | Use your own domain and whitelist it, along with call-back numbers |
| Wrong category | A delivery update filed as promotional, or a discount filed as service | Pick the category that matches what the message does |
Our free DLT SMS template checker looks for most of these before you submit. Paste the template, pick the type and your brand name, and it flags blanks in the wrong style, side-by-side blanks, a missing brand name, selling words in a service template, public link shorteners, and characters that make the SMS cost more. It cannot promise approval, because a person at the operator still decides.
How should variables be written in a DLT template now?
Every blank must be written in the DLT format and, since TRAI's direction of November 2025, tagged with the kind of data it will hold. A plain {#var#} was enough for years. It is not enough any more on most operator portals.
TRAI's direction of 18 November 2025 told operators to check every variable against a fixed list of tags, and to reject messages that fail the check once the transition period ends. As of October 2026, these are the tags in that list:
| Tag | Use it for | Example |
|---|---|---|
{#numeric#} | Numbers only: OTPs, amounts, counts | Your OTP is {#numeric#} |
{#alphanumeric#} | Booking IDs, ticket numbers, names | Booking ID {#alphanumeric#} |
{#url#} | A whitelisted web link | Track your order: {#url#} |
{#urlott#} | A whitelisted app or app-store link | Download our app: {#urlott#} |
{#cbn#} | A whitelisted call-back number | Call {#cbn#} for help |
{#email#} | An email address | Write to {#email#} |
Some portals keep {#var#} in the text and ask you to choose the tag in a separate box. Others want the tag inside the template itself. Follow what your portal's form asks for.
Keep each blank short. The regulation works around a limit of about 30 characters per variable, and the alphanumeric tag is checked at 40. If you need a full address, split it into two blanks with fixed words between them. More than three variables are allowed only with a written reason.
Our checker turns blanks typed in other styles, such as {name}, [name] or XXXX, into the DLT format. After copying the cleaned version, replace each blank with the tag that fits.
Does the header have to match your brand and entity?
Yes. Every template is linked to a header, the short sender name a customer sees, and every header belongs to your registered business, called the entity. If the brand named in the template does not match the header it is linked to, the reviewer has no way to connect them, and the template is rejected.
Three common mix-ups:
- A brand name that appears nowhere in the message. "Your appointment is confirmed for 5 pm" could be from anyone. Write "Your appointment at Sharma Dental is confirmed for 5 pm".
- A trading name that differs from the header. If your header stands for "Kumar Electronics" but the template says "KE Mobiles", register a header for the second brand first.
- An agency sending under its own entity. A digital agency cannot put a client's brand in its own DLT account. The client registers as an entity, and the agency is linked as the telemarketer, the company that delivers the messages.
Under the 2025 amendment, operators also add a suffix to the header that tells customers what kind of message it is: -P for promotional, -S for service, -T for transactional and -G for government. That suffix is shown on the customer's phone, so a wrong category is visible to everyone.
Which category should you choose: promotional, service or transactional?
Choose by what the message does, not by what you hope it will achieve. The 2025 amendment to the TCCCPR redefined the categories and states that if promotional content is mixed into any other type of message, the whole message counts as promotional.
- Transactional. Sent within 30 minutes of a transaction the customer started, such as an OTP, a payment confirmation or a refund notice. The regulation now names non-bank senders like e-commerce sites and app logins, but older guidance and some providers still treat this route as bank-only. Follow what your operator's portal accepts.
- Service. Information for an existing customer about something they bought or use: delivery updates, appointment reminders, warranty or balance alerts. No offers, no cross-selling. A service message to complete a purchase someone has started can also be sent with their explicit consent, but that consent lasts only seven days.
- Promotional. Anything that advertises or sells: offers, new stock, festival greetings with a discount. Every promotional message must include a way to opt out in the same message, and it reaches only people who have not blocked promotional SMS or who gave you explicit consent.
Many portals still show the older labels "service implicit" and "service explicit". Under the 2025 rules, offers do not belong in either. If the message sells, register it as promotional.
What about links and phone numbers in the SMS?
Any link, app link or call-back number in a template must be whitelisted on the portal first. Whitelisting means you register the exact web address or number and give an undertaking that it is safe. Messages carrying anything else are blocked during delivery, even if the template itself was approved.
A few practical rules follow from this:
- Do not use public link shorteners such as bit.ly. The real address is hidden, so operators cannot check it. Use your own domain.
- Register the call-back number you actually want customers to dial, including toll-free numbers.
- If you track campaign clicks, whitelist the domain you send people to. A tracking link built with our campaign link builder still points to your own website, so the domain is what needs approval.
How to get a DLT template approved, step by step
Work in this order. Most delays come from doing step four before steps one to three are finished.
- Register your business as an entity on one operator's DLT portal. TRAI's rules now require physical verification of the business and biometric verification of the authorised person, so keep your business documents ready.
- Register a header for each brand you send from, and choose its category.
- Whitelist every link, app link and call-back number you plan to use.
- Write the template. Brand name in the text, tagged blanks, at least 30% fixed wording, plain characters only.
- Run it through a checker. Fix anything flagged. If the message is long, paste it into the character counter: an SMS holds 160 plain English characters, but only 70 if it contains Hindi or emoji, and longer messages are billed as several parts.
- Submit under the right category, linked to one header only, and wait for the review.
- Copy the approved template exactly into your SMS software, including spaces and punctuation, and add the template ID your provider asks for.
A worked example: an appointment reminder for a clinic in Lucknow
Picture a physiotherapy clinic in Lucknow whose first template was rejected:
Hi [name], ur appt is on XXXX. Get 10% off ur next session! Call 9876543210
It has untagged blanks, a discount inside a reminder, no brand name and a phone number that was never whitelisted. The corrected service template reads:
Dear {#alphanumeric#}, your appointment at Gomti Physio is on {#alphanumeric#}. To reschedule, call {#cbn#}. - Gomti Physio
The clinic whitelists its reception number, links the template to the header registered for Gomti Physio and files it as service. The discount becomes a separate promotional template with an opt-out line, sent only to patients who have not blocked promotional SMS.
If your patients use WhatsApp more than SMS, the same reminder can go out as a WhatsApp utility template. Meta has its own review rules, so check it with the WhatsApp template checker, and read our WhatsApp Business marketing guide for what the free app can do without any template at all. For money owed rather than appointments, our guide to writing a payment reminder message has polite wording you can adapt.
Frequently asked questions
Why is my DLT template rejected even though it looks fine?
Usually because of something small: an untagged blank, a missing brand name, a curly quote copied from Word, or a link that is not whitelisted. Reviewers check against a list, so one mismatch is enough. Run the template through a checker, compare the brand name with your header, and check that every link and phone number has been whitelisted before you resubmit.
Can I still use {#var#} in my DLT template?
On most portals, no. Since TRAI's November 2025 direction, every blank must be tagged with the type of data it holds, such as numeric, alphanumeric, URL, app link, call-back number or email. Some portals keep the {#var#} blank and ask for the tag in a separate field. Read your portal's template form and follow its format exactly.
How long does DLT template approval take?
It varies by operator and by how busy their review teams are, and TRAI does not publish a fixed time. Clean templates often clear within a day or two, while ones that need clarification take longer. Submitting templates that are already correct is the best way to avoid going back and forth.
Can I send offers to my existing customers as a service SMS?
No. Under the 2025 amendment, service messages must not contain promotional content, and cross-selling or upselling to existing customers does not count as service. If a reminder includes an offer, the whole message is treated as promotional. Send updates and offers as two separate templates.
Why are my approved templates suddenly not delivering?
Common causes are a template unused for 90 days and switched off automatically, a link or number in the message that is not whitelisted, a variable that fails its tag check, or text that does not match the approved wording exactly, including spaces. Ask your provider for the failure code, then check each of these.
