How to create and launch a WhatsApp campaign in Nuvia

Send personalized WhatsApp sequences with Nuvia's Campaigns module.

Available on
All plans
Who can do it
Any user with permission to view campaigns

A campaign lets you send messages at scale to a contact list via WhatsApp, LinkedIn, or other channels.

Available on: All plans.

Who can do it: Any user with permission to view campaigns.


What you need before you start


How to create and launch a campaign

Step 1: Start creating the campaign

  1. In the side menu, click Campaigns

  2. Click New Campaign

  3. Fill in the Campaign name field (maximum 100 characters). E.g., “Enterprise Prospecting Q1”

  4. Select the Campaign type – choose WhatsApp for your campaign

  5. Click Next

Step 2 – Define the audience

  1. For the activation type, select Manual (for your first campaign, start with manual activation)

  2. Under audience source, select List

  3. Choose the contact list to use as the audience

  4. In the side panel, check the audience preview, which shows the number of eligible and ineligible contacts per channel

  5. Under Exclusion rules, define who should be left out of the campaign (see the section below)

  6. Under Additional settings, decide on the Ignore business hours toggle. It comes off by default, which makes the campaign send only Monday to Friday, from 8 a.m. to 6 p.m. Only turn it on if you want to send at any time, including overnight and on weekends

  7. Click Next

Exclusion rules: who shouldn't receive the campaign

Under Exclusion rules, you define who is left out of the campaign, even if they're in the audience. People who match these rules don't receive the campaign.

  • Exclusion lists – click the field, use Search list, and select one or more lists. Anyone in any of them doesn't receive the campaign. The list chosen as the audience can't also be used as an exclusion list

  • Already has an open conversation – anyone who replied within the chosen period, counted from their last reply, doesn't join the campaign, whether they're talking to Autopilot (AI) or to an agent. You choose the period in minutes, hours, or days: at least 15 minutes and at most 30 days

Check the campaign's reach

In the side panel, the Campaign reach card shows, in real time, how many people will receive it:

  • In the list (or in the stage, when the audience comes from a funnel) – total people selected in the audience

  • Eligible – people who passed the campaign's rules and filters

  • Will receive – eligible people the campaign can act on in the channel, either by sending a message or requesting a connection

  • Channel – how many eligible people have a WhatsApp number and/or a LinkedIn profile

  • Excluded from sending – how many people were left out, broken down by reason: Outside filters, Exclusion list: list name, Already has an open conversation, and No WhatsApp number / No LinkedIn profile

When you change a rule, the previous numbers stay on screen, with a loading indicator in the title, until the new ones arrive. Meanwhile, the Next button is locked so you don't move forward with an old number.

If everyone in the audience is excluded, the Nobody will receive it warning appears. Adjust the audience or the rules to be able to activate the campaign.

See who was left out

When at least one person is excluded, the card shows the See who was left out button. It opens the Who was left out of the campaign panel:

  1. Use Search by name to find a person (the search ignores accents and capitalization)

  2. Filter with the reason buttons, which show the count for each: All, Outside filters (appears when the audience is a funnel or when there are people with this reason), Already has an open conversation, Exclusion list, and No channel

  3. In the table, see the Person, the Reason (with details, such as “List: list name” or “Conversation open for 2 hours”), and the Channels they have

  4. Use the link next to the name to open the contact, and use pagination to see the other people

