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.

Flow List

When you open Lifecycle Optimizer, you’ll see a 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. By default, your flows are sorted by the created date. 

Column Description
Flow Name The name assigned to a flow on creation. You can change a flow name at any time. Select a flow’s name to view or modify its configuration.
Status The flow status will show as Active, Inactive, Draft, or Finishing. (For details, see Flow Statuses to Activate, Deactivate, or Delete.)
Created The date and time of flow creation. 
Entry Type The type of activity selected to start a flow for a user.
Entries The number of customers who entered the flow in the time span chosen from the Metrics drop-down.
Copy Select the copy icon to create a copy of any existing flow. All the flow details will be maintained. 
Delete Select the delete icon   to delete an Inactive or Draft flow. 


Filter Options:

Filter options are located to the left of the flow table.

Filter Image

Find a flow by name


Select one or more of the Status types to filter flows. 

Additional Filters

Filter by Entry type, the template used, or the list used for a flow or flows. You may select multiple options for each filter. 


Filter flow metrics by specific time periods or for all time. Your selection controls the number of entries shown in the Entries column.

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. You may also use a Personalized Send Time.
  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.

Personalized Send Time

Personalized Send Time is a feature available on Wait steps. When selected, this feature will have a waiting profile “wake up” in accordance with the Personalized Send Time used in Campaigns. A user’s PST is set based on their open and click history within their Sailthru profile.

To use PST in a Wait step, add a Wait step to your flow or select a Wait step in an existing flow. In the Edit Wait panel, select At Personal Send Time (PST) and save your changes.
The Edit Wait panel from the Sailthru Lifecycle Optimizer interface with Personalized Send Time selected.

Navigate a Flow

When you have a complex Lifecycle Optimizer flow, use the map to navigate through steps without scrolling.

Find the map icon in the top left corner of the flow Builder. Click to open the map. Select one of the shapes to navigate to that section of the flow. The section you’re viewing is highlighted with a blue rectangle.

When editing a step, it will show green in the map. Any invalid step will show red, so you don’t have to hunt through a complex flow to find it.

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.

Note: Flow re-entry is only supported for two years. After two years, a user will enter and move through the flow like a new user.

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. 

Edit Active Flows

Add, remove, and/or edit steps to active flows. To make structural changes, select a flow to edit, make your changes, and click Save.

  • When you remove a Wait step, all the users in the step will be removed from the flow.
  • You may notice reporting inconsistencies after adding steps. Steps neighboring a recently added step may show higher profile counts, for example.
  • You can 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.
  • 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.

Flow Status

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. All changes allowed.
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.

Add Steps

To add a step to an active flow:

  1. Select a flow you wish to edit. 
  2. Hover over the flow node where you want to add a step.

  3. Select a step. A warning box will appear as adding a step may affect reporting:
  4. Click Add Step
  5. Edit the step and select Save.

Remove Steps

To remove a step form an active flow:

  1. Select the step you wish to delete. Hover over the shape on the builder canvas.
  2. Click the X in the top right corner. A warning will appear as deleting a step could affect reporting. You will have two options to handle user flow:
    1. Delete the step and the users waiting in this step.
    2. Delete the step and relocate waiting users to another step.
      Note: If there are no users in the Wait step, it will be deleted without the warning modal appearing.
  3. If you’re moving users to another step, use the following instructions. If you’re removing users from the flow, go to step 4.
    1. Select Send them to different step.
      The warning modal with Remove users and send them to a different step selected.
    2. Select Remove Step and Relocate Users.
    3. Select the relocation step.
    4. Save your changes.
  4. If you’re removing users when deleting the Wait step:
    1.  Select Remove them from the flow.
      The modal with Remove users from the flow selected.
    2. Select Remove Step and Users. This will delete both the step and the user in it from your flow.
    3. Save your changes.

Version Control

Restore previously-saved versions of your favorite flows in Lifecycle Optimizer. To view and restore a previous version:

  1. Select the Time Machine button to view the version history. The version history will show in a bar below the flow name.
  2. Click any version to see a visual representation of the differences between it and the current version of the flow. When you click a version in the history, its background will show as white.
  3. When you locate the correct version, select the Revert button.

    The reverting flow modal allows you to either apply the reversion or to go back. When you select Apply, the flow will revert to the selected version.

Note: If you decide you don’t want to revert to any of the previous versions, click the Time Machine button again to close the Version History.

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.


  • Why is a user stuck at a Wait step?
    • They are waiting at a wait step.
      • The metric after the wait step is how many users entered the wait step. It’s possible there are some people still waiting.
    • The structure of the flow has changed.
      • The metric of a newly added step might be lower than a surrounding step.
  • 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.
  • Sending a push to a mobile profile through LO can generate multiple sends if a user has multiple apps on their profile.
  • If you have any other issues using Lifecycle Optimizer, please contact Support.