Campaigns

A campaign sends one approved WhatsApp template to many contacts at once, such as a promotion, a reminder or an announcement. Each message can be personalised with the contact's details. Relay then shows you who received it, who read it, who replied and why any messages failed.

When to use it

Use a campaign whenever you want to message a group of contacts, including people who haven't written to you recently. Campaigns always use approved templates, so they can reach contacts outside the 24-hour window.

For one-to-one conversations, use the Inbox.

Who can use campaigns

  • Agents, admins and owners Agent+ can create, send, clone and delete campaigns.
  • Viewers can see campaigns and their results. The New campaign button is disabled for them.
  • Every send is checked against your plan's campaign-message allowance. If a send is refused because of your plan, you'll see an upgrade prompt. Owners and admins get an Upgrade button; other roles are asked to contact their admin. See Usage and limits.

The Campaigns section has two pages, Overview and All campaigns, and a New campaign button.

Overview

The Overview shows how all your campaigns performed over a period of time.

The Campaigns Overview page with the date range control, the Account health cards and the Results in this range tiles.The Campaigns Overview page with the date range control, the Account health cards and the Results in this range tiles.
Choose a range (1), check Account health (2) and read the results (3).

Date range

Choose Last 7 days, Last 30 days (the default), Last 90 days, This month, or a custom From/To range. A custom range can be up to 366 days long and can't end in the future.

All days are UTC days. Today's figures are still filling up. The range is kept in the page address, so you can bookmark or share it.

Account health

The Account health card shows Meta's view of your WhatsApp number. Click Refresh to fetch the latest figures from Meta.

CardWhat it tells you
Daily messaging limitHow many unique contacts your number can message in a rolling 24 hours, for example "1,000 unique contacts per day", or Unlimited. Meta raises the limit automatically as you send good-quality messages. Not yet known means Meta hasn't reported it yet, which usually takes up to a day after you connect.
Consecutive days of messagingYour current streak of days (UTC) with at least one message sent. No live streak means nothing was sent today or yesterday.
Messaging quality ratingHigh, Medium or Low, based on how recipients react to your messages, for example by blocking or reporting you. Not yet known means Meta hasn't rated the number yet, which is not the same as a bad rating.

If no number is connected, the card says No WhatsApp number connected, with a link to connect one.

Results in this range

TileMeaning
SentMeta accepted the message for delivery. It has left Relay, but hasn't necessarily reached anyone.
DeliveredThe message reached the recipient's phone. Phones that are off deliver later, so this number keeps climbing after a send finishes.
ReadThe recipient opened the message (blue ticks). People who turn off read receipts never report a read, so this is always lower than the truth.
RepliedThe recipient sent a message back within the window Relay counts replies in.
FailedMeta rejected the message or couldn't deliver it.

Percentages are shares of all the recipients of the campaigns in the range.

In flight right now is a live snapshot, not a total for the range. It shows how many recipients are Queued (waiting to be picked up), Processing (being personalised) and Sending (handed to Meta, waiting for a response).

Day by day and Export CSV

The Day by day chart plots Sent, Delivered, Read and Failed for each UTC day. Delivery and read receipts arrive after the send, so a day can show more deliveries than sends.

Export CSV downloads exactly what's on the page: a row per day, totals, rates and the in-flight snapshot.

All campaigns

The All campaigns list with the search box, Delivery status filter, sort controls and a table of campaigns with their status.The All campaigns list with the search box, Delivery status filter, sort controls and a table of campaigns with their status.
Search, filter by Delivery status and sort the list. View insights (1) opens a campaign's results.
  • Search campaigns… finds campaigns by name.
  • Delivery status filters by status: Draft, Sending, Sent or Failed.
  • Sort by orders the list by Date created, Name, Audience size, Messages delivered, Messages read, Replies received or Recipients who clicked. The arrow button reverses the order.
  • Each row shows the campaign, its audience, delivery figures and Status. Click View insights to open it.
  • Clicks shows N/A when the campaign's template had no trackable link.
StatusMeaning
DraftSaved, not sent.
SendingMessages are going out now.
SentSending has finished.
FailedThe campaign could not be sent.

Create a campaign

Click New campaign. The wizard has four steps: Template, Audience, Personalize and Send. You can go Back at any time, or Cancel to leave without saving.

  1. Choose a Template

    Pick the Send from number first. Then choose a template: only templates that are approved for that number are listed.

    Step 1 of the campaign wizard showing the Send from number picker and a grid of approved templates.Step 1 of the campaign wizard showing the Send from number picker and a grid of approved templates.
    Choose the Send from number (1), then an approved template.
  2. Select Audience

    Choose who receives the campaign:

    • All Contacts
    • Filter by Tags: contacts with the chosen tags.
    • Custom Field: contacts whose custom field Is, Is not or Contains a value.
    • Upload CSV: a list of phone numbers (and optionally names). Numbers that aren't contacts yet are added as contacts.

    Exclude Tags (Optional) removes contacts with the tags you choose. It works with every option except Upload CSV. The Audience summary shows the estimated number of recipients.

    Step 2 of the campaign wizard with the four audience options and the audience summary.Step 2 of the campaign wizard with the four audience options and the audience summary.
    Pick an audience type and check the Audience summary.
  3. Personalize Variables

    For each variable in the template, choose where its value comes from:

    • Static Value: the same text for everyone.
    • Contact Field: the contact's Name, Phone or Email.
    • Custom Field: one of your custom fields.

    If the template has an image header, enter a public Image URL. The Preview shows the message with sample data. Next stays disabled until every variable is filled in.

    Step 3 of the campaign wizard mapping template variables, with a live message preview.Step 3 of the campaign wizard mapping template variables, with a live message preview.
    Map every variable, then check the live preview.
  4. Review & Send

    Enter a Campaign name, and check the Summary: template, audience, estimated reach, language and sending number. Then choose:

    • Save as Draft to keep it for later; or
    • Send campaign, then confirm in the Confirm campaign dialog. Sending cannot be undone.
    Step 4 of the campaign wizard showing the campaign name field, the summary and the Save as Draft and Send campaign buttons.Step 4 of the campaign wizard showing the campaign name field, the summary and the Save as Draft and Send campaign buttons.
    Name the campaign and review the summary before sending.