Step 3 – Set up the message sequence

  1. Click Add step to create the first step of the campaign

  2. For each step, set:

    • Template – select an HSM template approved by Meta (for the WhatsApp Cloud API). The dropdown filters the available templates by the selected inbox

    • Default variable text – optional. Appears when the step has a variable (in a template or in text), with one field per variable. It's the text that goes into the message when the contact doesn't have that data; without it, contacts missing the data don't receive the message

    • Interval – set the waiting time between this step and the next (if there's more than one step)

    • Conversation owner – required. Defines who follows the lead. See the details below

    • Assignments – in the Handling field, define who takes over the conversation when the contact replies:

      • AI agent – the conversation is handled by the Smart Funnel (default agent set up in the funnel)

      • HubSpot owner – assigns the conversation to the Nuvia agent mapped to the contact's owner in HubSpot. Only appears with the integration connected; without a contact, owner, or mapping, the conversation has no assignee and sending isn't blocked

      • Unassigned – the conversation has no assignee

      • Agent – select an active platform user to receive the conversation directly

  3. The Keep assignment for existing conversations option (checked by default) keeps whoever is already in the conversation, owner or agent alike; uncheck it to reassign those conversations too. Under Advanced settings, adjust the Service funnel and the Funnel stage; the default funnel and the first stage come preselected

  4. Use the preview in the side panel to see how the message will look with a contact's real data. Move between contacts using the Previous and Next arrows

If you want, add more steps by repeating the process

Set the step's conversation owner

The Conversation owner field sits right above the Assignments block and is required: until you choose an owner, the Handling field stays disabled and the button to save the step isn't enabled.

Owner and handling are different things. The owner is who follows that lead; handling is who replies in the conversation. That's why the owner can't be the AI agent; only handling can.

The options appear in two groups:

  • Special assignment – Unassigned (the conversation has no owner) and HubSpot owner (uses the Nuvia agent mapped to the contact's owner in HubSpot; only appears with the integration connected)

  • Users – any active platform user, who becomes the fixed owner of the conversations generated by this step

On the step card, the configured owner appears as the Owner tag; older steps without an owner don't show this tag.

Step 4 – Launch the campaign

  1. On the summary screen, review all settings: name, channel, audience, steps, and variable mapping

  2. Click Launch campaign

  3. Confirm in the confirmation dialog that appears

  4. The campaign changes to Active status and sends start being processed, within the sending window


Sending window and business hours

By default, every campaign respects the sending window: Monday to Friday, 8 a.m. to 6 p.m., Brasília time. At 5:59 p.m. the campaign still sends; at 6:00 p.m. it stops. Saturday and Sunday are entirely outside the window.

The window applies to WhatsApp and LinkedIn. The only way out of it is to turn on the Ignore business hours toggle in Step 2.

What happens to what falls outside the window

Nothing is discarded. Whatever was due to go out outside the window is held and released at the next opening:

SituationBehavior
A scheduled campaign whose time arrived outside the window It waits and is sent when the window opens. The campaign stays Active while it waits
Next steps in the sequence whose interval ran out outside the window They go out at the next window opening. The cadence is re-anchored at the opening, so the sequence isn't dragged into the middle of the night because of the time of the first message
Campaign activated from the screen outside the window (e.g., on Saturday) Contacts are enrolled right away, but the first send only goes out when the window opens
External CRM trigger fired outside the window (e.g., lead created at 11:45 p.m.) The send is held until the window opens
Manual send of a step outside the window The batch is queued, but the messages only go out when the window opens

To keep everything from going out at once at 8:00 a.m. and creating a spike, the platform spreads held sends over up to 1 hour after the opening. That's why, on a Monday, the sends held over a weekend appear spread between 8:00 and 9:00 a.m. instead of all in the same minute.

The window is fixed

The 8 a.m.-6 p.m., Monday to Friday range can't be configured per customer. What you control is the on/off through the Ignore business hours toggle. If your operation needs a different range (e.g., 8:30 a.m.-5:30 p.m.), talk to the Nuvia team.


Track the campaign after launch

At the top of the campaign screen, right below the name, there's a strip with Created on and Last updated, with date and time. Both dates are in Brasília time: hover over the strip's info icon to confirm the time zone. Use the last updated date to know whether someone changed the campaign after launch, for example who added a new step.

To check how the campaign was set up, open the Campaign details. When the toggle is on, the Ignore business hours badge appears with the note “Sends made at any time, with no 8 a.m.-6 p.m. restriction”.

If this badge doesn't appear, the campaign is respecting the window.


Frequently asked questions

Frequently asked questions

What is an HSM template?

HSM (Highly Structured Message) is a message template pre-approved by Meta for sending in WhatsApp campaigns. You can only start a conversation with a contact using an approved template. You create and submit templates for approval through Nuvia.

What's the difference between Conversation owner and Handling?

The owner is who follows the lead; handling is who replies in the conversation. They may or may not be the same person. When they're different, the owner is recorded as the one responsible for the conversation — that's why you can have the AI replying (AI agent handling) and still keep the salesperson as the owner.

Why doesn't Conversation owner have the AI agent option?

Because owner means follow-up, not handling. The AI can reply in the conversation, but it can't be responsible for the lead. If you want the AI replying, choose AI agent in the Handling field and set the owner separately.

My old steps have no owner. Does that change anything about sending?

No. Steps created before this feature keep working as before and are treated as Unassigned. The difference only shows up when you open the step to edit it: then the Conversation owner field must be filled in before saving.

The Handling field is gray and won't open. Why?

Because the Conversation owner hasn't been selected yet. Choose the owner first — Handling only unlocks after that.

Can I edit a campaign after it's launched?

No. After launch, the template, variables, and audience are locked. If you need to adjust something, pause the campaign and create a new one with the fixes.

Can I send the conversation to a specific agent?

Yes. In the step's Assignments block, under Handling, select the agent you want from the user list. When the contact replies, the conversation is assigned directly to that person. If you'd rather use the owner already set in HubSpot, choose HubSpot owner (available with the integration connected).

What are the default business hours for sending?

Monday to Friday, 8 a.m. to 6 p.m., in the America/Sao_Paulo time zone: at 5:59 p.m. the campaign still sends; at 6:00 p.m. it doesn't. This applies to WhatsApp and LinkedIn. You can turn off this restriction by turning on the Ignore business hours option in the audience setup.

Does turning on the Ignore business hours toggle restrict or allow sending?

It allows it. On means “send at any time”. Off (the default) means “respect the 8 a.m. to 6 p.m. window, Monday to Friday”.

Can I change the window's time range?

No. The 8 a.m.-6 p.m., Monday to Friday range is fixed and can't be configured per customer. What you control is turning the toggle on or off. If your operation needs a different range, talk to the Nuvia team.

I activated the campaign at 10 p.m. When do the messages go out?

At the next window opening: if it was a Tuesday at 10 p.m., they go out Wednesday from 8 a.m.; if it was Friday night or the weekend, they go out Monday from 8 a.m. Sends are spread over the first hour so they don't all go out in the same minute.

Does the cadence get delayed when a step is held?

The step goes out at the next window opening, and the following steps are counted from there. In practice, the sequence is re-anchored to business hours instead of being dragged into the middle of the night.

Can I change the toggle after launching the campaign?

The toggle is in Step 2 and can be edited while the campaign is in Draft. After launch, to check how it was set, open the Campaign details: the Ignore business hours badge only appears when the toggle is on.

Where do I see when the campaign was created and when it was changed?

At the top of the campaign screen, in the strip right below the name: Created on and Last updated, with date and time in Brasília time. The strip's info icon confirms the time zone.

Can I send the same campaign to more than one list?

Each campaign is linked to a single audience source (one list or one funnel stage). To send to multiple lists, create separate campaigns or consolidate the contacts into a single list before launching.

How do I know who was left out of the campaign and why?

In Step 2, click See who was left out on the Campaign reach card. The panel shows each excluded person with the reason (outside filters, already has an open conversation, exclusion list, or no channel).

Was this article helpful?