# Opt-outs & reactivation

How contacts opt out — STOP in markets with inbound SMS, an unsubscribe link elsewhere — how a repeated opt-out escalates to suppression, who can bring a contact back, and how to set up your unsubscribe links.

**Language:** en
**Audience:** platform
**TLDR:** A contact opts out by replying STOP (inbound-SMS markets such as the US or France) or by tapping the message's unsubscribe link. The first opt-out is reversible (the contact via START or a re-subscription flow, or your team); a second opt-out escalates to suppression — which only your team or the API can lift — and under the Basic policy a STOP suppresses directly. Unsubscribe links are configured under Settings › Project › Tools.
**Translation key:** platform.consent.opt-outs-reactivation
**Search keywords:** opt-out, opt out, unsubscribe, STOP, START, reactivate, reactivation, resubscribe, re-subscribe, suppression, escalation, unsubscribe link, opt-out prefix, tracking domain, inbound sms, keyword reply, bring back contact, unsubscribe links
**Related pages:** /platform/es/consent/opt-outs-reactivation, /platform/en/consent, /platform/en/campaigns/compliance-policies, /platform/en/consent/rcs-sms-shared-consent, /platform/en/channels/compliance-defaults
**Docs index (every page):** https://docs.instasent.com/llms.txt
**This zone's index:** https://docs.instasent.com/platform/en/llms.txt
**This page:** https://docs.instasent.com/platform/en/consent/opt-outs-reactivation/ (HTML) · https://docs.instasent.com/platform/en/consent/opt-outs-reactivation.md (Markdown)
**Other language (es):** https://docs.instasent.com/platform/es/consent/opt-outs-reactivation.md

A contact has two ways to stop receiving marketing, depending on the market: by **replying
STOP** where inbound SMS is available, or by clicking an **unsubscribe link** where it isn't.
The good news is that the first opt-out isn't final — it can be reversed, and only when the
person insists, with a second opt-out, does it become full suppression. This page covers how
contacts opt out, how that opt-out escalates, who can reactivate a contact, and how to set up
your unsubscribe links.

## How a contact opts out

The mechanism depends on whether the destination market supports **inbound SMS**:

- **Markets with inbound SMS** (for example the United States and France) — the contact
  replies **STOP** to opt out, and **START** to opt back in. Keywords are configurable per
  channel (see [Compliance](/platform/en/channels/compliance-defaults)).
- **Markets without inbound SMS** — there's no reply channel, so each send must carry an
  **unsubscribe link** instead. Clicking it opts the contact out.

{/* VERIFY: complete list of markets with inbound SMS (STOP/START) — only the United States and France are confirmed examples */}

> **Warning**: Every marketing send needs to include the opt-out mechanism that actually works in its market
> — a STOP instruction where inbound SMS exists, an unsubscribe link where it doesn't.

## From opt-out to suppression

An opt-out doesn't suppress a contact on the first request. What it does depends on the
campaign's **consent policy**:

- Under **Opt-out** or **Opt-in**, the **first** STOP (or unsubscribe-link click) leaves the
  contact as **declined marketing (opted out)** — they stop receiving marketing but stay
  subscribed. A **second** opt-out, from a contact who had already declined, escalates to
  **suppression**.
- Under **Basic**, a STOP goes **straight to suppression** in a single step, because Basic
  ignores the marketing preference and suppression is the only way to honour the request.

This escalation is the same whether the contact replied STOP or clicked an unsubscribe link.
The full policy-by-policy breakdown is in
[Compliance policies](/platform/en/campaigns/compliance-policies) — this page describes the
escalation; that page owns the policy table.

> **Note**: **Clicking an unsubscribe link does not suppress the contact outright.** It records an
> **opt-out** (marketing preference set to declined), following the same escalation as a STOP
> reply. Suppression only happens on a repeated request — or immediately under a Basic
> campaign.

```mermaid
stateDiagram-v2
    state "Opted out" as OptedOut
    [*] --> Active
    Active --> OptedOut: STOP / unsubscribe (Opt-out or Opt-in policy)
    Active --> Suppressed: STOP under a Basic send
    OptedOut --> Suppressed: STOP / unsubscribe again
    OptedOut --> Active: START / opt-in (contact or your team)
    Suppressed --> Active: reactivate (your team or API only)

    class Suppressed destructive
```

## Reactivation: who can bring a contact back

Reactivation depends on the contact's current state and on *who* is doing it:

- **A contact who declined marketing** can be brought back to it — by the contact (replying
  **START**, or through a re-subscription flow) or by your team/the API.
- **A suppressed contact** can only be reactivated by your team or via the API. A contact
  **can't lift their own suppression** — START reverses an opt-out, not a suppression.
- **A contact who is subscribed and accepts marketing** — reactivating has no effect.

In the panel, you reactivate a contact from the **Subscribed** / **Accepts marketing**
checkboxes on their
[profile](/platform/en/audience/contacts-profiles#channel-preferences); programmatically,
with the `reactivate` operation (see
[Manage via API](/platform/en/consent/managing-via-api)).

{/* VERIFY: whether reactivating a suppressed contact (admin/API) requires fresh consent on record */}

> **Warning**: Reactivating a contact who opted out or was suppressed only makes sense when you have a
> genuine basis to message them again — a new opt-in, an explicit request. Reactivating to
> message someone who asked not to be contacted defeats the purpose of the model.

## Setting up your unsubscribe links

Unsubscribe links are configured under **Settings › Project**, in the **Tools** group, on the
**Unsubscribe-links** page. The campaign editor inserts the link with the unsubscribe tag.

Two things you control there:

- **Tracking domain** — the domain the unsubscribe link uses. The default is **System
  default**; you can switch to a **branded domain** so the link carries your own domain
  instead of Instasent's. The catalog of domains is shared project-wide.
- **Opt-out prefix** — the keyword shown before the unsubscribe URL.

![The Unsubscribe-links page with the Tracking domain selector and the Opt-out prefix field](/platform/en/consent/images/opt-outs-reactivation--1-unsubscribe-links.png)
*Unsubscribe links: choosing the tracking domain and the opt-out prefix.*

> **Note**: For SMS and RCS, an opt-out applies to both channels — they
> [share consent](/platform/en/consent/rcs-sms-shared-consent). Whether an opt-out stays on
> its channel or propagates to every channel is the per-channel vs global scope setting, in
> [Compliance](/platform/en/channels/compliance-defaults).

---

This is one page of the Instasent documentation. For the complete machine-readable index of every guide and API reference, fetch https://docs.instasent.com/llms.txt — start there for full context.
