# Statuses

> Every status family in Reply with exact values — the 14 contact statuses, contact and account stages, sequence toggle colors, email validation results, and inbox categories.

**Contact statuses are fourteen per-sequence labels Reply assigns automatically, from Active to Called. Stages are separate editable engagement labels you set yourself. Account stages run New through Closed-lost, sequence toggles show six colors from green Active to blue Completed, email validation returns Valid, Risky, or Invalid, and inbox threads carry one category each.**

_Status: Reviewed — human-edited, facts not yet confirmed against the product._

Reply labels objects with several independent status families. The two most often confused
are contact **statuses** and contact **stages**:

> **Statuses are not stages.** A contact **status** describes processing within a specific
> sequence and is assigned by Reply automatically based on the interaction (with some manual
> exceptions). A contact **stage** is an editable label for the level of interaction and
> engagement across your entire outreach — you set it yourself, and it is not tied to any
> one sequence.

## Contact statuses

Each contact in a sequence carries one or more of these 14 statuses. Statuses can combine —
*Replied* usually comes together with *Finished*, and a *Bounced* contact can also show
*Opened* (the recipient provider's email checker, or your own view of the bounce-back
message).

| Status | Meaning | Assigned when | User-settable |
| --- | --- | --- | --- |
| Active | The contact can receive emails; replies are tracked | The contact is added to an active sequence | Yes — change to Paused, Finished, Out of office, or Opted out anytime; to Bounced or Replied only after at least one email was sent |
| Paused | Sending and reply tracking stop temporarily | Set manually; only possible for contacts that are in a sequence | Yes — revert to Active to resume |
| Missing data | No emails are sent until resolved | A template variable has no matching value in the contact's profile | Removal only — fill in the variable or remove it from the template, then clear the status manually |
| Bounced | An email came back undelivered | A send is returned (invalid address or other reasons) | Yes — assignable after at least one email; not retained when the contact moves to a different sequence |
| Out of office | Further steps stop until the status is removed | An auto-reply with out-of-office keywords is detected | Yes — change to Active manually, or configure automatic out-of-office handling |
| Finished | No emails are sent; reply detection stops | The contact replies to a sequence email, or all steps have been sent | Yes — back to Active only if steps remain or new steps were added |
| Contacted | The contact received at least one email from the current sequence | The first email is delivered | No |
| Opted out | No further outreach; the only status retained outside sequences; the contact cannot be moved to another sequence | The contact clicks the opt-out link, or an unsubscribe reply is sorted into the Do not contact inbox category | Yes — set and removed manually; any team member can assign it |
| Replied | The sequence stops for the contact by default; reply tracking stops | A reply arrives from the address you emailed (including forwarded from the thread), or an SMS reply to a sequence-related SMS | Yes — assignable after at least one email |
| Opened | The contact opened a tracked email | The open-tracking pixel fires (opens tracking enabled in sequence settings) | No |
| Clicked | The contact clicked a tracked link | Link tracking is enabled and a link in the email is clicked | No |
| Auto-replied | Comes together with Finished; further steps stop | An automatic reply is detected | No — cannot be set or removed manually |
| To call | The contact is due for a call | The contact reaches a Call step in the sequence | Yes — from the contact sidebar |
| Called | A call action was logged; permanent until removed | A Call task is completed, a Cloud Calls call is made, or a call is logged via the contact sidebar | Removal only — via the contact sidebar |

With Team Edition in public mode, only the sequence owner can change a contact's status.
The exception is *Opted out*, which any team member can assign. After *Replied*, the
sequence stops by default unless replies handling is set to *Continue sending emails* —
see [Sequence stopping](/behavior/sequence-stopping).

## Contact stages

Stages label how much you are interacting with a contact throughout the entire outreach
process — labels like *Interested*, *Engaging*, *Not Interested*, *Do Not Contact*, and
others. You assign them yourself from the People page (**More → Set stage**).

| Rule | Value |
| --- | --- |
| Creating new stages | Not possible — only the existing stages can be edited |
| Editable fields | Name, label color, description |
| Name length | **21** symbols maximum |
| Description length | **512** symbols maximum |
| Where to edit | Settings → Contacts → Contact stages |

## Account stages

Accounts group contacts by company — the API noun is Company, see
[Companies](/specifications/companies). Each account can carry one stage marking its phase
in the outreach pipeline, from initial contact to deal closure.

| Stage | Description |
| --- | --- |
| New | The account is new to the outreach pipeline |
| Qualified | Sales-qualified account |
| Meeting booked | A meeting is booked with a decision-maker |
| Negotiating | Negotiations are in progress |
| Disqualified | The account is not relevant |
| On hold | Contact later |
| Closed-won | The deal was completed successfully |
| Closed-lost | The deal was lost |

