Skip to Content
This guide has been rewritten for the new Raion Hub.See what changed →
MessagingSet up automatic WhatsApp follow-ups

Set up automatic WhatsApp follow-ups

A follow-up sequence sends a short run of approved WhatsApp templates on a timer — one two hours after a lead is assigned, another the next day — and stops the moment the lead replies. You build it once and it runs on every new lead after that.

Everything on this page belongs to one WhatsApp number. A sequence built on your sales number does not exist on your support number.

Before you start

  • A connected WhatsApp Business number. With none connected, the page shows Connect a WhatsApp account first and a Go to Integrations button instead of the sequence list.
  • At least one approved Meta template on that number. A step cannot send free text — see Create a template.
  • Your role includes WhatsApp access (Settings → Roles), and that number is ticked for you under Settings → Channel access. You need both.
  • Your workspace’s plan includes Auto Follow-up.

Follow-ups stays in the sidebar whether or not you can use it. If the page opens and reads Auto Follow-up isn't in your plan or No Auto Follow-up access, the plan or your role is the thing to fix — ask a workspace owner.

Steps

Open Follow-ups

In the sidebar, under Messaging, click Follow-ups.

The chip above the list names the number everything below it belongs to. It is there even when your workspace has only one number, because it is the page’s statement of what you are editing. The number you pick here is remembered: Follow-ups, AI Chatbot and Outbound control all open on the same one.

Read the standing line above the list before you build anything:

Delays run from the trigger. Sends are held to this account's business hours.

Messaging → Follow-ups. Check the chip is on the right number before you start.

The other two chips on that row are Search sequences (or press / anywhere outside a text field) and Refresh sequences.

Name the sequence

Click New Sequence in the top bar. On a phone the button in the header band reads New sequence. From an empty page, Create sequence does the same thing.

A modal opens titled New follow-up sequence.

Fill in Sequence name. It is required, and it is internal only — Shown in the sequence list. Not sent to the lead. Leave it blank and the field turns red with Give the sequence a name. while Create sequence stays disabled.

Enabled is on by default. Turning it off keeps everything you build but nothing fires: Disabled sequences keep their templates but never fire.

Name, switch, trigger — the whole sequence is three decisions.

Pick the trigger

Trigger is two tiles, and one of them has to be chosen. These two are the entire choice — there is no third.

TileWhat starts the sequence
After an outbound messageFires when a scheduled message or chatbot reply is sent to the lead.
On lead assignmentFires the moment a team member accepts a newly-assigned lead.

If another enabled sequence on this number already uses the trigger you picked, a warning block appears in the modal:

Another sequence already uses this trigger

{other name} is enabled with the same trigger. Saving this sequence as enabled will send duplicate follow-ups. Disable one of them to avoid double messages.

It is a warning, not a block. Save anyway and both sequences will message the same lead — a real customer gets two follow-ups at once, and both cards then show Duplicate trigger. Switch one of them off. Keeping a draft Disabled beside a live one is exactly how you avoid this.

Click Create sequence. The toast reads Follow-up sequence created. and a new card appears with No steps yet.

Add the first step

On the new card, click Add step. A full-screen modal opens titled New step · 1.

Enabled is on by default — Disabled steps are skipped without breaking the sequence.

Message template is required. Open it and pick from Select an approved template; each option reads the template name, then its language. Under the field:

Meta only lets businesses send pre-approved templates outside the 24-hour conversation window.

Once you pick one, a preview appears showing the template’s name, category, language and body text, so you can check you chose the right one without leaving the modal.

Template, condition, delay. A step can only send a template Meta has already approved.

Choose when that step sends

Send condition is two tiles:

TileWhat it does
If no replyWait the delay below, then send only if the lead hasn't replied.
Always sendWait the delay below, then send no matter what.

Either way, a reply ends the sequence. The contact’s row reads They replied {when} — sequence stopped and no later step goes out, so Always send decides whether this step waits for a reply, not whether the sequence survives one.

Delay before sending is a number plus a unit — Minutes, Hours or Days. The minimum is 1 of whatever unit you chose. A new step starts at 24 Hours with If no reply.