Sending, pacing and limits

  • Plan allowance: before a campaign starts, Relay checks it against your plan's campaign-message allowance. If it would go over, the send is stopped and you see an upgrade prompt.
  • Wallet: if your workspace uses a prepaid wallet, sends are charged to it. If the balance is too low, you're asked to top up.
  • Pacing: messages go out in small batches, one after another. On a number that also stays live in the WhatsApp Business App, sending is capped at 20 messages per second, because the phone shares the number's capacity. Large campaigns therefore take longer.
  • Meta's limits: your number's Daily messaging limit and Messaging quality rating still apply. Contacts over the limit, or messages Meta throttles, fail with a reason you can see in the campaign's insights.

Campaign insights

Click View insights on any campaign. Next to the campaign name, the header shows the template and language, when it was sent, and who sent it: a teammate's name, or "via the public API".

A sent campaign's insights page showing the header, the Audience overview bar and the Why messages failed panel.A sent campaign's insights page showing the header, the Audience overview bar and the Why messages failed panel.
The Audience overview (1) and the failure breakdown (2) for a sent campaign.

Audience overview

A single bar shows where every recipient ended up. Each recipient is counted exactly once:

  • Reached & read
  • Ignored: delivered but not read.
  • Failed
  • In flight: still being sent.
  • Unaccounted: no status has been recorded for the recipient.

Why messages failed

Failures are grouped by reason, with advice for each:

ReasonWhat it means
Could not be deliveredThe number isn't on WhatsApp, or can't receive this kind of message. Remove these contacts; re-sending won't help.
24-hour window closedOnly an approved template could reach these contacts.
Withheld by MetaMeta held back these marketing messages, for example because the contacts had already received their limit for the period, or had opted out. Send marketing to the same people less often.
Template problemMeta rejected the template, for example because it's paused or disabled, or its variables don't match. Check it in Settings → Templates.
Rate limitedMessages went out faster than the number allows, or Meta throttled it for quality. These recipients can be re-sent.
Account or connection problemFor example an expired connection, an unregistered number or a restricted business account. Check your WhatsApp connection.
Unrecognised Meta error {code}An error Relay doesn't recognise. Quote the code to support.
Reason not recordedNo reason was stored for these failures.

Click Show these recipients on a reason to filter the recipients table to those contacts.

How people responded

For templates with quick-reply buttons, a chart shows how many responders tapped each button. Free-text replies are counted separately, and you read them in the Inbox. If the template had no buttons, or nobody has responded yet, the panel says so.

Message

The Message panel shows what recipients were sent. A note warns you if the template has been updated since the send, is no longer approved, or has been deleted.

Recipients

The recipients table of a campaign with the Filter by status control, and columns Contact, Phone, Status, Sent, Delivered, Read and Error.The recipients table of a campaign with the Filter by status control, and columns Contact, Phone, Status, Sent, Delivered, Read and Error.
Filter recipients by status, and export them as a CSV file.
  • Filter by status: Queued, Processing, Sending, Sent, Delivered, Read, Replied or Failed. Older campaigns may also show Pending.
  • Columns: Contact, Phone, Status, Sent, Delivered, Read and Error.
  • Export CSV downloads every recipient that matches the current filter, not just the page you're looking at.

Clone or delete a campaign

  • Clone campaign starts a new campaign with this one's settings filled in.
  • Delete removes the campaign, after you confirm. You can't delete a campaign while it's sending.

Troubleshooting

No templates in step 1. Only templates approved for the selected Send from number are shown. Approve or sync one in Message templates, or pick another number.

"No WhatsApp number is connected." Connect a number first. See Connect WhatsApp.

Many "24-hour window closed" failures. Outside the 24-hour window, only an approved template reaches a contact. A free-form or ineligible message fails. Check that the campaign's template is still approved.

"Rate limited" failures. You're sending faster than your number allows. Send smaller campaigns, or spread them out. These recipients can be re-sent.

Quality rating is dropping. Recipients are blocking or reporting your messages. Send to people who expect to hear from you, send less often, and make your templates clearly useful. A Low rating can reduce your daily limit.

The Day by day chart is empty. Nothing was sent in the selected range. Widen the range.

I can't click New campaign. Viewers can't create campaigns. You need the agent role or higher.