# OPS-075 — Opt-out instructions must recur, not just appear at opt-in

> A recurring programme must carry opt-out instructions at opt-in and at regular intervals thereafter — at least monthly.

- **Rule ID:** OPS-075
- **Layer:** Operational (`OPERATIONAL`)
- **Checks:** `outbound message cadence`
- **Severity:** HIGH — Rejected by at least one carrier or provider, and a common cause of failure at the rest.
- **When it bites:** Falls due after approval, once you are live and sending
- **How it is detected:** Not knowable before submission — reported with its deadline
- **Fix type:** Wait on an external system or a required interval
- **Required by:** T-Mobile, CTIA
- **Applies:** Applies to every 10DLC registration.
- **Canonical URL:** https://ekas.io/rules/10dlc/operational/ops-075/

## Why this rule exists

Subscribers forget what they joined and how to leave, and the reply that stops the programme is only obvious while the sign-up is recent. A programme that stops repeating the instruction converts would-be unsubscribers into complainants, because reporting the message as spam becomes the easiest available action.

## How to fix it

Carry "Reply STOP to opt out" in every message where the length allows, and at minimum in one message a month. Done when no subscriber goes a calendar month without being told how to leave.

## Example of a compliant value

```text
Acme Coffee: 20% off beans this weekend. Shop acmecoffee.com/sale. Reply STOP to opt out.
```

## Check this yourself

**Does any subscriber go a calendar month without being told how to leave?**

1. Audit the templates that dropped the opt-out line for length — those are the ones that go months without it, and they are usually the highest-volume ones.
2. Carry "Reply STOP to opt out" wherever the length allows, and at minimum in one message a month.

*What wrong looks like:* Subscribers forget what they joined and how to leave, so reporting the message as spam becomes the easiest available action.

## Notes

A cadence across live traffic. What the user has to check is the templates that dropped the line for length — those are the ones that go months without it, and they are usually the highest-volume ones.