The hint under the row is the part people misread:

Measured from when the previous step was sent (or, for step 1, from the trigger event). Sends are still held to this account's business hours.

Click Add to sequence. The toast reads Step added.

Add the rest, in the order you want them

Use Add another step at the foot of the expanded card for each further message.

To move a step, use the up and down arrows on its own row — Move step 1 up and Move step 1 down on the first step, and so on down the list. There is no dragging here, on purpose. The first step’s up arrow and the last step’s down arrow are always disabled, every arrow on the page goes dead while a move is being saved, and the list only re-draws once the server confirms — so expect a short pause rather than an instant jump.

Check that it is live

The card header should now read the sequence name, a green Active pill, the trigger pill, and {N} steps.

The bottom row of the card is its live status. Before anyone has entered it, that row reads Nobody enrolled yet — it starts when a lead is assigned. or Nobody enrolled yet — it starts after an outbound message., depending on your trigger. That is the sequence telling you it is armed and waiting, not that it is broken.

An armed sequence: Active, a trigger, steps in order, and a status row that reads Nobody enrolled yet.

What the card is telling you

Click anywhere on a card’s header row to expand or collapse it. A card auto-expands when it is the only sequence on the number.

PillWhat it means
Active (green) / Disabled (grey)Whether this sequence can fire at all
On lead assignment / After outbound messageIts trigger
Duplicate triggerAnother enabled sequence on this number uses the same trigger — both will send
No steps yet / 1 step / {N} stepsHow many steps it has

Each step row carries the bound template’s name, or a red No template bound if it has none, plus a pill describing when it goes:

  • Wait 2h for a reply — an If no reply step
  • Send after 2h — an Always send step
  • Attachment — the step carries header media. You can neither see nor change that file from the step editor; it belongs to the template
  • Paused — the step itself is switched off and will be skipped
  • Language: en — on a second line, the bound template’s language

Delays are written the short way: Immediately, 45m, 2h, 2h 30m, 3d, 3d 4h. That is the delay you configured, not the time the message will land — see the business-hours row in the table at the end of this page.

A card with no steps shows Add the first step in place of the step list, with Pick an approved Meta template and a delay. Add more steps to keep nudging.

If the approved-template list fails to load, Add another step reads Templates unavailable and cannot be clicked. Refresh and try again.

Watch who is in a sequence

The status row at the bottom of each card is a button. Click it and the sequence console opens — right-docked on a desktop, a full sheet from the bottom of the screen on a phone. Esc, the ✕, a tap on the dimmed area, or your browser’s back gesture all close it.

The status row at the bottom of a card is a button, and the only way into the sequence console.

Before it opens, the row itself is worth reading. It shows, in order of importance: anything blocking the sequence, then Nobody enrolled yet …, then live numbers like {N} active · next send in 2h · {n} stuck. While it loads you see a grey placeholder; if it fails, Couldn't load activity.

A sequence that cannot send says so on its own card, and when the problem is serious the link on the right reads Fix instead of Activity. A milder warning still reads Activity, with the warning text in amber.

The five counts across the top

CountWhat it counts
ActiveEveryone currently mid-sequence, including those not yet started
CompletedEveryone who received every step
StoppedEveryone the sequence stopped for, for any reason
StuckLive, overdue, and nothing has re-queued them. Turns amber above zero
Not enrolledContacts turned away in the retention window

Only two of the five do anything when clicked: Not enrolled switches to the Not enrolled tab, and Stuck switches to the Contacts tab — note it changes tab only, it does not apply the Stuck filter for you. Tap the Stuck filter pill yourself.

Under the counts: Next send: {date}, and · {N} due in the next 24h when there are any.

The Contacts tab lists everyone, with filter pills All, Active, Stuck, Completed and Stopped, and a Search contacts chip that searches Search name or number. On All, contacts you have cleared are hidden; every other filter includes them.

Each row shows the contact’s name over their phone number, a rail of dots reading {current} / {total} — one dot per step — and a sentence saying exactly where they are.

Stop and Clear are not the same thing

