> This page is part of the [Customer.io documentation](https://docs.customer.io). For the complete index, see [llms.txt](https://docs.customer.io/llms.txt).
> Last updated: July 15, 2026

# Create an automation

Automations are automated workflows that send messages and perform other actions when profiles meet certain criteria. This page takes you step-by-step through creating an automation from scratch.

 New to automations?

Check out [automation concepts & settings](/messaging/send/automations/overview/) to get started.

Here’s a brief video showing the main components of our automation builder.

And here’s a walkthrough on creating an onboarding automation!

## Before you begin

Before you begin, determine the purpose of your automation. This will help you define the trigger and goal of your automation. Are you trying to reach profiles that have just signed up? Are you interested in notifying profiles about changes to accounts they manage? Or maybe you want to promote a new feature in your product?

Check out our [recipes](/messaging/send/recipes/welcome-email/) to see if we’ve covered your use case!

## Create an automation & set a trigger

To create an automation from scratch:

1.  Go to Automations. Then click **Create Automation**.
    
    [![An automation landing page with a list of automations in a table.](https://docs.customer.io/images/campaign-landing-latest-create-campaign.png)](#b15a58e99f82d3a85cd9f29ca3ac9f35-lightbox)
    
2.  Click **Choose trigger** on the canvas.
3.  Select a [trigger type](/messaging/send/automations/triggers/).
    
    [![The trigger options include attribute or segment, event, form submission, and more.](https://docs.customer.io/images/campaign-triggers-2025.png)](#d09db880886c821713875b7f1acbd5e2-lightbox)
    
    Our most popular trigger is **Attribute or Segment**; it’s how you trigger automations based on a change to a profile. After you save this trigger, you can change how often your audience enters the automation through the [frequency setting](/messaging/send/automations/triggers/#frequency).
    
    [![An attribute condition is specified and the frequency is set to once.](https://docs.customer.io/images/campaign-triggers-2025-2.png)](#27d2072f7ed00c15fae57e295d4b7982-lightbox)
    

## Configure automation settings

Configure the automation’s settings so you can:

*   Easily identify the purpose of the automation through the name, description, and tags
*   Track the success of the automation through a goal
*   Limit who receives messages through subscription preferences
*   Determine whether profiles exit early through exit conditions

Check out this walkthrough on configuring these settings:

### Add a name, description, or tags

1.  Click the pencil icon next to the automation name in the top left to change the **name** so your team members can easily find the automation on the landing page.
    
    [![A picture of the canvas where the title dropdown is open.](https://docs.customer.io/images/campaign-landing-latest-create-campaign-name.png)](#feb57f6cc88eb987efd164bfaf84f042-lightbox)
    
2.  (Optional) Add a **description** so your team members can tell what the purpose of the automation is.
3.  (Optional) Add one or more [**tags**](/messaging/send/tagging-automations/) to help you organize and filter your automations on the landing page.

### Set a goal, message settings, and exit criteria

Click to manage these automation settings:

1.  [Choose a goal](/messaging/send/automations/conversions/). Click **Set goal** and fill in the details, or you can choose “No goal” if you don’t want to measure the success of an automation against specific conversion criteria.
    
    [![The automation goal is set. The conversion criteria is profiles leave a segment. The conversion window is within 1 week of being sent any delivery from this automation.](https://docs.customer.io/images/campaign-goal-2.png)](#d4c5c0f67b44e1f486628df4c4143255-lightbox)
    
2.  Modify your *Message settings*: which subscribers receive messages and whether messages count towards your message limit.
    *   Set which [subscription center](/messaging/channels/subscriptions/center/) topic profiles must be subscribed to to receive messages. If you don’t have the subscription center enabled, your automation sends to profiles that are [globally subscribed](/messaging/channels/subscriptions/unsubscribes/).
    *   Set a [message limit](/messaging/send/timezones/message-limits/) if you want profiles to only receive a certain number of messages from you over a period of time.
        
        [![A subscription topic is selected in Messages.](https://docs.customer.io/images/campaign-goal-message-settings.png)](#2d1c3320db42aa008fda48821ae0702d-lightbox)
        
3.  Click **Exit conditions** to specify if or when a profile can exit your automation early.
    
    [![campaign-exit-criteria-default.png](https://docs.customer.io/images/campaign-exit-criteria-default.png)](#4b187ca5735256a29b60e0b7dc2db015-lightbox)
    

## Build your workflow

Build the workflow that profiles will follow after triggering the automation. When a profile moves through an automation, we call that a **journey**.

Click **Add** at the bottom of the workflow. Click and drag a [message, data, delay, or flow control block](/messaging/send/workflows/builder/#configuring-workflow-items) from the panel onto your canvas. After you add your first block, you can drop subsequent blocks over any plus sign.

[![A full view of the canvas where the add menu is open on the right and a workflow has been created in the middle.](https://docs.customer.io/images/campaign-workflow-builder.png)](#b4343648b8883c37fab0f5fa68352413-lightbox)

Here’s a walkthrough of setting up an email in an automation:

 Shortcuts & useful features

Click keyboard shortcuts (`?`) in the automation settings menu for a full list, use **Screenshot workflow** to export a picture of your workflow, zoom in and out, or add sticky notes to inform team members of important details.

## Review & start your automation

Before you start your automation, you likely want to change the *Sending Behavior* for all your messages from **Queue Draft** to **Send Automatically**.

By default, all messages are set to “Queue draft.” This means you have to manually send them after profiles reach your message block in the workflow. If you want messages to send automatically, click into each message and adjust the dropdown:

[![An email is selected on the canvas of an automation. Settings is expanded and the send behavior is set to send automatically.](https://docs.customer.io/images/campaign-sending-behavior.png)](#977d285a1d713c9d440d45d85a96c05a-lightbox)

After you’re finished building your workflow, click **Start Automation**. If you haven’t fully set up your automation, click **Review items** and complete setup.

1.  Depending on the type of automation you’re making, you may need to specify whether you send to all profiles that meet your conditions or just profiles added to your workspace after you start the automation.
    
    [![The review modal shows two options: send to current profiles and future additions or future additions only.](https://docs.customer.io/images/campaign-review.png)](#5903b105d9373dcb3afac2e8404b93da-lightbox)
    
2.  Click **Start Automation**.

Congrats! You created an automation from scratch! You’ll land on your automation’s overview page where you’ll see a breakdown of metrics, drafted messages, sent messages, and all of your customers’ journeys through the automation.

*   *   [Before you begin](#before-you-begin)
    *   [Create an automation & set a trigger](#create-a-campaign)
    *   [Configure automation settings](#configure-automation-settings)
        *   [Add a name, description, or tags](#add-a-name-description-or-tags)
        *   [Set a goal, message settings, and exit criteria](#set-a-goal-message-settings-and-exit-criteria)
    *   [Build your workflow](#build-your-workflow)
    *   [Review & start your automation](#review--start-your-automation)

Copy page

Copy page [Download .md](/messaging/send/automations/create-an-automation.md)

Is this page helpful?

![](https://docs.customer.io/images/export-success.png) ![](https://docs.customer.io/images/export-failure.png)

# How can we make it better?

Close

Do you need help from Customer.io support?  No  
 Yes

What part of Customer.io do you need help with? 

How can we improve this page?

Email (optional):  Please provide a valid email address

 I am not a bot

 

We appreciate your feedback!

Our support team will contact you as soon as possible
