Included with Email

Automation Journeys

Driven by behaviour, not by your calendar.

A welcome one day after signup, a reminder an hour after an abandoned cart, a win-back after thirty silent days. The trigger comes from your system; we run the rest.

How to connect
EXAMPLE
TRIGGERAdded an item to cart
Wait 1 hour
EMAILYou left something in your cart
Wait 1 day · quiet 22:00 to 09:00
SMSA 10% code just for you
EXITPurchased, flow ends

Starting at

Includedno extra cost

Comes with the Email module. It has no separate limit or invoice; every email it sends counts toward your email quota. Email Marketing →

Why it exists

A campaign runs once; a journey runs always

A campaign depends on a marketer's calendar: somebody has to sit down, pick the list, write the copy and press send. The moment a customer abandons a cart does not follow a calendar. Automation is communication you set up once and that then runs by itself.

What it does

6 capabilities, one screen.

Your own events

You name the event: cart_abandoned, page_abandoned, signup, order_completed. Signalbird does not know what the event means and should not, you make the decision in your own code, we run the journey.

Multi-step sequences

Every step has its own delay, channel and content. The first step can be email, the second an SMS three days later.

Exit conditions

The "abandoned cart" journey stops when the purchase arrives. Without this the customer gets a reminder for something they already bought, the most irritating mistake in automation.

Quiet hours

An automation SMS at 03:00 loses you the customer. The step is not skipped, it is DEFERRED to the opening of the window, the sequence stays intact.

One person does not enter twice

A repeating event (page abandonment) does not push the same person into the journey every minute. If you allow re-entry, you set the cooldown.

Event data in the content

The abandoned product, the cart total, the page address, all become template variables: "{{product}} is waiting in your cart".

How it works

In 4 steps.

Build the journey

Trigger event, steps, delays.

Report the event

One SDK call from your own system.

The person enters

A contact is created if needed; data is merged into the template.

Steps run in order

The journey stops when the exit condition arrives.

Connect it in code

A few lines are enough.

This call really exists in the package. Every language and surface is on the developers page.

For developers
Event
await sb.track({
  event: 'cart_abandoned',
  contact: { email: 'customer@example.com' },
  data: { product: 'Red shoes', total: 1250 },
})

// the journey stops by itself once the purchase happens
await sb.track({ event: 'order_completed', contact: { email: '...' } })

Specifications

Does it really do that?

Steps
Up to 20 per journey
Delay
From a minute to a year
Channels
Email · SMS · Push
Tick rate
Every minute

Questions

Things you might wonder.

How does it talk to my e-commerce system?

Through a single HTTP call. Your code decides what abandonment means (say, 30 minutes of inactivity); we take the event and run the journey. That is why the same engine works in every industry.

Does journey mail need consent?

Yes. Even a "welcome" message is promotional in content and counts as a commercial message; it passes the consent gate.

What happens to people waiting if I pause a journey?

Nothing is cancelled, they wait. When you fix the journey and resume it, they continue from where they were.