# MSG-026 — Samples must not contain mustache or curly-brace template tokens

> Curly-brace and mustache tokens such as {order_id} or {{name}} must not appear in sample messages.

- **Rule ID:** MSG-026
- **Layer:** Message content (`MESSAGE_CONTENT`)
- **Checks:** `campaign.sample[]`
- **Severity:** MEDIUM — Usually survives review, but lowers your trust score or invites manual review.
- **When it bites:** Gates approval — get this wrong and registration is refused
- **How it is detected:** Deterministic (settled in code from the submitted values)
- **Fix type:** Fix the field — a better value in the form clears it
- **Required by:** TCR, Twilio
- **Applies:** Applies to every 10DLC registration.
- **Canonical URL:** https://ekas.io/rules/10dlc/message-content/msg-026/

## Why this rule exists

Square brackets are the convention reviewers read as "this varies at send time"; curly braces read as an unrendered template that leaked into the registration. The distinction is arbitrary but it is the one applied, and the fix costs nothing.

## How to fix it

Convert every curly-brace or mustache token to square-bracket notation with a readable name.

## Example of a compliant value

```text
Acme Coffee: hi [first name], order [order number] ships today. Reply STOP to opt out.
```
