Shopify Flow vs. a Tagging App: What Flow Actually Does, and When an App Still Saves You Time
Disclosure: I build a Shopify tagging app, MSS Order Tagger: Auto Tags, so read this knowing which side I'm on. I've tried to give Flow full credit, with links to Shopify's own documentation for every number. Prices are in the box at the end.
The short answer
Shopify Flow can do more than most tagging-app vendors admit, me included. Conditions with AND and OR, conditions that look at the order's customer and line items, delays, scheduled runs, and runs on records you already have are all documented features. Flow is free and it's Shopify's own.
If you have one or two tagging rules and they only need to react to new orders, start with Flow. An app earns its fee when the number of rules, the backfill of existing customers, or the upkeep starts eating your time. The rest of this article shows where that line sits.
What Flow does (with Shopify's docs)
- It's free on most plans. Flow is a free app on the Basic, Grow, Advanced and Plus plans. You don't need Shopify Plus to tag orders or customers with it.
- Compound conditions. A condition can combine several criteria with AND ("true only if every criteria that you set is true") or OR ("true if any one of the criteria that you set is true"). For lists like line items, Flow offers At least one of, None of and All of. Source: Flow conditions reference.
- Conditions on related data. An order workflow can check the order's line items and the order's customer, then tag the customer. Shopify's own getting-started example does exactly this: Order created trigger, a condition on spend of $500 or more, and the Add customer tags action with a
VIPtag. Fields likeorder.customerare available as variables. - Delays. The Wait action pauses a workflow for up to 90 days.
- Scheduled runs. The Scheduled time trigger can run a workflow as often as every 10 minutes.
- Fetching records. Get data actions (Get customer data, Get order data, Get product data and more) pull a list of records into a workflow, up to 100 items per list.
- Runs on existing records. You can run a workflow manually on up to 50 orders, draft orders, customers or products at a time, from the admin, for workflows that use a supported trigger such as Order created, Order paid or Customer created.
- Tag actions. Add customer tags, Add order tags, Remove customer tags and the other tag actions are all in the actions reference.
That covers most tagging jobs. The question is how much work each one takes.
Where the effort goes
Flow's limits are documented, and each one has a documented workaround. The cost is your time, not a missing feature.
Backfilling in batches. A manual run handles up to 50 records. Tagging 2,000 existing customers that way is 40 rounds of select, run, repeat. Fine once; tedious if you add a new rule every month.
Sweeps for larger lists. For thousands of records, the usual pattern is a scheduled sweep:
- Scheduled time trigger, every 10 minutes.
- Get customer data with a query that finds customers who match and don't yet carry a helper tag, for example
swept. - For each loop (iterate) over the results: apply your tag, then add
sweptas the last step. - When the query stops returning customers, turn the workflow off.
At 100 records per run and one run every 10 minutes, that's up to about 600 records an hour, so 10,000 customers is roughly 17 hours of scheduled runs. It works. It also means writing a search query, and Shopify's Get customer data page warns that when a query fails, "Often the API will return all results (instead of none)." Test on a narrow slice before you let it loose.
One free shortcut worth knowing: for a one-time customer backfill, the customer query editor on the Customers page plus the bulk Add tags action is often faster than either method. Filters such as number_of_orders and products_purchased are listed in Shopify's segment query language reference, and the bulk actions page shows how to select every customer in a segment.
Delays longer than 90 days. The Wait action tops out at 90 days per workflow. Shopify's own Wait page points to the workaround: a scheduled workflow with a Get data action. A segment-based trigger, Customer joined segment, is another route for customer rules. Either works; both take more setup than a single Wait step.
Removing tags. Adding a tag is one workflow. Taking it off again when a customer or order no longer matches is usually a second workflow with a remove action. Worth planning from day one.
Reading the logic later. Each rule is a workflow you build on a canvas: triggers, conditions, branches. That's powerful, and it's very readable to the person who built it. Five or ten of them, built by different people over a year, take longer to audit.
When Flow is enough
Flow is the right call, and you can stop reading, if most of these are true:
- You have one to three tagging rules.
- They only need to react to new orders or new customers.
- Your existing-customer backfill is a one-time bulk edit, or a few manual runs.
- Whoever maintains the workflows is comfortable in the Flow editor.
- You rarely need to remove a tag once it's on.
Plenty of stores fit this description, and for them an app is an extra bill for no real gain.
When an app earns its fee
A tagging app is mostly a time-saver on top of the same idea. It earns its price when:
- You have many rules. Each Flow rule is its own workflow plus, often, its own backfill. In an app, a rule is one form.
- You want nested logic you can read at a glance. For example: (5 or more orders AND not tagged
wholesale) OR any single order over $500. In Flow you build that from condition steps, and it works; in a rule builder it's two groups of dropdowns on one screen. - You need existing customers tagged, not only new ones. In my app, on the Growth or Pro plan, one click applies a rule to existing customers and the last 60 days of orders. For rules that depend on older orders, that window is a real limit, and a free admin bulk edit covers the rest.
- Non-technical staff maintain the rules. A rule builder with fixed choices, validation before a rule goes live, and a preview against real store data is easier to hand over than a canvas of workflows.
- You need to answer "why was this tagged?" An activity log of every tag change makes that a lookup.
- You want tags to come off on their own. Automatic removal when a record stops matching saves building the second workflow.
Whatever app you consider, check two things before you rely on it: how recently it was updated, and how quickly the developer answers support questions. A tagging app touches every order, so an unmaintained one is a risk.
Decision checklist
Answer yes or no:
- Do you have, or expect to have, more than three tagging rules?
- Do you need tags on customers you already have, more than once (for example, every time you add a rule)?
- Will someone other than the person who built the rules maintain them?
- Do you need tags removed automatically when a customer or order stops matching?
- Do you need a log that answers "why does this record have this tag?"
Mostly no: use Flow for new events and the admin bulk edit for existing customers. Both are free.
Two or more yes: an app is likely worth a look. Try it on a free plan first, then decide whether the paid backfill and the extra rules are worth the monthly fee for your store.
Disclosure and prices
About this article. It was written by the developer of MSS Order Tagger: Auto Tags, a tagging app on the Shopify App Store. Everything in the Flow sections works without the app.
Prices as shown on the app's Shopify App Store listing on October 27, 2026: Free plan (2 active rules, 100 tag applications per month, no one-click apply to existing records); Starter $4.99/month; Growth $12.99/month; Pro $39.99/month; annual billing is not offered. The one-click apply to existing customers and the last 60 days of orders is on Growth and Pro. There is no free trial.