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

# Create an automation

> Build a workflow on the visual canvas: pick a trigger, add steps, test, and publish.

This guide builds an automation from scratch. If a [template](/automations/overview#start-from-a-template) covers your use case, start there instead — you can customize everything after.

## 1. Create the workflow

Go to **Automations** and click **Create automation**. Give it a name that describes its job — "Welcome series", "Post-purchase thank you".

## 2. Configure the trigger

Every flow starts with one trigger event:

<Steps>
  <Step title="Pick the trigger source and event">
    Choose where the event comes from (your store, Retainful itself, or a connected integration) and which event starts the flow — for example **Checkout started**, **Order placed**, or **Subscribed to list**. The full catalog is in [Triggers](/automations/triggers).
  </Step>

  <Step title="Add trigger filters (optional)">
    Narrow which events qualify — for example, only orders over \$50, or only signups to a specific list.
  </Step>

  <Step title="Add audience filters (optional)">
    Require the contact to match conditions — for example, only first-time customers, or only contacts in a [segment](/audience/segments).
  </Step>

  <Step title="Set re-entry rules">
    Decide whether a contact who finishes the flow can enter it again — never, always, or only after a cooldown (hours, days, or weeks).
  </Step>
</Steps>

## 3. Add steps

Click the **+** button on any connection to insert a step. Build your sequence from [the step library](/automations/steps): send an email, wait a day, branch on a condition, generate a coupon, and so on.

A simple welcome series looks like:

1. **Trigger:** Subscribed to list "Newsletter"
2. **Email:** "Welcome — here's what we're about"
3. **Delay:** 2 days
4. **Email:** "Our customers' favorites" (with a product block)
5. **Delay:** 3 days
6. **Binary:** Has the contact placed an order?
   * **No → Email:** "Here's 10% off your first order" (with a coupon)
   * **Yes →** exit

## 4. Write the emails

Click any email step to set its subject, sender, and content. The full [email editor](/campaigns/email-editor) opens — same blocks, personalization, and templates as campaigns. Cart and coupon [merge tags](/campaigns/personalization) are available where the trigger provides them.

## 5. Test the flow

Before publishing:

* **Send test emails** from each email step.
* Walk the canvas end to end: does every branch lead somewhere sensible? Are your delays realistic?
* Trigger it for real if you can — for example, place a test checkout on your store for a cart recovery flow.

## 6. Publish

Click **Publish**. From this moment, new trigger events enter the flow. Contacts already mid-flow continue even if you later pause the automation for new entries.

<Note>
  Editing a published automation creates a new version — contacts who entered before your edit finish on the path they started, while new contacts get the updated flow.
</Note>

## Monitor and iterate

Give a new automation a week, then open its [analytics](/automations/analytics). The most common improvements: tightening the first delay, rewriting the first subject line, and adding a coupon to the final email of a recovery flow.
