# Creating Sequences Learn how to configure Sequences. # Create a Sequence > Create a series of messages that are initiated by a trigger. Messages are delivered according to your timing settings, and you can also set conditions that determine the continuation of the series. > **Note:** Each message in a sequence counts toward your *Sequences and Automation* [Message Limit](https://www.airship.com/docs/reference/glossary/#message_limits). To get started, create a new Sequence: 1. In the sidebar, select the **Create** dropdown menu ( ), then select **Journey**. 1. Select **Sequence**, then **Start from scratch**. 1. Enter a name for your Sequence. 1. Select **Continue**. You will now configure each [component](https://www.airship.com/docs/guides/messaging/messages/sequences/about/#components) from the [Journey Map](https://www.airship.com/docs/reference/glossary/#journey_map). You can configure components in any order.  *A draft sequence* ## Trigger Configure a trigger that will initiate your sequence. You can configure up to 10 triggers unless you are using the [Inactivity trigger](https://www.airship.com/docs/guides/messaging/messages/sequences/triggers/#inactivity).  *Configure a Sequence trigger* 1. Select the trigger card and then the pencil icon ( ). If multiple triggers are configured, first select the trigger stack to expand it, and then select a trigger card. 1. Select and configure a [trigger](https://www.airship.com/docs/guides/messaging/messages/sequences/triggers/). 1. (Optional) Under **Settings**, define the times during which the trigger is active for the Sequence. Trigger start and end dates are evaluated before [Sequence start and end dates](#scheduling-and-frequency). 1. Enable **Start Date** and/or **End Date**. 1. Set the time, time zone, and date. 1. (Optional) Under **Conditions**, build a [Segment](https://www.airship.com/docs/reference/glossary/#segment) to filter the audience members entering the Sequence. Creating a segment here uses the same segmentation data and procedure as building [Segments](https://www.airship.com/docs/guides/audience/segmentation/segments/#adding-conditions). You cannot set Conditions for the Inactivity or Manual Entry trigger. 1. Select **Save**. To add another trigger, select the plus icon () below the configured triggers. Adding more triggers to an existing Sequence does not require publishing changes. To delete a trigger, select its card, and then select the trash can icon ( ). > **Tip:** You can route users to a Sequence when an [In-App Automation](https://www.airship.com/docs/reference/glossary/#iaa) or [Scene](https://www.airship.com/docs/reference/glossary/#scene) displays on a device or when they select a button in an In-App Automation. See [Link Journey components](https://www.airship.com/docs/guides/features/orchestration-experimentation/journeys/#link-journey-components) in the *Journeys* documentation. ## Scheduling and frequency Define when the sequence can deliver messages to your audience, and control the frequency of sending messages and of triggering the sequence. The settings are optional. 1. Select the sequence card, then the pencil icon ( ). 1. Select **Settings** in the header. 1. Under **Scheduling**, define the times during which the Sequence can deliver messages to your audience. When its end date occurs, its status automatically changes to Completed, and you cannot restart it. Enable **Start Date** and/or **End Date**, and then set the time, time zone, and date. > **Important:** [Trigger start and end dates](#trigger) are evaluated before Sequence start and end dates. Verify settings in both locations before starting a Sequence or publishing changes. 1. Under **Limits**, enable **Ignore Channel Message Limits** to override the project-level [Message Limits](https://www.airship.com/docs/reference/glossary/#message_limits), ensuring that your audience will receive your message even if they've reached the message limit. Overriding message limits does not override your **Rule limits** setting. 1. Under **Limits**, enable **Rule Limits** to cap the number of messages a user can receive from a Sequence within a time frame, preventing you from over-messaging your audience. Select **Add a daily limit** and/or **Add an all-time limit** and enter a number. 1. Select **Save & Continue**. You will return to the [Sequence Manager](https://www.airship.com/docs/reference/glossary/#sequence_manager). You can start adding messages. To return to the map, select **Journey view** or **Exit **, then **Save and exit**. ## Channels > **Note:** If your account includes [Channel Coordination](https://www.airship.com/docs/reference/glossary/#channel_coordination), skip this step — the section does not appear for you in the dashboard. You will instead configure channels when you [add each message](#messages) to the sequence. Enable the channels you want to send the message to. Available channels are based on your selected trigger. 1. Select the sequence card, then the compose icon ( ). 1. Select **Settings** in the header. 1. Select the **Target** tab. 1. Enable channels. 1. Select **Next**, then **Save & Continue**. You will return to the [Sequence Manager](https://www.airship.com/docs/reference/glossary/#sequence_manager). You can start adding messages, or select **Exit **, then **Save and exit** to return to the map. ## Messages Configure the message conditions and content. For details, see [Add messages to a sequence](https://www.airship.com/docs/guides/messaging/messages/sequences/create/add-messages/). If you just saved and exited Settings, you will already be on the Manage screen and can skip to step 2. 1. Select the sequence card, then the compose icon ( ). 1. Set the message conditions. 1. Set the delay period. 1. Add the message content and configure its delivery settings. 1. Select **Save & Continue** to complete adding the message to your sequence. You will return to the [Sequence Manager](https://www.airship.com/docs/reference/glossary/#sequence_manager) after adding a message. From there, select **Add message** and repeat these steps for each message you want to add to the sequence. Select **Exit **, then **Save and exit** to return to the map. ## Outcomes You can configure outcomes in the [Journey Map](https://www.airship.com/docs/reference/glossary/#journey_map). If using the [Inactivity trigger](https://www.airship.com/docs/guides/messaging/messages/sequences/triggers/#inactivity), the outcome is pre-configured and cannot be edited. For details about setting up each option, see [Sequence outcomes](https://www.airship.com/docs/guides/messaging/messages/sequences/create/outcomes/). ## Start sequence When all required components are configured, you can: * [Test the sequence](https://www.airship.com/docs/guides/messaging/messages/sequences/create/test/) before starting it or publishing changes. * [Create a control group](https://www.airship.com/docs/guides/experimentation/control-groups/) before starting the sequence. * **Start the sequence** to make it available to your audience: * From the map: Select the sequence card and select *Start* from the dropdown menu. * From the [Sequence Manager](https://www.airship.com/docs/reference/glossary/#sequence_manager): Select ** Start**. # Sequence templates > {{< glossary_definition "sequence_template" >}} This document describes each Sequence template, provides steps for accessing them, and lists considerations for editing. See [Create a Sequence](https://www.airship.com/docs/guides/messaging/messages/sequences/create/create/) for full documentation about creating a new Sequence and composing its messages. Each message in a Sequence counts toward your *Sequences and Automation* [Message Limit](https://www.airship.com/docs/reference/glossary/#message_limits). ## Types of Sequence templates Default channels, trigger, outcome, message content, and delivery timing are described for each template type. ### Welcome Series Send onboarding messages. Default settings: | Channels | Trigger | Outcome | Message 1 | Message 2 | Delivery timing | | --- | --- | --- | --- | --- | --- | | App | [First Seen](https://www.airship.com/docs/reference/glossary/#first_seen_event_trigger) | Default Sequence behavior: Users who trigger the Sequence will receive all messages in the Sequence. | **Delay:** 1 day
**Message type and content:** Push notification, with title and body welcoming the user to the app. | **Delay:** 3 days after message 1
**Message type and content:** Push notification, encouraging the user to check out the brand's best features. | All messages are set to *Send immediately*: Airship sends your message after receiving the triggering event and after the delay period elapses. | ### Authentication Sequence Encourage users on anonymous channels to log in to your app, which associates them with a [Named User](https://www.airship.com/docs/reference/glossary/#named_user). This creates a known contact within Airship. Default settings: | Channels | Trigger | Outcome | Message 1 | Message 2 | Delivery timing | | --- | --- | --- | --- | --- | --- | | App | [First Seen](https://www.airship.com/docs/reference/glossary/#first_seen_event_trigger) | Conversion: Users who trigger the Sequence and then log in to the app will exit the Sequence. | **Delay:** 7 days
**Message type and content:** Push notification, with title and body encouraging user to log in to the app. | | All messages are set to *Send immediately*: Airship sends your message after receiving the triggering event and after the delay period elapses. | > **Note:** Named user association at login must be implemented for your app. See: [Associating Channels with Named Users](https://www.airship.com/docs/guides/audience/named-users/#associate). ### Re-engagement Sequence Win back inactive audience members. Default settings: | Channels | Trigger | Outcome | Message 1 | Message 2 | Delivery timing | | --- | --- | --- | --- | --- | --- | | App, Web | [Inactivity](https://www.airship.com/docs/reference/glossary/#inactivity_event_trigger), set to *15 days* | Conversion: Users who trigger the Sequence and then re-engage with the app or website will exit the Sequence. They are represented in the *Reactivations* count in the [Performance Report](https://www.airship.com/docs/reference/glossary/#sequence_performance) and Sequence tests. | **Delay:** None
**Message type and content:** Push notification or web push notification, with title and body telling the user that they are missed. | **Delay:** 7 days after message 1
**Message type and content:** Push notification or web push notification, with title and body telling the user that they are missing out. | All messages are set to *Send immediately*: Airship sends your message after receiving the triggering event and after the delay period elapses. | ## Using a Sequence template To get started, create a new Sequence: 1. In the sidebar, select the **Create** dropdown menu ( ), then select **Journey**. 1. Select **Sequence**, then select a template. The Sequence will open to the [Journey Map](https://www.airship.com/docs/reference/glossary/#journey_map). Details to keep in mind as you complete configuration: * **Trigger and Outcomes** — Make sure your Trigger and Outcomes are appropriately configured for the Sequence's goal. * For Sequences using the **Re-engagement Sequence** template, you cannot edit the Conversion selection in the *Outcomes* step. Users will exit the Sequence and be counted as a *Reactivation* in the [Performance Report](https://www.airship.com/docs/reference/glossary/#sequence_performance) and Sequence tests. * For Sequences using the **Authentication Sequence** template, *Contact association* is the preselected conversion event in the *Outcomes* step, but you have the option to edit and select a custom event. * **Messages** — Verify the settings for the default messages and any messages you add to the Sequence. * **Delay and conditions** — Adjust the delay and/or conditions, as necessary. * For Sequences using the **Re-engagement Sequence** template, there is no delay setting for the first message. * For Sequences using the **Authentication Sequence** template, *Anonymous channels* is preselected for the *Channel condition* for the first message, and cannot be edited. * **Content** — Make sure to edit the placeholder text in each message, adding brand-specific content. For a Welcome Series, highlight features that your users can get started with right away. For Re-engagement, highlight the features and/or deals that your users are missing out on. * **Delivery** — All messages are set to *Send immediately* by default. After setting up your new Sequence, you can: * [Test the Sequence](https://www.airship.com/docs/guides/messaging/messages/sequences/create/test/) before starting it. * [Start the Sequence](https://www.airship.com/docs/guides/messaging/messages/sequences/create/create/#start-sequence) to make it available to your audience. # Sequence outcomes > Configure alternatives to a sequence's default ending behavior. By default, all sequence messages are delivered to users who meet the conditions, but you can configure alternative outcomes. ## Possible outcomes You can configure the following outcomes for a sequence:
Continue to an in-app experience ([In-App Automation](https://www.airship.com/docs/reference/glossary/#iaa) or [Scene](https://www.airship.com/docs/reference/glossary/#scene)) or another sequence when Airship sends the last message in the current sequence.
Exit the sequence when a specific event occurs. When configuring the event, you designate it as a conversion or cancellation for reporting.
Exit the sequence when a specific event occurs, then continue to an in-app experience or another sequence.
You can use file upload to provide multiple values to match against a specified event property’s value. For string properties only.
>For example, for a point-of-sale system that emits events when a sale occurs, an event might have the following data:
> ```js > name: "sale-completed" > properties: > customer_id: 234234 > store_id: 103843 > region: "northwest-usa" > ``` > >To trigger only when sales occur in the regions of northwest-usa and southwest-usa but not midwest-usa or any other region, you would do the following to filter your custom events:
region..txt file containing values northwest-usa and southwest-usa.Provide your values in a line delimited .txt file. Each value must be on a separate line. 100 KB maximum file size.
Airship evaluates subscription status across all channels collectively. A Contact is subscribed to a list when they have at least one opted-in channel and unsubscribed when they have no opted-in channels. | Search for and select a list, then select whether they must be in to or out of the list. | {class="table-col-1-20 table-col-2-40"} 1. Select the arrow icon ( ) to close the configuration panel. ### Delay You can set a delay period for the message. This is the time Airship should wait after receiving the triggering event before sending your message. Set the value to zero (0) minutes to send immediately or adjust the default value (one hour) to the desired delay period. The maximum delay period is 90 days. * **For the first message in your sequence**: * The delay period starts when the triggering event is received by Airship. * For the First Seen trigger, a delay shorter than one hour may result in dropped sends. * For sequences with the goal of *Event*, a delay shorter than one hour may result in sends going to users who converted/cancelled. * For sequences using the Inactivity trigger, there is no delay setting for the first message. * **For subsequent messages**: * The delay period starts when the previous message was sent. * For sequences with the goal of *Event*, a delay shorter than one hour may result in sends going to users who converted/cancelled. To set a delay: 1. Under **Message Delay**, select the currently set time period. 1. Enter a value in minutes, hours, or days. 1. Select **Save**. ## Configure the message Select **Add message content**. You can add message content without setting conditions or a delay. After completing a step, select the next step in the header to move on. ### Setup > **Note:** Projects using the [channel-level segmentation system](https://www.airship.com/docs/guides/audience/segmentation/segmentation/#channel-level-segmentation) do not have a Setup step. However, if they are enabled for Channel Coordination, you must select and configure a strategy and save it before moving to the Content step. > > Also, for the channel-level segmentation system, each strategy targets a [Named User](https://www.airship.com/docs/reference/glossary/#named_user), not a [Contact](https://www.airship.com/docs/reference/glossary/#contact). First, select a [Channel Coordination](https://www.airship.com/docs/reference/glossary/#channel_coordination) strategy: * **Fan Out** targets a Contact on all the channels they are opted in to, maximizing the chances they receive your message. * **Last Active** targets a Contact on the opted-in channel they used most recently. * **Originating Channel** targets a Contact on the channel that triggered the Sequence. * **Priority Channel** targets a Contact on the first channel they are opted in to, in the priority order you set. Then, enable the channel types to include in your audience. For Mobile Apps, also select from the available platforms. For Priority Channel, also drag the channel types into priority order.
Use Channel conditions to filter which channels are included in the audience. A channel must meet the conditions to remain in the audience.
For example, if your audience includes users with app, email, and SMS channels, and you set a channel condition requiring membership in an email Subscription List:
To set channel conditions, use the same process as when building a [Segment](https://www.airship.com/docs/reference/glossary/#segment). You can use the following data in your conditions:
device [Tag Group](https://www.airship.com/docs/reference/glossary/#tag_group) — See Primary device tags.Selected Lifecycle, Subscription, and Uploaded Lists must contain Channel IDs or Named Users as the identifier, not a mix of the two.
### Content Configure the message content per enabled channel. See [Content by channel](https://www.airship.com/docs/guides/messaging/messages/content/).  ### Delivery Configure [delivery](https://www.airship.com/docs/guides/messaging/messages/delivery/delivery/). Timing settings do not appear if you chose the Inactivity trigger. ### Review Review the device preview and message summary. Click the arrows to page through the various previews. The channel and display type dynamically update in the dropdown menu above. You can also select a preview directly from the dropdown menu. If you want to make changes, click the associated step in the header, make your changes, then return to *Review*. Send a test message to verify its appearance and behavior on each configured channel. The message is sent to your selected recipients immediately, and it appears as a test in [Messages Overview](https://www.airship.com/docs/reference/glossary/#messages_overview). 1. Select **Send Test**.Under Test audience, enter at least one [Named User](https://www.airship.com/docs/reference/glossary/#named_user) or [Test Group](https://www.airship.com/docs/reference/glossary/#preview_test_groups) and select from the results. If your message includes email, you can also search for email addresses. If no matches appear for an address, you can select Create channel for <address>, and the channel will be registered for your project and opted in to transactional messaging.
Users in an active [Holdout Experiment](https://www.airship.com/docs/reference/glossary/#holdout_experiment) will not receive a test message. You can view a user’s current holdout group status and history when viewing their channel details in Contact Management.
(If your message contains [Handlebars](https://www.airship.com/docs/reference/glossary/#handlebars)) Under Personalization, select and configure a personalization data source:
| Data source | Description | Steps |
|---|---|---|
| Test message recipient | The message will be personalized using information associated with each test audience member. | n/a |
| Preview Data tool | The message will be personalized using the data currently entered in the Preview Data tool. The same values will apply to all test message recipients. You can also manually edit the JSON. | (Optional) Edit the JSON data. |
Select Send.
For example, if you have a custom event representing a purchase, you can send an automated message confirming the purchase and providing information about what the user bought.
Custom Event ```json { "occurred": "{{event_time}}", "user": { "named_user_id": "user" }, "body": { "name": "purchase", "subscribe": true, "properties": { "customer_name": "user", "total": 48, "cost_units": "USD", "purchase": [ { "qty": 4, "item": "MLB regulation baseball", "per": "$12", "total": "$48" } ] } } } ```
Message Content ```handlebars Hi {{$def customer_name "valued customer"}}! Thanks for your purchase of: {{#each purchase}} {{qty}}x {{per}} {{item}} = {{this.total}} {{/each}} total: ${{total}} Is being processed. We'll message you again when it ships! ```
## Localize your sequence messages Learn how to localize your messages in your sequence using [Handlebars](https://www.airship.com/docs/reference/glossary/#handlebars) with conditions targeting `ua_language` and/or `ua_country` tags. Localizing messages in this way ensures that your audience only sees the message intended for their language settings. > **Note:** The `else` statement acts as the default message for members of your audience who do not have a `ua_language` # Test a Sequence > Use sequence testing to verify the appearance and behavior of your messages, as well as channel configuration, tag conditions, and conversion or cancellation events. You can send a sequence to a test audience according to your specified timing, then view versions of the [Performance Report](https://www.airship.com/docs/reference/glossary/#sequence_performance) and message reports based on the test audience. You can also test individual messages in the sequence. ## Your test audience You can send a test to either a single [Named User](https://www.airship.com/docs/reference/glossary/#named_user) or to a [Test Group](https://www.airship.com/docs/reference/glossary/#preview_test_groups). * If you used tag conditions in your sequence, make sure you know which users in your test audience have which tags. * If you personalized messages using attributes, assign the relevant attributes to your test audience. * There may be a discrepancy between the number of intended recipients and the number of actual devices if members of the test audience have uninstalled. * Users in an active [Holdout Experiment](https://www.airship.com/docs/reference/glossary/#holdout_experiment) will not receive a test message. You can view a user's current holdout group status and history when [viewing their channel details in Contact Management](https://www.airship.com/docs/guides/audience/contact-management/#viewing-channel-details). ## Test a sequence Follow these steps to test a sequence that has never been started, or started but never edited. > **Note:** The option to test a sequence is not available until the sequence is configured with the minimum requirements to start it. If you just created the sequence, you will already be on the *Manage* screen. Otherwise, first go to **Messages**, then **Messages Overview**, and then select the pencil icon ( ) for a sequence. Then: 1. Click **Test Run** in the leftside drawer. 1. Click **Set up a test run**. 1. Enter at least one named user or test group and select from the results. 1. Specify the amount of time you want between delivery of each message in your test sequence. 1. Click **Create test**. 1. Click **Start test** on the *Test* screen. You can repeat this step to restart the test. Now you can [evaluate the test](#evaluate). ### Test your changes after editing a sequence Follow these steps to test your changes after editing a started or paused sequence. If you just edited the sequence, you will already be on the *Manage* screen. Otherwise, first go to **Messages**, then **Messages Overview**, and then select the pencil icon ( ) for a sequence. Then: 1. Click **Test changes** next to the notice *You have unpublished changes.* 1. If you have created a test for this sequence before, click **Yes, create new test** to confirm deleting previous test data. 1. Enter at least one named user or test group and select from the results. 1. Specify the amount of time you want between delivery of each message in your test sequence. 1. Click **Create test**. 1. Click **Start test run**. You can repeat this step to restart the test. Now you can [evaluate the test](#evaluate). ## Test a message in a sequence Send a test message, then verify its appearance and behavior on each channel the message is configured for. The message is sent to your selected recipients immediately, and it appears as a test in [Messages Overview](https://www.airship.com/docs/reference/glossary/#messages_overview). Send a test from the *Review* step when composing a message: 1. Select **Send Test**.Under Test audience, enter at least one [Named User](https://www.airship.com/docs/reference/glossary/#named_user) or [Test Group](https://www.airship.com/docs/reference/glossary/#preview_test_groups) and select from the results. If your message includes email, you can also search for email addresses. If no matches appear for an address, you can select Create channel for <address>, and the channel will be registered for your project and opted in to transactional messaging.
Users in an active [Holdout Experiment](https://www.airship.com/docs/reference/glossary/#holdout_experiment) will not receive a test message. You can view a user’s current holdout group status and history when viewing their channel details in Contact Management.
(If your message contains [Handlebars](https://www.airship.com/docs/reference/glossary/#handlebars)) Under Personalization, select and configure a personalization data source:
| Data source | Description | Steps |
|---|---|---|
| Test message recipient | The message will be personalized using information associated with each test audience member. | n/a |
| Preview Data tool | The message will be personalized using the data currently entered in the Preview Data tool. The same values will apply to all test message recipients. You can also manually edit the JSON. | (Optional) Edit the JSON data. |
Select Send.