GuidesJourney Automation

Building Journey Automations

This guide walks you through designing and deploying multi-step, multi-channel customer journeys in SignalSmith. By the end, you’ll have a working automated journey that moves customers through a sequence of actions based on their behavior, with branching logic and exit criteria.

When to Use Journeys

Journeys are the right approach when you need to:

  • Automate a sequence of messages across channels (email, SMS, push) based on timing and conditions
  • Branch customers into different paths based on their attributes or behavior
  • Orchestrate multi-day workflows like onboarding sequences, re-engagement campaigns, or renewal reminders
  • Trigger actions based on audience membership changes, not just one-time syncs

If you need a simple one-time push of audience data to a destination, use an audience sync instead. Journeys are for multi-step, time-based workflows.

Prerequisites

  • A SignalSmith workspace with at least one connected destination that supports messaging (e.g., Braze, SendGrid, Twilio)
  • At least one audience to serve as the journey entry point
  • Admin or Editor role in your SignalSmith workspace
  • Message templates configured in your destination platform (e.g., email templates in SendGrid)

Design Your Flow

Before building in SignalSmith, sketch out the customer experience you want to create. Here are two common patterns:

Welcome Series

Entry: New signup audience
  → Wait 1 hour
  → Send welcome email
  → Wait 3 days
  → Branch: Has completed onboarding?
    → Yes: Send tips & tricks email → Exit
    → No: Send reminder email
      → Wait 2 days
      → Branch: Has completed onboarding?
        → Yes: Exit
        → No: Send final nudge email → Exit

Re-Engagement Campaign

Entry: Inactive 30+ days audience
  → Send "We miss you" email with discount code
  → Wait 5 days
  → Branch: Made a purchase?
    → Yes: Send thank-you email → Exit
    → No: Send push notification
      → Wait 3 days
      → Branch: Made a purchase?
        → Yes: Send thank-you email → Exit
        → No: Send final offer email → Exit

Step 1: Create the Entry Audience

The entry audience defines who enters the journey. Customers enter when they first qualify for the audience, and each customer enters only once (unless you enable re-entry).

  1. Navigate to Segment > Audiences
  2. Click Create Audience
  3. Define conditions that capture customers at the right moment:

For a Welcome Series:

Entity Type: User
WHERE created_at >= DATEADD(day, -1, CURRENT_DATE)

For Re-Engagement:

Entity Type: User
WHERE
  days_since_last_activity > 30
  AND total_orders >= 1
  AND unsubscribed = false
  1. Name the audience descriptively (e.g., “Journey Entry: New Signups - Last 24h”)
  2. Click Save

Tip: Use narrow time windows for entry audiences (e.g., last 24 hours) to ensure customers enter at the right time. If your audience captures “all users who signed up in the last year,” everyone qualifies immediately and enters the journey at once.

Step 2: Build the Journey Canvas

  1. Navigate to Journeys in the left sidebar
  2. Click Create Journey
  3. Name it descriptively (e.g., “Welcome Series Q1 2025”)
  4. Select the entry audience from Step 1
  5. Configure entry settings:
    • Entry frequency — Once (customers enter the journey only once) or Recurring (customers can re-enter after a cooldown period)
    • Schedule — How often the journey checks for new qualifying members (e.g., every hour, daily)
  6. The canvas opens with the Entry tile already placed

Step 3: Add Wait Steps and Branches

Build out your journey by dragging tiles onto the canvas and connecting them.

Wait Tiles

Wait tiles pause the customer in the journey for a specified duration before moving them to the next step.

  1. Drag a Wait tile onto the canvas
  2. Connect it to the previous tile
  3. Set the duration:
    • Fixed duration — Wait a specific amount of time (e.g., 1 hour, 3 days)
    • Until a specific time — Wait until a day/time (e.g., next Tuesday at 9 AM in the user’s timezone)

Timing best practices:

  • For welcome sequences, start with a short wait (1 hour) before the first message
  • Space subsequent messages 2-5 days apart to avoid overwhelming the customer
  • Consider timezone-aware scheduling to deliver messages at appropriate local times

Branch Tiles

Branch tiles split the flow based on conditions, sending customers down different paths.

  1. Drag a Branch tile onto the canvas
  2. Connect it to the previous tile
  3. Choose the branch type:
Branch TypeHow It WorksUse Case
Trait conditionEvaluate a trait or attribute value (e.g., onboarding_completed = true)Split by customer behavior or status
Event-basedCheck if the customer performed an event since entering the journeyReact to actions taken during the journey
Percentage splitRandomly assign a percentage to each branchA/B testing message variants
Time-basedCheck if a condition is met within a time window, with a fallback branch”Did they convert within 7 days?”
  1. Define the condition and connect each branch to the next tile

Example: Onboarding Check

  • Branch condition: onboarding_completed = true
  • Yes branch → Tips email → Exit
  • No branch → Reminder email → Wait 2 days → Another check

Step 4: Configure Destination Actions

Action tiles send messages or trigger actions in your connected destinations.

  1. Drag an Action tile onto the canvas
  2. Connect it to the previous tile
  3. Configure the action:
    • Select destination — Choose from your configured messaging destinations (e.g., SendGrid, Braze, Twilio)
    • Select action type — Send Email, Send SMS, Send Push Notification, or Custom API call
    • Select template — Choose a pre-built template from your destination platform
    • Map dynamic fields — Insert personalization variables from SignalSmith traits and attributes:
