Send Flows & Recurring Schedules
Build reliable follow-ups with engagement windows, waits and recurring audiences.
Open interactive lesson and quizWhat you will learn
- Connect and validate email paths
- Distinguish a wait from an engagement window
- Configure safe recurrence and re-entry
A customer clicks your welcome email shortly after delivery. You need to avoid sending an unnecessary reminder, while continuing to enroll new customers every day.
Lesson 1
Build a connected path
A Send Flow begins at Audience entry, passes through email, wait or condition steps, and finishes at End. Select a step to configure it. Add step inserts after the selected linear step; inspect both outgoing branches when inserting a split. Auto arrange and zoom help keep the canvas readable. Every step must be connected, every split needs Yes and No paths, and paths cannot loop.
A condition must reference an earlier email that was sent on every path to that condition. An email on a sibling branch cannot supply a meaningful engagement test. The selector offers valid earlier sends. A flow requires Ready emails, access to its audience and campaign, and an operational background processor before activation.
Lesson 2
Wait before deciding, not after
A Wait pauses a recipient for a duration. A split with a zero-minute engagement window checks the currently observed event immediately. If it takes No, adding a Wait later on that branch does not undo the decision when the customer clicks. This explains the common mistake of sending a reminder even though a person eventually interacted.
Set Wait for engagement on the split to give the selected email a response window measured from its send time. A matching event takes Yes on a processing check; without one, the recipient remains at the split until the window expires, then takes No. You can instead place a regular Wait before an immediate split if you want everyone assessed at one later point. Choose the behavior intentionally.
Lesson 3
Protect the reminder itself
A customer may interact after the split chooses No but before a queued reminder is sent. Enable Skip this email if already engaged on the reminder, choose the original send step and select Clicked or Opened. The engine checks again immediately before sending and moves to the next step when the condition is satisfied.
Clicks require tracked links in an actual flow email. Opening or clicking a test message does not affect a recipient in an active flow. Opens are also affected by blocked images and privacy tools, so a meaningful tracked click is often the better signal. A click received after the provider has already accepted the reminder cannot recall that message. Use generous observation windows for real campaigns.
Lesson 4
Recurring schedules without duplicate runs
Choose daily or weekly recurrence, an interval, total number of runs and a re-entry policy. The initial run counts toward the total. Each later occurrence reevaluates current records using the targeting criteria and email versions approved at activation. New recipients only excludes previously enrolled addresses in that flow; All matching recipients deliberately allows the same person to enter again.
Daily intervals are fixed multiples of 24 hours and weekly intervals multiples of 7 days, anchored to the selected start time. Runs never overlap; missed occurrences are skipped instead of creating a burst of catch-up emails. Pause suspends processing and Stop ends future occurrences. Trial expiry and per-day sending limits continue to apply. The processor normally checks every five minutes, so waits and scheduled times are earliest processing times, not exact delivery promises.
Lesson 5
Split paths consistently
A Random split allocates contacts to Yes and No by the chosen percentage. The assignment is derived from the flow, record and step identifiers, so a retry follows the same path. Connect both branches and use Simulate with a real matching record or a sample before activation. A sample assumes eligibility; real-record simulation checks audience membership and global suppression. Audience entry and exit, schedule, and authenticated API entry remain separate trigger modes. Use the branch labels to document your intended treatment and inspect execution history after activation. A percentage is an allocation rule, not a guarantee that a small audience will produce exactly that proportion. Check both paths for a valid ending before turning on the flow.
Lesson 6
Route contacts by their audience fields
Add a Field decision to a Send Flow when the Yes and No paths should depend on a Contact field or a related object available in the selected audience. Choose All rules for AND or Any rule for OR, then set each comparison. Dates and numbers can use greater than or less than; empty values take the No branch for those comparisons. The decision uses the values captured when the contact entered the flow. Edits made to source records afterward do not change that contact’s current flow path. Connect both branches, simulate a real matching contact to inspect the chosen path, and duplicate the flow if targeting changes after activation. Only fields available through your approved audience and object permissions can be selected.
Lesson 7
Enter a flow from a published form
Choose Published form submission as the Send Flow entry trigger, then select a published form page. When that form saves a record, SupaChrome checks the approved audience and enrolls the matching record once for that page and record ID. The form does not automatically grant email permission. Suppression is checked before the email is sent, and records that do not match the audience do not enter. Test with a contact and address you control, then inspect the execution and subscriber history. Map fields in the page editor before publishing and check that the chosen audience object matches the record the form creates. A rejected mapping should be repaired in Pages; it should never silently enroll a different contact. Keep the form purpose and consent wording clear for visitors.
Lesson 8
Enter after an order
Choose New purchase / order as an entry trigger and activate a flow with a qualifying Order or Contact audience. After a new order is saved, SupaChrome checks that audience and enrolls its matching Order or linked Contact once. A repeated external order ID does not create a second order or flow entry. The actual email still checks global and topic suppression immediately before delivery. Simulate with an eligible record and inspect execution status before sending broadly. Make sure the order source links its Contact in the same business unit, and choose audience criteria that represent the purchases you mean to follow up. An order with no matching audience member does not enter. Review the generated execution before using this for time-sensitive customer messages.
Lesson 9
Notify the flow owner
Add Notify owner after a decision or update step to create an in-app notification for the user who activated the flow. Write a short activity name and message; recipient-field tokens can personalize it. The action ledger prevents a worker retry from creating a second notification for the same person and step. Simulate first to see the planned message without creating a notification. This is an internal activity alert and does not send an email to the customer. Keep the message concise and avoid including sensitive personal data that the recipient does not need. Check the flow history when an alert is missing: an earlier failed step can prevent this action from running.
Lesson 10
Call an external webhook from a flow
Use Call webhook to POST eventId, flowId and recordId to a public HTTPS endpoint. The activating user must retain Manage integrations permission. SupaChrome retries temporary network and server errors with the same Idempotency-Key, records successful actions once, and stops after repeated failures. A 4xx response fails the step for review. The simulator shows the destination without sending a request. The receiving system must secure its endpoint and deduplicate by eventId; configure a trusted gateway when the destination requires additional authentication. Test the endpoint with a nonproduction record and inspect response logs on both sides. Keep credentials on your gateway and restrict the accepted payload shape. A timeout may mean the receiver processed the event, which is why its own deduplication matters.
Lesson 11
Enter on a date or record change
Choose Date / birthday / anniversary to select an approved audience date field, the local timezone, a day offset and once or annual occurrence. The worker checks matching records during the local calendar day. Annual February 29 entries only run in leap years. Choose Matching record updated to enroll when a currently matching primary audience record changes after activation. The activation time forms the baseline, so old edits do not fire. Both modes use event IDs to prevent retries from duplicating an entry; suppression remains in force at send time. Keep the audience narrow enough for event scanning, test with a record you control and inspect Activity & errors for a failed check.
Lesson 12
Control event re-entry
An event-driven Send Flow can allow every new event, block a Contact after the first entry, or allow re-entry after a chosen number of days. A maximum entry count adds another limit. These settings use the recipient email enrollment ledger across executions and are enforced in the same database write as an entry, so simultaneous API calls cannot bypass them. A repeated event ID remains a retry of the same request. Scheduled audiences use their separate New recipients only or All matching recipients recurrence rule. Simulate with a matching Contact before activation; simulations do not send or change production records.
Lesson 13
Wait until a date and inspect a contact path
Wait until a date pauses a contact at the step until the selected time in the flow timezone. A past date continues immediately. It is a fixed instant, so a recurring flow entered after that instant continues without waiting. Use Wait duration for an interval measured from each entry. The simulator shows the planned date without changing data. After activation, Flow history & monitoring summarizes entries, outcomes, deliveries and engagement. Open a contact in the latest entries list to inspect the persisted entry, field updates, email delivery and events; error text helps identify a failed or suppressed step.
Lesson 14
Welcome contacts when they are created
Choose Contact created as the entry trigger with a Contact audience. Only contacts created after the flow is activated can enter, and they must match the approved audience when the worker checks them. Existing contacts form the activation baseline. The trigger uses each new Contact ID and creation time to prevent a worker retry from enrolling the same contact twice. A suppression or subscription preference can still block a later email. Simulate with a sample, then create a test Contact that matches the audience and inspect Flow history & monitoring. The entry scan handles up to 1,000 currently eligible records per flow; narrow the audience if it reports a size error.
Lesson 15
Enter one contact manually
Choose Manual entry for a Send Flow, save, review and activate it. Open Simulate and select an actual matching record, then use Enroll selected contact. This live action puts that record into the flow, where queued activities can send email. A sample record cannot be enrolled. SupaChrome checks the approved audience and business unit again on submission, records the enrollment, and uses the same suppression and re-entry controls as other event flows. Repeating the same request ID does not create a second entry. Review the contact timeline afterward to confirm what happened. Keep the audience below 1,000 eligible records for this entry method.
Lesson 16
Review saved flow drafts
Each Save draft now records a version of the flow graph, entry settings and audience selection. Open Version history to inspect the saved revisions. In an editable draft, Load into draft retrieves the earlier graph without changing the database; save it to create a new version. A running or completed flow stays read-only. Duplicate it first if you need a new editable flow, and review the new audience and email versions before activating. Existing executions retain their approved snapshot even when another draft is created. Draft history is limited to the latest 100 entries in the editor and follows business-unit access.
Lesson 17
Create an internal follow-up task
Add Create task to a Send Flow when a recipient needs human follow-up. Give it a short title, optional description, priority, and days until it is due. The task is assigned to the user who activated the flow and linked to the qualifying audience record. Personalization fields from that audience can appear in the title and description. Task creation requires permission to create Tasks, including when a queued step runs later. The action ledger prevents a worker retry from creating a second task for the same recipient and step; the flow timeline records the result. Simulate first to inspect the planned task without changing any records.
Lesson 18
Start from a flow template
The Flow template picker prepares connected draft steps for welcome, nurture, post-purchase, birthday, onboarding, engagement follow-up and re-engagement paths. Applying a template replaces the current canvas, so save any edits you want to retain first. Pick the correct audience and Ready emails. A birthday flow needs your selected date field; a nurture flow needs a field rule for its Yes branch. Save, simulate a matching contact, review, then activate. Templates do not enroll recipients on their own.
Lesson 19
Duplicate a step while drafting
Select a linear activity in a draft Send Flow and choose Duplicate step to insert an editable copy immediately after it. SupaChrome reconnects the next step and gives the copy a distinct activity name. Check its email, timing, webhook destination or field update before activation. Split steps have separate Yes and No paths, so build those explicitly instead of copying a branch without reviewing its routing. Save the edited draft, run the simulator with a controlled contact, and check both routes in the review panel before activation.
Lesson 20
Exit a flow when an audience changes
Turn on Exit when a contact leaves this audience if later activities should stop after the qualifying record no longer matches. Before each queued step, SupaChrome checks the current approved audience rules for that same business unit and record. An exit is recorded in the contact flow timeline and audit log; an email already sent remains in history. This setting is unavailable for Audience leaves entry, since that entry begins after the person has already left. Simulation uses the currently matching contact, so a future record change can still alter the live path.
Lesson 21
Stop when a goal is reached
Enable Stop when a goal is reached in Flow settings and add one or more field rules from the approved audience paths. All uses AND; Any uses OR. SupaChrome reads the current record and related fields before each queued activity, including after a wait. When the rule matches, the contact exits as Converted without running the pending step; sent emails remain in history. The goal appears in monitoring, the contact timeline and audit log. The simulator evaluates fields as they are now and cannot predict later record changes, so review the rule before activation.
Lesson 22
Enter on campaign engagement
Choose Campaign email opened or clicked as the entry trigger, select a campaign and choose one event type. After activation, a new tracked event from a non-test email in that campaign can enter a currently matching audience contact. Events from other business units, campaigns and event types do not qualify. A repeated event ID is ignored; re-entry limits apply to later events from the same contact. Opens may include image fetches by mail clients and clicks may include link scanners, so use Clicked when stronger intent is needed. Simulate a contact to inspect the path without creating an event, then monitor the contact timeline after a real tracked interaction.
Lesson 23
Set active days and hours for a flow
In Activity window, optionally set start and end dates, choose local days, and limit activity to a time range of at least one hour. The flow uses its selected timezone, including daylight-saving changes. Event entries before the start or after the end are blocked. Contacts already queued wait until the next permitted local window; after the end date they exit without running another step. The simulator shows the next window using the current time, while real waits are checked again by the worker. Keep at least one active day, save the draft, review, and test with a controlled contact before activation.
Lesson 24
Enter when an order is fulfilled and handle action failures
Order fulfilled is a separate Send Flow entry from Order placed. A new order saved as Fulfilled or a later successful transition from Placed to Fulfilled checks the approved audience and enrolls a matching Order or linked Contact once per order. For Update field, Create task, Notification and Webhook actions choose whether an error fails the contact, records a skip and continues, or exits the contact. Webhook retry attempts reuse the same event ID and idempotency key. A permission loss pauses execution rather than bypassing access controls. Inspect the flow timeline and audit log after a failure.
Practice · Test a click-aware follow-up
- Create a flow using a small audience of consenting addresses you control. Choose a campaign and a Ready email.
- Apply the Follow-up template and choose the intended first and reminder emails.
- Set the engagement window to 10 minutes. Keep Yes connected to End and No to the reminder.
- On the reminder, enable Skip this email if already engaged and select the first email and Clicked.
- Review and activate. Click the first email within the window and confirm the reminder is skipped.
- Duplicate the tested flow, select daily recurrence and New recipients only, then review before activating.