# MSG-049 — Opt-out instructions must name a recognised keyword

> Opt-out instructions in message bodies must use a widely accepted keyword, not an invented alternative.

- **Rule ID:** MSG-049
- **Layer:** Message content (`MESSAGE_CONTENT`)
- **Checks:** `campaign.sample[]`
- **Severity:** HIGH — Rejected by at least one carrier or provider, and a common cause of failure at the rest.
- **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:** CTIA, FCC, TCR
- **Applies:** Applies to every 10DLC registration.
- **Canonical URL:** https://ekas.io/rules/10dlc/message-content/msg-049/

## Why this rule exists

Handsets and carrier platforms recognise a fixed keyword set, so an instruction like "text 2 to opt out" produces a reply nothing acts on — the consumer believes they have unsubscribed and keeps receiving messages. That is the exact scenario that turns into a complaint.

## How to fix it

Use STOP in message bodies. Reserve other keywords for the declared keyword list rather than advertising them as the primary route.

## Example of a compliant value

```text
Reply STOP to opt out, HELP for help.
```

## Common mistakes

- "Reply 2 to unsubscribe" and "text QUITNOW" both fail — handsets do not route them.