Template VariableSignalSmith FieldExample Output
{{first_name}}first_name”Jane”
{{company}}company_name”Acme Corp”
{{discount_code}}discount_code trait”WELCOME20”
{{days_inactive}}days_since_last_activity trait”45”
  1. Click Save on the action tile

Multi-Channel Actions

Journeys can mix channels within the same flow:

Wait 1 day → Send Email (welcome)
Wait 3 days → Send Push Notification (feature highlight)
Wait 5 days → Send SMS (special offer)

Each action tile can target a different destination, enabling true multi-channel orchestration.

Step 5: Define Exit Criteria

Exit criteria define when customers leave the journey early, before completing all steps. This prevents sending irrelevant messages to customers who’ve already converted or opted out.

  1. In the journey settings panel, click Exit Criteria
  2. Add exit conditions:
Exit ConditionDescriptionExample
Goal reachedCustomer achieves the journey’s objectiveCompleted onboarding, made a purchase
Audience exitCustomer no longer qualifies for the entry audienceUnsubscribed, account deactivated
TimeoutCustomer has been in the journey for too long30 days maximum journey duration
Event triggerCustomer performs a specific actionContacted support, filed a complaint
Manual removalAn operator removes the customer from the journeyAccount flagged for review
  1. For goal-based exits, define the goal condition:
    • Trait condition: onboarding_completed = true or total_orders >= 1
    • Event-based: Customer triggers an “Order Completed” event

When a customer exits early, they skip all remaining tiles and are logged as “exited early” in the journey analytics.

Step 6: Activate and Monitor

Validation

Before activating, validate the journey to catch configuration issues:

  1. Click Validate in the journey toolbar
  2. The validator checks for:
    • Missing connections — Tiles that aren’t connected to the flow
    • Missing configurations — Action tiles without a destination or template selected
    • Dead ends — Branches that don’t terminate in an Exit tile
    • Circular paths — Loops in the flow that would trap customers
  3. Fix any reported issues

Activation

  1. Click Activate
  2. Review the journey summary:
    • Entry audience and estimated entry volume
    • Number of steps and branches
    • Destinations that will receive actions
    • Exit criteria
  3. Confirm activation

The journey immediately begins checking for qualifying customers based on the configured schedule. New members of the entry audience will start the journey.

Monitoring

Once active, monitor the journey’s performance:

  1. Navigate to the journey’s detail page
  2. Review the canvas with live statistics overlaid on each tile:
MetricDescription
Active in stepNumber of customers currently at this tile
Passed throughTotal customers who have completed this tile
Exited hereCustomers who left the journey at this point
Branch distributionPercentage of customers taking each branch
  1. Review aggregate journey metrics:
MetricDescription
Total enteredTotal customers who have entered the journey
Currently activeCustomers currently progressing through the journey
CompletedCustomers who reached an Exit tile
Exited earlyCustomers who met an exit criterion before completing
Conversion ratePercentage of entrants who reached the goal
Average durationAverage time from entry to completion or exit

Step 7: Iterate Based on Analytics

Use the journey analytics to identify optimization opportunities:

Low Branch Conversion

If most customers take the “No” branch at a condition check, consider:

  • Adjusting the wait time before the check (give customers more time to act)
  • Improving the preceding action (better email subject line, different offer)
  • Broadening the condition (e.g., check for partial completion, not full completion)

High Exit Rate at a Specific Step

If many customers exit early at a particular tile:

  • The message may be causing unsubscribes — review the content
  • The timing may be wrong — adjust the preceding wait step
  • The audience criteria may be too broad — tighten the entry audience

A/B Testing with Percentage Splits

Use percentage split branches to test variations:

Branch (50/50 split)
  → Path A: Email with discount code
  → Path B: Email without discount code
→ Both paths: Wait 3 days → Check purchase

Compare conversion rates between paths to determine which approach performs better.

Pausing and Editing

To make changes to an active journey:

  1. Click Pause to stop processing new entries and advancing active customers
  2. Make your changes to the canvas
  3. Click Resume to reactivate

Customers who were mid-journey when paused will continue from where they left off.

Other Journey Patterns

Post-Purchase Follow-Up

Entry: "Recent Purchasers" audience
  → Wait 1 day → Send order confirmation + recommendations email
  → Wait 7 days → Send "How's your product?" email
  → Wait 14 days → Branch: Left a review?
    → Yes: Send thank-you with loyalty reward → Exit
    → No: Send review request email → Exit

Renewal Reminder Series

Entry: "Subscription Expiring in 30 Days" audience
  → Send 30-day reminder email
  → Wait 23 days → Branch: Has renewed?
    → Yes: Send confirmation → Exit
    → No: Send 7-day urgent reminder
      → Wait 6 days → Branch: Has renewed?
        → Yes: Exit
        → No: Send final day email + SMS → Exit

Event-Driven Upsell

Entry: "Free Plan Users" audience
  → Wait until: User triggers "Feature Limit Reached" event
  → Send upgrade suggestion email with trial offer
  → Wait 3 days → Branch: Started trial?
    → Yes: Wait 12 days → Send trial ending reminder → Exit
    → No: Send case study email → Exit

Troubleshooting

IssueCauseResolution
No customers enteringEntry audience is empty or schedule hasn’t runCheck the audience has members; verify the journey schedule
Customers stuck at an actionDestination API errorCheck the action tile’s error log; verify destination connection
All customers taking one branchBranch condition is too strict or too lenientReview the trait values for customers in the journey; adjust the condition
Journey not processingJourney is paused or disabledCheck the journey status in the header bar

Next Steps