The same editing rules apply as for contact stages: stages cannot be created, only edited
(name, color, description; 21-symbol names, 512-symbol descriptions). Selecting **None**
removes the stage from an account. Accounts can be filtered by stage with *Equals*, *Does
not equal*, or *None* conditions.

## Sequence toggle states

Every sequence has a toggle whose color summarizes its state; hovering shows a tooltip
with details.

| Toggle | State | Meaning |
| --- | --- | --- |
| Green | Active | The sequence is running — just launched, restarted after a pause, or working through its steps |
| Gray | Inactive | Not running — newly created and never launched, paused, or archived |
| Red | Action required | Missing or invalid settings; the sequence cannot run until fixed |
| Orange | Issues detected | Warnings that need attention |
| Yellow | Limits reached | Temporarily paused because a limit was hit |
| Blue | Completed | All contacts finished the sequence; no active contacts left |

### Red — action required triggers

- The sending email account was removed or disconnected
- The connected LinkedIn account was removed
- There are sending errors
- There are no contacts in the sequence
- The sending schedule is missing
- The sequence is under review and suspended after reaching the 8% bounce-rate threshold

### Orange — warning triggers

- Some contacts have no sending email account assigned
- Some contacts have no LinkedIn account assigned
- Contacts are missing required data
- Sending from some email accounts stopped due to a provider block
- The sequence reached a 4% bounce rate
- The voice profile is missing

### Yellow — limit triggers

- The email account's daily sending limit was reached
- The active contacts limit for the current billing period was reached
- The sequence daily limit was reached
- LinkedIn's weekly limit for connection requests was reached
- The email provider blocked sending: daily sending quota exceeded

Exact limit values: [Limits](/reference/limits).

## Email validation statuses

Reply checks each email address and classifies it into one of three groups.

| Status | Meaning | Guidance |
| --- | --- | --- |
| Valid | Verification completed; no high-risk factors detected | Safe to put into sequences |
| Risky | The recipient's mail server states the recipient exists, but the send may still bounce or be of low value | Treat as Valid; keep Risky addresses to up to 20% of a list to avoid high bounce rates |
| Invalid | The address failed validation | These contacts do not receive sequence emails |

An address is marked **Risky** for one of three reasons: the domain is a well-known
disposable email address provider (DEA), the mail exchanger is a catch-all that accepts
non-existent addresses, or the mail exchanger hides a honeypot/spam trap.

An address is marked **Invalid** when validation returns one of three error groups:

| Error group | Examples |
| --- | --- |
| Syntax errors | Missing @ separator, invalid characters, unclosed quoted words or comments, two adjacent dots, invalid local-part or total length, non-compliant domain part |
| DNS errors | The domain does not exist, or has no valid DNS records and cannot accept messages |
| Mailbox errors | The mailbox does not exist, the mail exchanger refuses to accept messages, or the address uses an international mailbox name the server does not support |

## Inbox categories

Inbox categories label email threads by the contact's interest. Reply's AI assigns them
automatically by analyzing the tone of replies; you can reassign, clear, or bulk-assign
them manually.

| Rule | Value |
| --- | --- |
| Default categories | Interested, Not interested, Do not contact, Not now, Forwarded, Meeting intent |
| Custom categories | Can be created and edited |
| Categories per thread | **One** — the exception is Meeting intent, which is a subcategory and can accompany another category |
| Assignment | Automatic by AI, with manual assign/reassign/clear, individually or in bulk |

A reply sorted into *Do not contact* triggers the *Opted out* contact status. How
classification feeds outreach: [Reply classification](/learn/reply-classification).

## FAQ

### Are contact statuses the same as contact stages?

No. Statuses are per-sequence processing labels assigned automatically by Reply; stages
are editable engagement labels you assign yourself across all outreach. They live in
different places and answer different questions.

### Can I create a new contact or account stage?

No — stages cannot be created, only edited. You can change the name (up to 21 symbols),
label color, and description (up to 512 symbols) of the existing stages.

### Does the Bounced status follow a contact into another sequence?

No. Reply does not hold onto the Bounced status when a contact is moved to a different
sequence. The only status retained outside sequences is Opted out.

## Related

- [How statuses change](/behavior/status-transitions)
- [Lifecycle diagrams](/reference/lifecycle-diagrams)
- [Reply classification](/learn/reply-classification)
- [Contacts](/specifications/contacts)
- [Sequences](/specifications/sequences)

## Build with Reply

- REST API: [docs.reply.io](https://docs.reply.io/api-reference/introduction) — status fields and the operations that change them
- MCP: [agents.reply.io/mcp](https://agents.reply.io/mcp) — contact status, stage, and inbox category operations
