Features
Sequences and flows
How to set up marketing flows that listen for Cadence events and send messages to customers.
Sequences are the flows, automations, and journeys you create in your marketing platform to send messages when Cadence events arrive. Cadence provides the trigger and data; you design and send the messages.
Why you need sequences
Connecting Cadence to your marketing platform is only half the setup. Without flows listening for cadence_prediction events, events arrive but no messages are sent. You must create at least one flow before your store goes live.
Recommended flow structure
Create one flow per prediction type for clear reporting and tailored messaging:
| Flow | Trigger condition | Message focus |
|---|---|---|
| Replenishment | prediction_type = due_to_replenish |
“Time to restock” with product and ConvertCart link |
| Lapse prevention | prediction_type = about_to_lapse |
Win-back message with optional discount |
| Cross-sell | prediction_type = primed_for_cross_sell |
Introduce complementary product |
| Subscription upsell | prediction_type = primed_for_subscription |
Present subscribe-and-save option |
You can start with just replenishment and lapse prevention flows, then add cross-sell and subscription flows later.
Building a flow step by step
These steps use Klaviyo as the example. Other platforms follow a similar pattern — see platform-specific guides in Integrations.
1. Create a new flow
In Klaviyo: Flows → Create flow → Create from scratch
Name it clearly, e.g., “Cadence — Replenishment”
2. Set the trigger
Choose Metric as the trigger type. Select the metric cadence_prediction.
Add a trigger filter:
- Property:
prediction_type - Operator: equals
- Value:
due_to_replenish(or the type for this flow)
3. Design the email
Create an email within the flow. Use event properties for personalization:
| Property | Use for |
|---|---|
customer_first_name |
Greeting — e.g. “Hi [first name]” using Klaviyo’s personalization tag |
product_name |
Product mention — e.g. “Your [product name] is running low” |
cart_url |
Primary CTA button link |
product_url |
Secondary link to product page |
Example email structure:
- Subject: “Time to restock, [first name]” — use Klaviyo’s
first_namepersonalization with a default fallback - Body: Mention the product, explain why they’re receiving this (based on their purchase history)
- CTA button: “Reorder now” → links to
cart_url
4. Set the flow live
Change the flow status from Draft to Live. Events will trigger the flow starting at the next daily delivery window.
5. Repeat for other prediction types
Create separate flows for lapse prevention, cross-sell, and subscription upsell, each filtered on the appropriate prediction_type value.
Flow timing considerations
Cadence delivers events once daily in a batch. Your flow sends the message when the event is received (or after any delay you configure in the flow).
Recommended approach:
- Send replenishment emails immediately on event receipt
- Send lapse prevention emails immediately (urgency matters)
- Cross-sell and subscription upsell can have a short delay (1–2 hours) if desired
Avoid:
- Long delays (24+ hours) — the prediction context is time-sensitive
- Sending multiple emails for the same prediction type — use flow filters to prevent re-entry
Using profile properties in campaigns
Beyond event-triggered flows, you can use Cadence profile properties in campaigns and segments:
- Segment: “Customers where
cadence_due_to_replenishis true” → send a batch replenishment campaign - Dynamic content: Insert
cadence_replenishment_product_namein any email template - LiveBlock: Uses profile properties to render per-recipient content (see LiveBlock)
Profile properties update daily alongside event delivery.
SMS flows
If you use Attentive or Postscript alongside (or instead of) an email platform:
- Create a journey/automation triggered on the
cadence_predictionevent - Filter by
prediction_typeas with email flows - Keep SMS copy short — product name, urgency, and ConvertCart link
- Include the
cart_urlas the link in the text message
See Attentive and Postscript integration guides for platform-specific steps.
Testing your flows
Before going live:
- Connect your marketing platform in Cadence
- Create your flows and set them to Live
- Ask the Cadence team to enable your store (or wait for the enablement call)
- After the first event delivery, check your marketing platform to confirm flows triggered
- Verify the email/SMS content, links, and personalization render correctly
Common mistakes
| Mistake | Fix |
|---|---|
| Flow trigger uses wrong event name | Must be exactly cadence_prediction |
| Flow is in Draft status | Change to Live |
Missing prediction_type filter |
Flow triggers for all event types — add a filter |
| CTA links to product page instead of ConvertCart | Use the cart_url property for the CTA |
| No flows created at all | Events arrive but no messages send — create at least one flow |
Where to go next
- Events and flows — the event model and properties
- Klaviyo integration — Klaviyo-specific flow setup
- Enablement and go-live — final checklist before launch