> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tracklysms.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Welcome Journeys Overview

> Create automated message sequences for new contacts

Welcome Journeys are automated multi-step sequences triggered when contacts join your lists. Onboard new subscribers with a series of timed messages.

## What is a Welcome Journey?

A **Welcome Journey** is an automated workflow that:

* Triggers when a contact joins a list
* Sends messages at defined intervals
* Can branch based on contact behavior
* Runs independently of scheduled campaigns

```
Contact joins list
      ↓
Immediate: "Welcome! Here's 10% off..."
      ↓
Wait 24 hours
      ↓
"Did you see our bestsellers?"
      ↓
Wait 3 days
      ↓
Check: Did they click?
    ↓ Yes          ↓ No
"Thanks!"    "Last chance: 15% off"
```

## Key Concepts

### Enrollment

When a contact meets trigger conditions, they're **enrolled** in the journey:

* Creates a `JourneyEnrollment` record
* Tracks their progress through steps
* One active enrollment per journey per list membership; a contact who completes a journey can enroll again

### Steps

Journeys consist of sequential steps:

| Step Type            | Purpose                                 |
| -------------------- | --------------------------------------- |
| **Send Message**     | Deliver a creative                      |
| **Wait**             | Pause for a duration                    |
| **Wait Until**       | Wait until a specific time of day       |
| **Condition**        | Branch based on behavior                |
| **Set Custom Field** | Set a custom field value on the contact |
| **Unsubscribe**      | Unsubscribe the contact from the list   |
| **Exit**             | End the journey                         |

### Triggers

Define when contacts enter the journey:

* **`list`** — Contact is added to a specific list
* **`custom_field`** — A custom field on the contact matches a condition
* **`any`** — Any new contact (no additional conditions)

### Priority

Journeys have a `priority` field that determines execution order when multiple journeys could apply to the same contact. **Higher numbers take precedence** — a journey with priority 10 wins over priority 5.

### Safety Limits

The journey executor enforces safety limits:

* **1,000 max step executions** per enrollment
* **30-day max enrollment duration** — enrollments older than 30 days are automatically expired

### TCPA Compliance

Journey messages respect TCPA quiet hours (8 AM - 9 PM local time) for US numbers. Messages scheduled outside the window are delayed to the next valid send time. Transactional messages can be exempt.

### Start Step

Journeys have a configurable `start_step_id` that determines which step the contact begins at. This does not have to be the first step in the list, allowing you to reuse journey definitions with different entry points.

## Creating a Journey

1. Go to **Journeys**
2. Click **New Journey**
3. Configure trigger conditions
4. Add steps
5. Activate the journey

<Frame>
  <img src="https://mintlify.s3.us-west-1.amazonaws.com/trackly/images/screenshots/journey-builder.png" alt="Journey Builder" />
</Frame>

## Journey States

| State        | Meaning                                |
| ------------ | -------------------------------------- |
| **Draft**    | Being edited, not active               |
| **Active**   | Enrolling new contacts                 |
| **Paused**   | Stopped, existing enrollments continue |
| **Archived** | Disabled and hidden                    |

## Use Cases

<CardGroup cols={2}>
  <Card title="Onboarding" icon="hand-wave">
    Welcome new subscribers and introduce your brand
  </Card>

  <Card title="Education" icon="graduation-cap">
    Teach contacts about your products over time
  </Card>

  <Card title="Re-engagement" icon="rotate-right">
    Win back contacts who haven't purchased
  </Card>

  <Card title="Nurturing" icon="seedling">
    Build relationship before asking for a sale
  </Card>
</CardGroup>

## Example: 3-Message Welcome

```
Step 1: Send "Welcome" creative
        ↓
Step 2: Wait 24 hours
        ↓
Step 3: Send "Shop bestsellers" creative
        ↓
Step 4: Wait 3 days
        ↓
Step 5: Condition - Clicked any link?
        ↓ Yes          ↓ No
Step 6a: Exit    Step 6b: Send "Special offer" creative
                        ↓
                  Step 7: Exit
```

## Journey vs Campaign

| Feature      | Journey                | Campaign                  |
| ------------ | ---------------------- | ------------------------- |
| Trigger      | Contact joins list     | Scheduled time            |
| Timing       | Relative to enrollment | Fixed schedule            |
| Personalized | Per-contact timing     | Same time for all         |
| Recurring    | Continuous             | One-time or recurring     |
| Use case     | Onboarding, nurturing  | Promotions, announcements |

## Best Practices

<AccordionGroup>
  <Accordion title="Start simple">
    Begin with 2-3 steps. Add complexity as you learn what works.
  </Accordion>

  <Accordion title="Respect frequency">
    Space messages appropriately. 1-3 days between sends is typical.
  </Accordion>

  <Accordion title="Have a clear goal">
    What action do you want? Click, purchase, engagement? Design toward it.
  </Accordion>

  <Accordion title="Monitor and iterate">
    Review journey performance and optimize underperforming steps.
  </Accordion>
</AccordionGroup>

## Next Steps

<CardGroup cols={2}>
  <Card title="Building Journeys" icon="hammer" href="/guides/journeys/building-journeys">
    Step-by-step guide
  </Card>

  <Card title="Conditions" icon="code-branch" href="/guides/journeys/conditions">
    Add branching logic
  </Card>

  <Card title="Wait Steps" icon="clock" href="/guides/journeys/waits">
    Configure timing
  </Card>

  <Card title="Examples" icon="lightbulb" href="/guides/journeys/examples">
    Common patterns
  </Card>
</CardGroup>