Both appear on a contact row: as icon buttons with tooltips on a desktop, and under the ⋮ menu on a phone.

ActionWhat happens
Stop sending — they stay enrolledThe remaining steps never go out, and the contact keeps their enrolment record — so this sequence can never reach them again
Clear — let this sequence reach them againRemoves the enrolment record. That stops a live sequence and re-opens the contact to this sequence in future

Neither one sends a message. Use Stop when someone should be left alone for good; use Clear when you want them to get this sequence again next time, for example after you fix a missing phone number on their record.

Rows also offer Open conversation when the contact has a phone number, and Open lead when they are linked to a lead.

Toasts: Stopped following up {name}. and Cleared {name}. This sequence can reach them again.

What each contact’s sentence means

This is the fastest troubleshooting in the section — the sentence usually contains the whole answer.

SentenceWhat it means
Waiting for the first step · {when}Enrolled, nothing sent yet
Next: step {n} · {when}Mid-sequence and on schedule
Finished all {n} steps · {when}Ran to the end
They replied {when} — sequence stoppedWorking as intended — a reply always ends the sequence
Stuck at step {n} since {when}Due time passed and nothing re-queued it. Usually a processing problem, not your configuration
Cleared by {name} · can be enrolled againSomeone cleared the record, so the sequence can reach them next time. Reads plain Cleared · can be enrolled again when there is no name to show
Stopped — contact is on the block listOutbound control is blocking them — see Outbound control
Stopped — the sequence was switched offThe sequence was disabled mid-flight
Stopped — step {n} is missingThe sequence has no step at that position, so it can't continue.
Couldn't send step {n} — sequence stoppedWhatsApp refused the send. Check the step's template and the number's status.
Stopped — no phone number for this contactNothing to send to, after several tries. Add a phone number or WhatsApp ID to the lead, then Clear to enrol them again.

A stuck or waiting row often carries a second line with the reason — the last error it hit, Nothing has been retried since., or moved to business hours.

See exactly what a contact received

Click the chevron on a contact’s row to open their spine: one line per step, with a state word and a time. The words are Sent, Couldn’t send, Skipped, Next, Then, Not sent, and Overdue for a Next that is late. A line can also note moved to business hours, +2h after step 1, overdue — never re-queued, the step’s own error, or the step’s template text.

The footnote under the spine is the mental model for the whole feature:

Solid = scheduled or already sent. Dashed with ~ = worked out from the remaining delays; a late step moves everything after it. The message shown is the step’s own template — it still contains {{1}} placeholders, so it is what will be sent, not what was received.

In other words: only the next step has a real scheduled time. Everything after it is the app’s arithmetic on the remaining delays, because each step is timed from when the one before it actually sent. One late step drags the rest along with it.

When a sequence has ended, a closing note appears on the last step that happened — for example Sequence complete, They replied — sequence stopped, Contact is on the block list, The sequence was switched off, or Cleared — a new enrolment starts a fresh spine.

If nothing is scheduled at all, you get Nothing has been scheduled for this contact yet.

Clear several contacts at once

Tick the checkboxes on the rows you want and a bar appears above the list with {N} selected, a link Select all {N} matching this filter, and a button Clear {N}. The link sends your filter to the server, so the set you clear is provably the set on your screen. Select too many and the bar reads Over the {max} limit — narrow the filter and the button is disabled.

Clear {N} asks first — Clear {N} contacts from {sequence name}? — and the confirmation fills in as the server works out what you selected: Checking…, then {n} of them are mid-sequence and will stop now. if any are, and always:

They can each receive this sequence again the next time they're assigned or messaged.

This doesn't send anything.

Afterwards, the toast Cleared {N} contacts carries an Undo, and ⌘ Z / Ctrl+Z reverses it too. Undo tells you what it managed: Restored {n}., or Restored {n}. {m} had already been enrolled again and stayed cleared., or That undo window has passed. if you left it too long.

Clearing a single row does not ask for confirmation — one click and it is done.

Why someone never entered a sequence

The Not enrolled tab groups everyone the sequence turned away, with a count and a one-line reason for each group. Expand a group to see the individual leads and their owners.

