# Workflows (/en/businesses/marketing/workflows)

A workflow does the follow-up you would do by hand if you had time for every customer. When something happens, such as a first booking, a birthday or a renewal payment that fails, the workflow takes that customer through the steps you set: wait, check, send an email, give credits, ask a colleague to call. It runs for each customer on their own schedule, every day, without anyone remembering.

<Callout>
  Workflows are a paid add-on. To get them, press **I'm interested** on the
  **Workflows** page in the dashboard, and Thril's sales team contacts you.
</Callout>

---

## Ready-made templates [#ready-made-templates]

**Start from a template** gives you a working workflow to adjust.

| Template                            | What it does                                                                                                                                                   |
| ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Birthday reward**                 | A discount code on the customer's birthday, a bigger one for your best customers                                                                               |
| **Booking reminders**               | An email the day before a booking and a push two hours before                                                                                                  |
| **Overdue invoice reminders**       | Two reminders a week apart, then a task for staff to call                                                                                                      |
| **Failed renewal payment**          | Emails a member who still owes contract or notice periods when a renewal is a week overdue. After another week unpaid, staff can approve credits to keep them  |
| **Bring back lapsed players**       | Tests two messages on customers who join your lapsed list or your no-show list, and gives staff a call task for those who still haven't booked two weeks later |
| **Win back first-time visitors**    | A discount for customers who came once and not in 30 days, and a staff task if the code goes unused                                                            |
| **Membership tiers by spend**       | Every month, moves customers between bronze, silver and gold memberships by how much they have spent                                                           |
| **Thank customers for rating**      | Credits and a thank-you email the first time a customer [rates the venue](/businesses/marketing/ratings), whatever the stars                                   |
| **Ask for feedback after an event** | A [survey](/businesses/marketing/surveys) by email the day after a customer is marked present at an event                                                      |
| **Follow up on low scores**         | A task for staff to get in touch when a customer gives a low score in a survey                                                                                 |

**Start from a template** lists the rest.

---

## Building a workflow [#building-a-workflow]

### Triggers [#triggers]

The trigger decides who enters the workflow and when. Each time it fires for a customer, a run starts for that customer.

| Kind of trigger       | Examples                                                                                                                                                 |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Something they do     | New customer, first booking, a reservation made or cancelled, a visit ends, marked present at an event, rates the venue or an employee, answers a survey |
| Time around a booking | Before a reservation starts                                                                                                                              |
| Dates and money       | Birthday, an invoice becomes overdue, a membership renewal payment fails                                                                                 |
| Lists                 | Customer is added to a list, or removed from one                                                                                                         |
| A schedule            | Every morning, every day or every month, for the customers on a list at that moment                                                                      |

With a list trigger, a [customer list](/businesses/marketing/customer-lists) decides who enters. Build a dynamic list of "one visit, last visit more than 30 days ago" and start a workflow from it. Each customer who starts to match the list enters the workflow.

### The steps [#the-steps]

- **Wait**, **Wait until** and **Wait for an event** pause the run for a time, until a date, or until something happens, such as a discount code being redeemed, with a time limit.
- **Condition** continues only when it is met. **Branch** sends customers down the first route that matches, such as your best customers and everyone else. **A/B split** shares customers between two or more versions and shows which message works better.
- **Stop if** checks before every step and after every wait. Use it for whatever makes the rest of the workflow pointless, such as a customer who booked again or withdrew consent.
- Actions do the work. They send an email, with the same consent rules as [Emails](/businesses/marketing/emails), a push in the Thril app, a message in [chat](/businesses/customers/chat) or a [survey](/businesses/marketing/surveys/sending#automatically-with-workflows). They create a personal [promo code](/businesses/marketing/promo-codes), grant credits or a session card, give or take away a membership, add a customer to a list or remove them, and create a task or an email for your staff.
- **Send webhook** passes the run to your own systems, such as a CRM, with the values you pick. It works with the [Thril Public API](/businesses/integrations/public-api), which Thril adds on request.

### Automatic, approved and manual actions [#automatic-approved-and-manual-actions]

- **Auto** runs on its own.
- **Ask first** waits until a staff member approves or rejects it. Use it for anything that costs money, such as credits for a member about to leave.
- **By hand** makes it a task. Staff do it and mark it done or not done, and the run goes on down the route you set for each.

Staff see the approvals and tasks that wait for them in the dashboard.

### Goal and repeat runs [#goal-and-repeat-runs]

A **Goal** says what the workflow is for: the customer **Makes a reservation**, **Makes a purchase** or **Buys a membership** within a number of days. A run ends when the customer reaches it, and the workflow shows how many did.

A workflow follows a customer, or a booking when it starts from bookings. Each customer or booking goes through once. **Allow repeat runs for the same record** lets them through again after a wait you set. A welcome series reaches each customer once, and booking reminders go out for every booking.

---

## Publishing and changes [#publishing-and-changes]

**Test run** walks a draft through for a customer you pick, or with values you enter. It reads live data and writes nothing.

Publishing a change to a running workflow asks what happens to customers already in it. **Keep running customers where they are** lets them finish on the old version, and only new runs get the new one. **Update the running workflow** moves them to the new one.

Turning a workflow off stops new customers from entering. Customers already in it finish their runs.
