Using Lifecycle Optimizer

With Lifecycle Optimizer, automate individualized messaging to customers across channels using insights and predictions from the Sailthru customer profile to deliver timely, customer-specific communications.

Seamlessly interact with customer profiles, other Sailthru services, and third-party platforms, making Lifecycle Optimizer (LO) a powerful hub for all of your marketing strategies.

Using the Lifecycle Optimizer visual interface, create Flows–user pathways with if-then logic. On your list of flows, view real-time reporting of how many users entered and exited each one.

Example Flows

Simple Welcome Series

Simple welcome flow with a wait step Entry User added to list
Action Send Thank You email
Wait 3 days
Action Send Follow-Up email

Welcome Series with Engagement Check

This flow adds a check to the welcome series. See if your subscriber clicked the email you sent before following up. Entry User added to list
Action Send Thank You email
Wait 3 days
Check Did user click Follow-Up email? If so…
Action Send Follow-Up email.


A purchase kicks off this flow. Includes a wait step and a check step. Entry User made purchase
Wait 7 days
Check Did user purchase again since flow began? If so…
Action Send Follow-Up email

Flow Components

Lifecycle Optimizer flows consist of five step types:

  • Entry – An activity that automatically starts a flow for a user.
  • Wait – Time between steps.
  • Check – Criteria to determine whether to continue the user’s progression in a flow, or determine which of multiple subsequent step paths (branches) the user should reach.
  • Action – An action to take for this user, whether internal (for example, setting a custom field value) or external (for example, sending an email).
  • Test – Users are split randomly into two or more test branches on which you may create additional steps before the test branches rejoin.

Only one activity can start a flow, and you can freely add multiple waits, checks, actions, and tests in any order. You can learn more about each step’s options in the Step Glossary.

The Lifecycle Optimizer Interface

To access Lifecycle Optimizer in My Sailthru, under the Communications menu, click Lifecycle Optimizer.

The interface has two pages – the List page and the Builder page.

  • The List page displays all flow names and their current metrics. For details on each, see Flows List.
  • The Builder page lets you create and modify a flow. Access the Builder from the List page by clicking New Flow or clicking the name of an existing flow.

Build a New Flow

  1. From the List Page, click New Flow.
  2. Click the Flow Name at the top left to change the default name. Edit the name, then press Enter.
  3. Follow the instructions in the Configure Your Flow Steps table below to add and configure your steps.
  4. At the top-right, click Save.
  5. To open the flow to users right away, under Status, click Draft. From the Status drop-down, select Active. Then, click Apply. For more information, see Flow Statuses to Activate, Deactivate, or Delete.
Step Type Options How To
A user action or other event that starts the flow
  • Transactional Email
    when a given template is sent, clicked, or opened.
  • List is joined from a User API call, a Hosted page, or an email link using either signup_confirm or sailthru_lists.
  • Purchase is made, with optional filters for value and quantity range, user’s first-ever purchase, or specific values in custom item fields.
  • Cart Abandoned
  • Custom Event (API) with optional custom field presence or value

For more information on each option, see the Step Glossary.

  1. Click New Flow.
  2. Click Entry: Not Set.
    Screen Shot 2017-02-09 at 2.52.08 PM

  3. Select an option from the Start this flow when… menu.
  4. Specify the additional options below the menu. For example, the name of the template, list, or API event. For more details, see the Step Glossary.
What to do when the prior conditions are met
  • User Profile Custom Field (a.k.a. var) values–set, increment/decrement, or delete
  • Send Email using a specified transactional template
  • Add to a List
  • Remove from a List
  • Send a mobile Push Notification

For more information on each option, see the Step Glossary.

  1. Click the default “Action” placeholder if its location meets your need. Otherwise, on the arrow that will precede this new step, hover over the circle circle-retina or plus plus-retina icon and select Action.
  2. Next to Do this…, select an action, then specify the action’s parameters below. For more details, see the Step Glossary.
Optional delay before the next action.
Number of minutes, hours, days, weeks or months.
  1. Click the default “Wait” placeholder if its location meets your need. Otherwise, on the arrow that will precede this new step, hover over the circle circle-retina or plus plus-retina icon and select Delay.
  2. Enter a wait time, for example:
    Wait for: 2
    Unit: Days
  3. Optional: Following the initial delay, you can select a time of day for the customer to move to the next step in the flow. For example, “Wait 6 hours and move to the next step when it’s 10 a.m.” will hold the customer for 6 hours and wait an additional period of time until it’s 10 a.m. in your Sailthru account’s time zone.