GroupWhat it means
Already received this sequenceOne sequence reaches a contact once, ever. Clear their record to let it reach them again.
Owner can't use follow-ups on this numberThey have this number but not the Auto follow-up permission, so nothing starts when a lead is assigned to them.
Owner has no access to this numberThe lead's owner isn't on this WhatsApp number at all. If you didn't expect this, tell support — it usually means access wasn't written when they were added.
No sequence runs on assignmentNo enabled sequence on this number is set to start when a lead is assigned.
No phone number on the leadNothing to send to. Add a phone number or a WhatsApp username.
On the block listOutbound control is blocking these contacts.
Sending is paused on this numberNothing automated goes out while the number is paused.
This number can't message that usernameThe contact only has a WhatsApp username, and it belongs to a different business portfolio.
Bulk assignment doesn't start sequencesBy design — a bulk re-assignment would message everyone at once. Assign individually to enrol.
No official WhatsApp numberThis workspace has no official number for follow-ups to send from.

Only the Already received this sequence group has anything you can act on: each row there carries a Clear link that re-opens enrolment for that one contact. The other groups are read-only lists — fix the cause and the next assignment will enrol them.

Where a refusal mentions an Auto follow-up permission, what an owner actually grants is WhatsApp access on that person’s role, plus this number under Settings → Channel access. There is no separate Auto Follow-up switch to hand out.

The tab footer reads Only the last 30 days are kept. An empty tab is not proof nothing was turned away, which the app says out loud: Nothing was turned away recently / Only the last 30 days are kept, so an empty list here isn't proof it never happens.

Where follow-ups show up outside this page

  • On a lead’s record. The Activity feed carries the sequence as its top row: the sequence name, a state word, then · 1 of 3 sent or · next 6 Sep 18:26, plus numbered step markers you can tap for a Step {n} of {total} popover with a View template link. A lead that was turned away shows the refusal heading, a grey Not enrolled pill and the sequence name. All of it is read-only — there is no Stop or Clear on the lead record. Come back to the sequence console for that.
  • In a conversation. The thread shows an automation line with a Take over / Hand back button. Take over pauses follow-ups to that contact — see Outbound control.

If something goes wrong

What you seeWhyWhat to do
No approved Meta templates for this account.Nothing on this number has been approved yetSubmit a template on the Message Templates page and wait for Meta approval before adding it here. — see Create a template
This step's template is no longer approvedThe template the step was built on lost its approval, so the step cannot sendPick a replacement in the same modal. Save stays blocked until you do
This template has a image header but no saved media.The template needs a header file and none is storedRe-upload its header file on the Templates page so this step can send it. A step cannot carry its own upload
A “30 minutes” step arrived the next morningSends are held to the number’s business hoursNothing is wrong. The row will say moved to business hours. Change the schedule under the number’s Business hours — see Message settings
Leads got two follow-ups at onceTwo enabled sequences on this number share a trigger — both cards show Duplicate triggerSwitch one of them off
A big re-assignment enrolled nobodyBulk assignment deliberately never starts sequencesAssign those leads individually
Stopped — contact is on the block listOutbound control is blocking automated messages to themUnblock them if that was not intended — see Outbound control
Stuck at step {n} since {when}The step’s time passed and nothing re-queued it. This is usually a processing problemRefresh the list. If it persists, message support with the sequence name and the contact
Stopped — no phone number for this contactSeveral delivery attempts found nothing to send toAdd the number to the lead, then Clear the record so the sequence can enrol them again
Numbers on the page have not movedFollow-ups do not live-update; they advance on a schedule in the backgroundUse the Refresh sequences chip
A step reads On keyword · after 2hIt was built in the previous app, which could match keywordsLeave it alone. Its keywords and match rule were set in the previous app and can't be edited here. Picking either Send condition tile converts the step and drops the keyword match
Auto Follow-up isn't in your plan or No Auto Follow-up accessThe plan does not include the feature, or your role does not include WhatsApp accessAsk a workspace owner — see the prerequisites at the top of this page

Next

Last updated on