> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cliqo.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Understand consent and opt-in

> How Cliqo records each contact's authorization, per channel — and why importing a spreadsheet never becomes an opt-in on its own.

Consent, in Cliqo, is not a checked box — it is a **record with proof**: who authorized, for which channel, when and through where. This article explains how that record works and what each contact origin unlocks.

## Consent is per channel

Email and WhatsApp are **separate** authorizations. A contact can accept email and not accept WhatsApp; unsubscribing from one channel does not remove the other. On the contact profile (the panel that opens when you click a contact, **Consent** section), you see the state of each channel (**Email · marketing** and **WhatsApp · marketing**), and Gmail's one-click unsubscribe revokes **email only** — that is what the person asked for.

## What Cliqo records

For each consent: the channel, the date, and the **origin** — form inside the email, store pop-up, manual signup, import, checkout. This trail exists because the LGPD (Brazil's general data-protection law, similar to the GDPR) requires proof of how the authorization was obtained, and on WhatsApp Meta puts the burden of proof on the sender: an opt-in you can't prove is an opt-in you don't have.

**Roles**: you (the brand) are the data controller; Cliqo operates on your behalf and keeps the provenance record.

## What counts as an opt-in

| Origin | Creates an opt-in? |
| - | - |
| Form inside the email (AMP) | ✅ Yes — for email, when the form is submitted with the address; for WhatsApp, only with the WhatsApp box checked |
| Store pop-up | ✅ Yes — email and WhatsApp are separate boxes, both unchecked by default |
| Manual signup with the consent box checked | ✅ Yes |
| Store purchase (checkout) | ✅ For email, when the store reports that the customer accepted its newsletter. Utility messages about the customer's own order don't depend on opt-in |
| **Spreadsheet import** | ❌ **Never on its own** — only with your declaration in step 3 of the import, recorded as yours |

## Why an import is never an opt-in on its own

A CSV file proves nothing — any purchased list would arrive as "authorized". On import, what you do is **declare** the state of the base: if it was already opted in on your previous tool, that declaration unlocks marketing sends (and is recorded as your declaration, with a date). What the import does not do, by design: it does not trigger the welcome flow on its own — an imported contact is not a contact who just signed up — and it does not create a silent opt-in for anyone who didn't have one.

For WhatsApp, the bar for that declaration is higher: check **WhatsApp marketing** only if you have proof of each authorization. Blocks and reports drag down your number's quality rating with Meta — and that limits your future sends.

## Email vs WhatsApp in practice

* **Email**: your current customer base, with a visible opt-out in every send, is a legitimate base. The cost of getting it wrong is low — the person unsubscribes.
* **WhatsApp**: **marketing requires an explicit, recorded opt-in**. The exception is **utility** messages tied to the customer's own order (confirmation, delivery, payment). The cost of getting it wrong is high: people who receive messages they never asked for block you, and blocks drag down the number's quality rating. In any send, **"SAIR" (Portuguese for "leave" — i.e. unsubscribe) is honored immediately** — the engine recognizes the variants (parar, stop, cancelar, descadastrar).

## Related articles

* [How to import contacts](https://docs.cliqo.io/en/gestao-de-dados/importar-contatos.md)
* [Opt-in and consent for WhatsApp](https://docs.cliqo.io/en/whatsapp/opt-in.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.