Branching and timing
Not every contact should follow the exact same path through a journey, and not every step should happen the instant the journey reaches it. Branch steps split contacts onto different paths based on a condition, and timing steps pause the journey for a while before it continues. Together they let you build journeys that feel personal and well-timed instead of one rigid sequence that fires the same way for everyone.
The branch types
- If / Else — splits contacts two ways based on a condition you set, such as a field value, a tag, or whether they're in a segment. Contacts who match go down the "true" path; everyone else goes down the "false" path.
- Switch — like If / Else, but for more than two outcomes. You set up several conditions, and each contact follows the first one they match. Anyone who doesn't match any of your conditions falls through to a default path, so it's worth deciding what should happen there too.
- A/B split — splits contacts randomly by a percentage you choose, so you can test two or more versions of what happens next (for example, two different subject lines) and compare results.
- Engagement split — splits contacts based on how they engaged with a previous email or text — for example, opened, clicked, or bounced — each outcome going down its own path, plus a path for contacts who didn't respond at all. Use it right after a send step to react differently depending on how someone did (or didn't) engage.
- Merge / Join — brings two or more branches back together into a single path, so the journey continues the same way for everyone regardless of which branch they took earlier.
The timing types
- Wait — pauses the contact's journey for a fixed amount of time (for example, two days) before moving on to the next step. A wait of zero is allowed and means "no delay" — the contact moves straight on, which is how a step that should happen immediately is expressed.
- Wait until — pauses until a specific date, time, or condition is met, rather than a fixed length of time. Useful for waiting until a renewal date or until a field changes.
- Send window — restricts when a later send can go out, so messages only deliver during hours you allow (for example, weekday mornings) even if the journey reaches that step outside those hours.
Steps
- On the journey canvas, open the step palette and switch to the Branch or Timing category, depending on which kind of step you want.
- Drag the step onto the canvas, or click it to drop it in, then connect it to the step before it.
- Click the new step to open its settings panel.
- For a branch step, set the condition (or conditions, for Switch) that decides which path a contact takes, or the percentage split for A/B split.
- For a timing step, set the wait duration, the condition or date to wait until, or the allowed hours for a send window.
- Draw a connection out of each branch path (or out of the timing step) to whatever should happen next. If you want branches to reconnect later, add a Merge / Join step and connect each branch into it.
- Your changes save automatically. Publish the journey when you're ready for it to run for real contacts.
Tips
- Give each branch a clear condition before you connect anything after it — an unfinished condition can leave contacts stuck with nowhere to go.
- Use Merge / Join when branches should end up doing the same thing afterward, so you don't have to duplicate the same steps on every path.
- A Wait step is the simplest way to space out messages so a journey doesn't feel like a burst of activity all at once.
- For a checkbox form field (like an email-consent opt-in), use the is checked / is not checked operators rather than "is set". A checkbox always submits a value — ticked or not — so "is set" would match either way; "is checked" is what actually tells the two apart.
FAQ
Q: What happens to a contact while they're waiting on a Wait or Wait until step? A: They stay enrolled in the journey and simply haven't reached the next step yet. They'll continue automatically once the wait ends or the condition is met.
Q: Can I use a send window without a Wait step? A: Yes. A send window only restricts the hours a send can go out — it doesn't add a delay on its own, so use a Wait or Wait until step first if you also want to hold the contact for a specific amount of time.
Q: My If/Else on a consent checkbox always takes the same path — why? A: A checkbox reports a value whether or not it's ticked, so an "is set" condition matches both. Pick the checkbox field and use is checked (or is not checked) instead — that reads the ticked/unticked state itself, so an unchecked box correctly follows the Else path.