Criteria to determine whether to continue the user’s progression in a flow, or determine which of two subsequent step options (branches) the user should reach.
Check one of the following.

  • User’s optout status
  • Purchase made
  • Site visited date
  • Email clicked
  • Email opened
  • Custom field (var) presence, value, or date (a relative or specific date or date range)

For more information on each option, see the Step Glossary.

  1. Click the default “Check” placeholder if its location meets your need. Otherwise, on the arrow that will precede this new step, hover over the circle circle-retina or plus plus-retina icon and select Check.
  2. Select a Check type from the drop-down to begin defining the criteria for determining whether a user should proceed to the branch marked “Yes” below.
  3. Set additional parameters specific to the type of check. For more details, see the Step Glossary.
  4. Proceed to add additional steps to the “Yes” branch for users who meet the criteria of the check and additional steps to the “No” branch for users who do not. (You can also choose to add no further steps under Yes or No. Users who reach the branch that contains no further steps will exit the flow.)
  5. If you need to swap the Yes and No branch, click Yes or No.

For more information on adding and removing checks and their branches, see the section Branching Based on Results of a Check.

Create a section of your flow with multiple test branches.
Create split-test branches (up to 5)–for example, an A/B-split test–and specify the percentage of users who will enter each branch.For more information on tests, see the Step Glossary.
  1. On the arrow that will precede this new step, hover over the circle circle-retina or plus plus-retina icon and select Test. Two default test segments are displayed with a 90%-10% split, and their branches automatically rejoin after any steps you may add to each one.
  2. To add an additional test branch, click Add Segment.
  3. To modify the percentage of your audience that will enter each branch, click the percentage numbers to edit them or drag the slider(s) between them toward the left or right.
  4. Add steps to each test branch, as needed.

For more details, see the Step Glossary.

If default steps or steps that you have added remain unconfigured – gray with a dotted-line border – you can Save the flow, but you will not be able to Activate it until you delete or configure these steps.

Delete a Step

To delete a step, hover over its shape on the builder canvas, then click the X in the top-right corner.

You cannot delete a Check or Test that has steps following from more than one its branches. To learn more about deleting a Check or any of its branches, see the section Deleting a Check with Steps in Multiple Branches. To learn more about deleting a Test or any of its test branches, see Tests in the Step Glossary.

Flow List

When you open Lifecycle Optimizer, you’ll see your list of flows, with information about each. Click each column header to sort the entire list by that column. Click again to sort in the reverse order.

Flow list with added filter types

Click the image to see full-size

Filter Options:

  • Search for a specific flow in the Flow Name search box.
  • View flows by status with the Status drop-down.
  • Filter by Entry type. For more information on Entry types, see the Lifecycle Optimizer Step Glossary.
  • Filter flows by the Template used if you include an email template in your flow.
  • The Metrics drop-down lets you choose a time span for the displayed Entries data:
    • Today, Past 7 Days, Past 30 Days, Past 90 Days, or All Time.

Table Columns:

  • Flow Name, which you choose when creating the flow and can change any time. Click a flow’s name to view or modify its configuration.
  • Status that you have selected for the flow: Active, Inactive, Draft, or Finishing. (For details, see Flow Statuses to Activate, Deactivate, or Delete.)
  • Created date.
  • Entries – the number of customers who entered the flow in the time span chosen from the Metrics drop-down.
  • Metrics link – For each flow, use this link to open the flow with overlaid, realtime metrics enabled.

Re-entry Settings

You can restrict users’ entries into a flow using the flow’s “Re-entry” settings. This allows you to restrict, or cap, the frequency that a user may participate in a given flow when it’s active.

The Builder toolbar displays a flow’s re-entry status. Click on the status to open the configuration panel.

The re-entry settings selector box

You can control three levels of re-entry behavior for users:

  • “Allow users to enter this flow more than once” (enabled by default)
    • When disabled, users can only participate in a flow one time ever.
    • Example use: Prevent users from receiving a welcome series more than once.
  • “Block users from entering this flow while already participating in it”
    • When enabled, users will not be allowed to enter the flow if they are already active within it, such as holding in a “Wait” step.
    • Example use: Prevent multiple, simultaneous post-purchase series.
  • “Limit entry into this flow to once every …”
    • Set the time period that must elapse after a user enters a flow before they’re allowed to re-enter the flow.
    • Example use: Only send incentive messages, at maximum, once every 3 months.

