# Campaign statuses

> Every status a campaign and its customers can have, what each one means, and which actions are available.

Source: https://docs.soosh.io/reference/campaign-statuses/

Each campaign in [**Campaigns**](https://app.soosh.io/campaigns) shows a status. You can filter the
list by status with **All statuses**. Every customer in a campaign has their own
status too.

## Campaign statuses

| Status | Badge | What it means | What the campaign page says |
|---|---|---|---|
| <span class="tag" style="--h:var(--sunken);--hf:var(--sub)">Draft</span> | Grey | Not sent. You can still change the name, number, template and customers. | |
| <span class="tag" style="--h:var(--analytics);--hf:var(--analytics-fg)">Scheduled</span> | Purple | Waiting to send at the time you chose. | Sends on (the date and time) |
| <span class="tag" style="--h:var(--cost);--hf:var(--on-cost)">Missed</span> | Amber | A scheduled campaign that didn't send at its time. | Didn't send at its scheduled time (the time). Pick a new time or send now. |
| <span class="tag" style="--h:var(--note);--hf:var(--on-note)">Queued</span> | Blue, pulsing | Starting. Soosh is lining up every customer. This lasts a moment. | Sending now. Numbers update live. |
| <span class="tag" style="--h:var(--note);--hf:var(--on-note)">Processing</span> | Blue, pulsing | Sending messages. | Sending now. Numbers update live. |
| <span class="tag" style="--h:var(--cost);--hf:var(--on-cost)">Paused</span> | Amber | Stopped part-way. Messages already sent stay delivered. | Paused. Resume to send to the rest. |
| <span class="tag" style="--h:var(--ok-soft);--hf:var(--ok)">Completed</span> | Green | Every customer has been tried. | Finished (the date and time) |
| <span class="tag" style="--h:var(--danger);--hf:var(--on-danger)">Cancelled</span> | Red | Stopped for good. Messages already sent stay delivered. | Cancelled. Messages already sent stay delivered. |
| <span class="tag" style="--h:var(--danger);--hf:var(--on-danger)">Failed</span> | Red | Stopped because of errors. | Stopped because of errors. Retry the failed messages once fixed. |

Soosh doesn't move new campaigns to **Failed**. A campaign whose messages
fail still finishes as **Completed**, and its failed messages show in the
list. Some older campaigns may still show **Failed**. The one exception is
a broadcast made over the API for an audience: if its contacts don't fit in
the month's campaign messages, or nobody can be sent to, it becomes **Failed**
before it sends anything, and the campaign page says why in place of the
usual line
([Create a broadcast](https://docs.soosh.io/reference/api/broadcasts/create-broadcast/)).

## Actions in each status

| Status | Actions |
|---|---|
| Draft | Change the campaign and its customers. **Send to** (number) **people** starts it now. **Schedule for** (number) **people** schedules it. **Delete** removes it. |
| Scheduled | **Unschedule** turns it back into a draft. **Reschedule** moves it to a new time. **Send now** starts it. **Delete** removes it from the list. |
| Missed | The same as **Scheduled**: **Unschedule**, **Reschedule**, **Send now** and **Delete**. |
| Queued | **Cancel campaign**. You can't delete it. |
| Processing | **Pause** and **Cancel campaign**. You can't delete it. |
| Paused | **Resume** carries on with the customers not yet sent. **Cancel campaign** stops it. **Retry failed** appears when some messages failed. **Delete** removes it from the list. |
| Completed | **Retry failed** appears when some messages failed. **Delete** removes it from the list. |
| Cancelled | **Delete** removes it from the list. A cancelled campaign can't be restarted. |
| Failed | **Retry failed**. **Delete** removes it from the list. |

All actions except **Delete** need the permission to run campaigns. Starting
or retrying a campaign also needs room in the workspace's monthly campaign
message limit.

## What moves a campaign to the next status

| From | To | Caused by |
|---|---|---|
| Draft | Scheduled | You schedule it. It needs at least one customer and a time in the future. |
| Scheduled or Missed | Draft | You click **Unschedule**. |
| Draft, Scheduled, Missed or Paused | Queued, then Processing | You start it, or Soosh starts a scheduled campaign at its time. Soosh checks for due campaigns every 30 seconds. |
| Scheduled | Missed | The start time is more than 6 hours past, or the campaign can't be sent as it is, for example it has no customers or its template was deleted. |
| Processing | Paused | You click **Pause**. |
| Processing | Paused | The workspace used all its campaign messages for the month. The page shows the reason and the date they come back. |
| Processing | Paused | The member who started the campaign no longer has the permission to run campaigns. |
| Processing | Paused | The API key that made a broadcast was revoked, or can no longer run broadcasts. |
| Queued, Processing or Scheduled | Paused | The workspace is closed. |
| Processing | Completed | No customer is waiting to be sent. Failed messages count as tried. |
| Completed, Paused or Failed | Queued, then Processing | You click **Retry failed**. |
| Queued, Processing or Paused | Cancelled | You click **Cancel campaign**. |

## Customer statuses

Customers use the same statuses as messages. See
[Message statuses](https://docs.soosh.io/reference/message-statuses/). Open a campaign and look at
the **Status** column of its customers.

| Status | Dot | What it means |
|---|---|---|
| <span class="tag" style="--h:var(--sunken);--hf:var(--sub)">Pending</span> | Grey | Not sent yet. |
| Sent | Blue | WhatsApp accepted the message. |
| <span class="tag" style="--h:var(--ok-soft);--hf:var(--ok)">Delivered</span> | Green | The message reached the customer's phone. |
| Read | Lavender | The customer opened the message. |
| <span class="tag" style="--h:var(--danger);--hf:var(--on-danger)">Failed</span> | Red | The message didn't go out or reach the customer. The reason shows under the status. |

A customer's message moves from **Pending** to **Sent**, **Delivered** and **Read** as
WhatsApp reports progress. A customer's message becomes **Failed** when WhatsApp
refuses the message or reports a delivery error, or when Soosh skips the
contact because they opted out of marketing. **Retry failed** puts failed
customers back to **Pending**, except those that failed with **WhatsApp
didn't confirm this message in time**: they may have got the message.

### Replies and button taps

A reply or a button tap is not a status. Soosh records it next to the
customer's status and shows it in the **Response** column. Replies within 72
hours count for the campaign.

### Filtering customers

Use **Filter customers by outcome** above the customer list.

| Filter | Shows |
|---|---|
| All | Every customer. |
| Replied | Customers who replied. |
| Tapped a button | Customers who tapped a button in the message. |
| No reply | Customers who didn't reply. |
| Read | Customers who read the message. |
| Failed | Customers whose message failed. |
| Not sent yet | Customers still **Pending**. |

## Related

- [Send a campaign to a tag](https://docs.soosh.io/guides/campaigns/send-a-campaign-to-a-tag/)
- [Schedule a campaign](https://docs.soosh.io/guides/campaigns/schedule-a-campaign/)
- [Pause or cancel a campaign](https://docs.soosh.io/guides/campaigns/pause-or-cancel-a-campaign/)
- [Retry failed messages](https://docs.soosh.io/guides/campaigns/retry-failed-messages/)
- [Read campaign results](https://docs.soosh.io/guides/campaigns/read-campaign-results/)
- [How campaign pricing works](https://docs.soosh.io/concepts/how-campaign-pricing-works/)
- [Marketing opt-out](https://docs.soosh.io/concepts/marketing-opt-out/)
- [Message statuses](https://docs.soosh.io/reference/message-statuses/)
- [Template statuses](https://docs.soosh.io/reference/template-statuses/)
- [Limits](https://docs.soosh.io/reference/limits/)
- [Permissions](https://docs.soosh.io/reference/permissions/)
