---
title: "Choosing a trigger - Workflow Suite"
description: "The kinds of triggers in Workflow Suite, how fast and how reliable each one is, the badges in the trigger picker and how to change a trigger."
canonical: "https://docs.workflow-suite.app/choosing-a-trigger"
---

# Choosing a trigger

The trigger decides when a workflow starts and what data its steps get. A workflow has exactly one trigger. There are close to 300 to choose from.

## Pick or change the trigger

1. Select the trigger at the top of the canvas.
2. Select **Change trigger**. **Choose what starts this workflow** opens.
3. Use **Search triggers**, for example `order paid`, or browse the categories.
4. Pick a trigger. The side panel shows its description, its options and the filter.

Changing the trigger changes the event your steps read. Check the fields that use `event.payload` afterwards; the problems button above the canvas helps.

## The kinds of triggers

| Kind | Starts when | How fast | Read more |
| --- | --- | --- | --- |
| Shopify events | Shopify reports that something happened: order created, product updated, refund created | Seconds | [Shopify events](https://docs.workflow-suite.app/shopify-events.md) |
| Change triggers | One field changed, with the value before and after: tags added, price changed, back in stock | Seconds | [Change triggers with before and after values](https://docs.workflow-suite.app/change-triggers.md) |
| Metafield and metaobject triggers | A metafield or a metaobject entry changed | Seconds, or a few minutes for resources Shopify sends no event for | [Metafield and metaobject triggers](https://docs.workflow-suite.app/metafield-and-metaobject-triggers.md) |
| On a schedule | At the times you set | On the minute | [Schedules](https://docs.workflow-suite.app/schedules.md) |
| Incoming webhook | Another system sends a request to the workflow's secret URL | Seconds | [Incoming webhooks](https://docs.workflow-suite.app/incoming-webhooks.md) |
| Run manually, Started by another workflow | You press Run now, or another workflow starts this one | At once | [Manual runs and workflows started by another workflow](https://docs.workflow-suite.app/manual-runs-and-started-by-another-workflow.md) |
| Checked every few minutes | The app asks your store every 5 minutes, because Shopify sends no event: blog posts, pages, expired discounts, order display status | A few minutes | This page, below |
| Storefront behaviour | A shopper viewed a product, searched, added to cart | Seconds, best effort | [Storefront behaviour triggers](https://docs.workflow-suite.app/storefront-behaviour-triggers.md) |
| Waiting triggers | Something did NOT happen in time: an abandoned checkout, a visit without a purchase | After the waiting time | [Abandoned checkout and left without purchase](https://docs.workflow-suite.app/abandoned-checkout-and-left-without-purchase.md) |

## Badges in the picker

- **Personal data** - the event contains names, email addresses or postal addresses. It is stored, encrypted, with each run in the run history.
- **Current** - the trigger the workflow uses now.
- **Show unverified triggers** - by default the picker lists the triggers we fired for real and checked. The others use Shopify's documented event and should work the same way; tick the box to see them.

## Triggers that need something first

- **A permission.** A trigger only receives events for store data you granted. The panel shows **This trigger needs a permission** with a button to the Permissions page. See [Permissions and store data access](https://docs.workflow-suite.app/permissions-and-store-data-access.md).
- **Shopify's approval for customer data.** Order, customer, draft order, checkout, fulfillment and company events contain protected customer data. Shopify only delivers them to an app it has approved for that data. If such a trigger stays silent, see [Permissions and store data access](https://docs.workflow-suite.app/permissions-and-store-data-access.md).
- **Shopify Plus.** A few events only exist on Plus stores.

## Triggers checked every few minutes

For some changes Shopify sends no event at all. The app checks your store every 5 minutes instead, only while a workflow that needs it is turned on:

- **Blog created or updated**, **Blog post created or updated**, **Page created or updated**
- **Discount expired** - discounts that ended before the workflow was turned on do not start it
- **Order display status changed** - the fulfillment status shown in the Shopify admin, for open orders of the last 30 days
- **Company location tax exemptions changed**

These can arrive a few minutes after the change. The first check only takes note of what exists; it starts nothing.

## First-time customer order

**First-time customer order** starts when a customer places their first order. The app asks Shopify for the customer's number of orders when the order comes in. An order without a customer (guest checkout) does not start it.

## One trigger, fewer runs

A trigger filter stops events you do not care about before a run starts, and those events do not count against your plan. See [Trigger filters](https://docs.workflow-suite.app/trigger-filters.md).