To configure re-entry settings

  1. Click the re-entry status in the Builder toolbar.
  2. Configure your settings as desired.
  3. Apply the settings to the flow’s current state.
  4. Save the flow to confirm the changes, whether the flow is draft, active or inactive.

Changes to re-entry settings can be made while a flow is active, and once saved, will only affect new entry attempts. If you enable “Block users from entering this flow while already participating in it” on an active flow, users with multiple presences in the flow will not be removed from the flow.

Flow Statuses to Activate, Deactivate, or Delete

A flow has one of four statuses at any given time: Draft, Active, Inactive, or Finishing. New flows not yet activated begin in Draft status. You will change the flow’s state as needed by clicking the status name at the top of the flow builder. The following diagram describes the four statuses and when they are available.
Diagram describing the Lifecycle Optimizer flow statuses

  • You may only delete flows in the Draft state. To delete a Draft flow, click on the “Draft” status in the toolbar. From the pop-up Status selector box, click the “Delete” option followed by the “Apply” button.

    Lifecycle Optimizer Status selector box.

  • Setting a flow to Active turns on the flow immediately. All qualifying Entries will enter into the flow. Setting a flow to Inactive immediately terminates the flow. Entries will not be allowed, and all users in the flow will immediately exit and no longer experience any actions from the flow. Reporting will persist for the flow, but will no longer update.
    • You can activate or deactivate a flow at any time. Re-activating a previously activated flow will not automatically add users back to the flow; they would need to re-enter by again meeting the Entry criteria (for example, a new email click).
    • If reactivated, a flow’s metrics will reflect an aggregate of all past active sessions and the current session. To reset metrics, Save the flow as a new flow before activating the new copy.
  • If you want to discontinue new entries in a flow, but allow its current users to continue through the flow, you can set the flow to Finishing. You cannot edit a Finishing flow; you can only set it to inactive. 

Editing or Duplicating Flows

When a flow is active, you can easily change basic settings within an existing step and click Save to update the flow-in-progress. Structural changes – adding or deleting steps, or changing the type of the step (for example changing Action “Send Email” to Action “Add to List”) – require that you save the flow as a new flow.

When you save an active flow as a new flow, you can simultaneously mark the prior, active flow as “Finishing” or “Inactive” to prevent double flow entries. Or, you can leave the original flow active and create a new inactive copy to modify as needed.

Flow Status Description Changes Allowed
Draft Flow is not running and has never been made Active. Users cannot enter. All changes allowed.
Inactive Flow is not running. Users cannot enter. If flow was previously active, users were removed upon it being marked inactive, preventing any further action. All changes allowed.
Active Flow is running, allowing new entries, and taking specified actions. When you click Save As within an active flow, you can choose whether to activate the new flow on save and whether to deactivate the original flow on save.

  • If deactivating the original flow, you can decide to allow current users in the flow to finish, or to immediately exit all users who are currently in the flow.
  • If you choose not to deactivate the original flow, you will be prevented from marking the new flow as Active to prevent duplicate messaging and other actions.

If you edit the settings of an existing step without changing the type (if an action or check) and merely want to update the current flow

  • You can Save those changes and keep the current flow active. The changes are immediately reflected upon Save.
  • For example, you can change a template name or custom field value.

If you make a structural change (adding or removing steps, or changing their type)

  • Only Save As is available. (See “Transitioning to a new flow when a structural change is made.”)
  • For example, if you change an action from “Send Email” to “Set Custom Fields”, this is a change to the action type. You can only Save As after such a change, then choose to transition to using the new flow.
Finishing Flow is running but no longer allowing new entries. Users already in the flow will proceed and experience any applicable actions. No changes allowed. You can only set flow to “inactive”.

Tip: Remember you can always change the creative content of a template using the template editor. This will immediately update for all sends of that template. Alternatively, you can copy the template and select the new template within Lifecycle Optimizer. Neither of these changes require you to activate a new flow through Save As.

Note: Changes to a “Wait” length in an active flow will not affect users currently in that wait step. Users in the wait step will observe the wait length they were assigned when they entered the step. All users new to the flow, or who have not yet entered the wait step will observe the new wait time.

Making a change to a step within an active flow

  1. Open the active flow in the builder view
  2. Modify step attributes only. These include Templates, Custom Field names and values and “Check Since …” selections. Making a structural change will disable the “Save” functionality.
  3. Select “Save” from the upper-right in the toolbar. All users in the flow will receive the new version of the flow

