A Braze Canvas Flow is an always-on, event-triggered journey that reacts to something a specific customer does, rather than a scheduled campaign sent to an entire list at once. Building one well comes down to choosing the right entry event, mapping the steps before touching the builder, setting sensible delays, branching where behaviour diverges, and testing the whole sequence before it goes live. This guide walks through a Canvas Flow build step by step, from planning to measurement.
What a Canvas Flow Is and How It Differs From a Standard Canvas
Braze organises most of its lifecycle messaging around Canvas, the platform's visual flow builder, covered in more general terms in our guide to what Braze is and who uses it. Within Canvas, a Canvas Flow is a configuration built for continuous, event-triggered journeys such as onboarding or cart recovery, distinct from a standard Canvas used for a one-off campaign with a fixed start and end date, like a seasonal promotion.
The distinction matters because it changes how the build should be planned. A standard Canvas is scoped around a calendar: it runs for a set window and then stops. A Canvas Flow runs in the background indefinitely, picking up every new customer who triggers the entry event and carrying each of them through the same sequence, whether that is one person a day or several thousand. Because a flow keeps running until someone switches it off, a flaw in the entry logic or exit conditions does not just affect a single send, it repeats for as long as the flow stays live.
Before You Build a Canvas Flow
Confirm two things before opening the Canvas builder, because a flow built on broken foundations fails quietly rather than obviously.
Check that the triggering event fires reliably. Whatever action is meant to start the flow, a sign-up, a cart update, a renewal date, needs to be tracked consistently in Braze's event data before the flow depends on it. A flow with an unreliable trigger will either miss customers entirely or fire at the wrong moment, a fault that is hard to spot after launch because the flow simply looks quiet rather than broken.
Write out the journey on paper first. Before touching the Canvas builder, sketch the sequence of steps a customer should move through, the decisions that split them onto different paths, and where the journey should end. This is the same discipline behind customer journey mapping more generally, and the Nielsen Norman Group's guidance on journey mapping is a useful reference if your team has not done this before. A flow built directly inside the tool, without this step, tends to grow more complex than it needs to be, because it is easier to add a branch in the builder than to question whether it is necessary.
Step-by-Step: How to Build a Braze Canvas Flow
Step 1: Choose the Entry Event
In the Canvas setup screen, select "Canvas Flow" rather than the standard Canvas type, then choose the event or segment entry that should trigger it. Pick an event that reflects a clear, specific moment, such as "Subscription Started" or "Cart Updated", rather than a broad attribute like list membership, since a vague entry point tends to catch customers at inconsistent stages of their journey. If more than one event could plausibly start the flow, pick the one that happens earliest and use a later decision split to route customers differently, rather than building two separate flows for one journey with two starting conditions.
Step 2: Map Each Step Against the Plan You Wrote Down
Build the flow to match the sequence sketched out beforehand rather than improvising inside the builder. Each step should be a single message or a single decision, not both. This granularity keeps the flow easy to read and easy to adjust when one step needs changing without affecting the rest.
Step 3: Set Delays Between Steps
Delays in a Canvas Flow should reflect how long it realistically takes a customer to act, not an arbitrary round number. A cart recovery flow might wait an hour before the first nudge and a day before the second, while an onboarding flow might space messages three or four days apart to give the customer time to actually use the product between prompts. There is no universal correct timing, and it is worth revisiting delays once the flow has been live long enough to show when customers tend to act unprompted.
Step 4: Add Decision Splits Where Behaviour Actually Diverges
A decision split should exist only where customers genuinely need different messages. A common use is splitting on whether a customer completed the action the flow is trying to encourage, such as finishing checkout or activating a key feature, and routing anyone who already completed it out of the remaining steps. Splitting on an attribute that barely changes the message content just adds complexity without changing outcomes, and makes the flow harder to debug later.
Step 5: Set Clear Exit Conditions
Every Canvas Flow needs an explicit exit condition beyond simply running out of steps: completing a purchase inside a cart recovery flow, cancelling a subscription inside a renewal flow, or opting out of the relevant channel. Without this, customers keep receiving messages that no longer apply to their situation, which looks careless and tends to drive unsubscribes faster than almost any other single mistake in lifecycle messaging.
Step 6: Test the Whole Sequence Before Going Live
Trigger the entry event on a test profile and confirm each step fires with the correct delay, the correct content populates from any connected data, and every exit condition removes the test profile when it should. Braze's own documentation covers the specific preview and testing tools available for Canvas, which vary slightly by account type and channel mix. Only switch the flow from draft to live once this has been checked end to end, since a quiet fault can affect every customer who enters the flow for days before anyone notices.
Common Mistakes When Building a Canvas Flow
Building the flow before the entry event is reliable. A flow is only as good as the event that starts it. Teams that build an elaborate sequence on top of an untested trigger often find, weeks later, that a meaningful share of eligible customers never entered it.
Treating every customer the same regardless of channel preference. A Canvas Flow can message across push, email, SMS, and in-app in the same sequence, but that does not mean every customer should receive every channel. If a step includes SMS, confirm consent and messaging rules are handled first, since SMS carries stricter regulatory requirements than email in most regions, and Twilio's messaging documentation is a reasonable reference for the basics involved.
Adding branches for the sake of personalisation rather than because behaviour actually differs. A flow branching on real behavioural segmentation, such as whether someone has engaged recently, tends to outperform one branching on attributes that do not change what the customer needs to hear.
Leaving the flow unreviewed once it is live. A Canvas Flow built well on day one can still drift out of relevance as the product changes. Flows left untouched for months often keep sending messages written for a version of the offer that no longer exists.
How to Measure Whether a Canvas Flow Is Working
Track completion rate, the share of customers who reach the intended outcome rather than exiting the flow or running out of steps, since this is the clearest signal of whether the sequence is working rather than just running. Alongside that, watch unsubscribe and opt-out rate on the flow specifically, because a flow that technically improves completion while quietly damaging channel opt-in is not a genuine win. General benchmark data, such as the figures Mailchimp publishes on email performance, is a reasonable outside reference for open and click rates, though a well-targeted behavioural flow should usually outperform broad campaign averages.
If completion rate stays flat despite changes to message copy, the more likely culprit is the entry event, the delay timing, or the exit conditions rather than the wording itself. Copy changes rarely fix a flow whose underlying logic is pointed at the wrong moment or the wrong audience.
A Braze Canvas Flow is a meaningful build once the planning and testing steps above are done properly, but it sits inside a wider lifecycle programme rather than standing alone. Getting the surrounding structure right, clean event tracking, a journey mapped out before it was built, and clear exit logic, matters just as much as any individual message inside the flow. If you want a second opinion on how a Canvas Flow fits alongside the rest of your lifecycle messaging, GrowNowNow's retention work looks at the full set of triggers and journeys together rather than any one flow in isolation.
Frequently Asked Questions
What is the difference between a Braze Canvas and a Canvas Flow?
A standard Canvas is typically built for a one-off campaign with a defined start and end, such as a seasonal promotion. A Canvas Flow is built to run continuously, picking up every new customer who triggers a specific event and carrying them through the same always-on sequence, such as onboarding or cart recovery.
How many steps should a Canvas Flow have?
There is no fixed number, but each step should serve a single clear purpose, either sending one message or making one decision. Too many steps crammed together becomes difficult to debug and adjust later, while a flow too thin to cover the real decision points will miss opportunities to route customers appropriately.
Can a Canvas Flow send messages across multiple channels?
Yes. A Canvas Flow can combine push, email, SMS, and in-app messaging within the same sequence, routing customers to whichever channel fits a given step. Each channel used still needs its own consent and compliance checks, particularly for SMS.
How do I stop a Canvas Flow from messaging customers who already completed the goal action?
Add an explicit exit condition tied to the relevant event, such as a completed purchase or a cancelled subscription, so the flow removes that customer from any remaining steps. Test this on a sample profile before going live, since it is one of the most commonly missed parts of a Canvas Flow build.
How long should I wait before judging whether a Canvas Flow is working?
Long enough for a meaningful number of customers to pass all the way through the sequence, rather than after a single week. Completion rate and opt-out rate are more reliable signals once there is enough volume to see a stable pattern rather than noise from a small early sample.