Transitioning to a new flow when a structural change is made

Follow these instructions if you need to make a structural change to an active flow-a change that involves adding or removing steps, which disables the Save option. You’ll make the change to the current flow, then select Save As. The original flow will remain intact. When you set the first flow to Finishing and the new flow to Active, users will stop entering the old flow and start entering the new flow.

  1. Open the active flow in the builder view
  2. Modify the flow to your liking
  3. Select “Save As” from the upper-right in the toolbar
  4. Give the new flow a unique name
  5. Use the options to activate the new flow and change the existing flow to “Finishing.” This will discontinue new entries to the existing flow, while allowing its users to finish proceeding through. The new flow will receive all new entries.

Branching Based on Results of a Check

When you add a Check step to a flow, you have the ability to:

  • Define two paths: one for users who match the check’s criteria and another for those who do not, or
  • Define multiple paths, where each will be followed based on the user’s custom profile field (a.k.a. user var) matching a particular value


Yes/No Check
Multi-Branch Custom Profile Field CheckLifecycle Optimizer multi-branch

Configuring “Yes” and “No” Branch Responses

Under any Check, you can click the Yes and No labels to swap the path users will follow if they do or do not meet the criteria.

  • Users who meet the check’s criteria will always follow the Yes branch.
  • Users who do not will always follow the No branch.

Note: Switching which branch is the Yes or No branch is among the changes you are permitted to make within an Active flow (selecting to “Update” the flow without using “Save As…”). However, this will not switch the metric totals for the steps in either branch, and is not recommended.

Multi-Branch Custom Profile Field Checks

Most Check configurations offer a simple Yes/No evaluation to determine which ensuing branch the user should experience. However, when checking against a custom profile field, you may wish to specify any number of potential matching values, each resulting in its own branch.

If the user’s var value fails to match any of those that you have specified, the user moves into the default Other/No Value branch. This includes cases where the field exists yet has no value (i.e. a null value).

To create a multi-branch Check based on users’ custom profile field (a.k.a. var) values, like the example above:

  1. Select the Check step.
  2. In the Edit Check configuration pane, set Check if… to “Custom Profile Field.”
  3. Choose Multi-branch.
  4. In the Custom fields drop-down, search for or select a custom field, or enter a new one if the field does not yet exist on any user profiles, but will in the future.
  5. Under Custom field value is or equals…, enter one value per box. Click + Add Value for each additional value you wish to add.


  • You may add an unlimited number of branches, but we recommend no greater than 15 for optimal display
  • Value matching is case-sensitive.
  • All matching is exact, for example, if you enter 4/29/2015, users whose value is a timestamp of “04/29/2015 12:00 AM” will not match.
  • Pipes can be used as value delimiters
Edit Check Panel

Deleting a Check with Steps in Multiple Branches

To delete a check that has steps following from it on multiple branches, you must remove all steps from all but one of the branches. The remaining branch of steps will be moved up to connect to the step immediately before the deleted check. You cannot currently delete a check with steps in multiple branches.

Before Check Removal After Check Removal

Checks Within Branches

You may add additional Check steps within the branches of a prior Check.

When viewing larger flows with multiple checks and branches, you can use the Zoom feature in the bottom left to more easily view the flow in its entirety.

Joining Branches

It is not currently possible to re-join two branches.

Split Testing Within Flows

You can create multiple test variants within a flow by adding add a Test step. A Test allows you to split the flow into a maximum of 5 test branches. You can then add any steps you like within each branch, before they automatically rejoin after the test.

For complete information, see “Tests” in the Step Glossary.

Existing Smart Strategies or Template Triggers

Be advised: Existing Smart Strategies and Template Triggers will continue to run as normal. To prevent the risks of piggy-backing actions or sends from other triggers or from Smart Strategies tactics, it is recommended that you use new templates for all Lifecycle Optimizer flows. If you copy an existing template for use in Lifecycle Optimizer, be sure to check the “Triggers” tab in the Template Editor and remove any triggers on the new template.


  • If you are using the Google Chrome browser, note that Lifecycle Optimizer requires version 50 or higher.
  • If you are using multiple tabs and multiple Sailthru accounts, please know that switching to another Sailthru account will cause open Lifecycle Optimizer tabs to automatically refresh, to avoid cross-account conflicts.
  • If you have any other issues using Lifecycle Optimizer, please contact Support.