Zapier Filters, Paths and Formatter: Multi-Step Zaps
Practice5 minInnovialabs editorial team
In short
Filter stops a Zap when data does not qualify, Paths runs different action chains based on conditions, and Formatter reshapes dates, text and numbers; put filters as early as possible so unneeded actions never spend tasks.
The short version: which tool does what
In a multi-step Zap, three built-in tools solve three different problems:
| Tool | What it does | When you need it |
|---|---|---|
| Filter | Lets a run continue only if a condition is met | You want to process some events, not all |
| Paths | Splits the Zap into branches with their own rules and actions | Different data needs different handling |
| Formatter | Transforms values: dates, text, numbers, lists | The source format does not fit the destination |
A typical setup: a Filter drops spam leads, Formatter cleans the phone number and date, and Paths routes leads by city to different CRM pipelines.
Filter: stop runs you do not need
A Filter by Zapier step sits between the trigger and the actions. You define an "only continue if" rule: a field, a comparison type and a value.
Useful comparison types:
- Text: contains, exactly matches, is in (one of a list);
- Number: greater than, less than;
- Date/time: after, before;
- Exists / Does not exist — the field is filled or empty.
Conditions can be combined with AND (all must pass) and OR (any one is enough). When a filter blocks a run, the Zap stops, and Zap History shows which condition stopped it.
Key rule: place the filter as close to the trigger as possible. Any action that runs before the filter is already spent, even if the run stops later. If the trigger itself can filter (a specific form, folder or status), use that setting so unwanted events never enter the Zap.
Paths: branching logic
Paths by Zapier creates several branches, each with its own rules and action chain. For example:
- Path A: order total above a threshold — notify a manager in Slack and create a CRM task;
- Path B: total below the threshold — just add a row to Google Sheets;
- Path C: the city field is empty — send an email asking for details.
The crucial detail: branches are evaluated independently. If two branches' conditions are both true, both run. To avoid that, make conditions mutually exclusive: "greater than or equal" in one branch, "less than" in another, and a separate branch with Does not exist for empty values.
Paths is not available on every plan, so check yours. If the number of branches keeps growing, consider splitting the logic into several Zaps or moving the decision into a Lookup Table.
Formatter: dates, text and numbers
Formatter by Zapier is a transformation step. The main modes:
Date / Time
- Format — convert a date to the format you need, such as
YYYY-MM-DDfor an API orDD.MM.YYYYfor an email, with an explicit time zone; - Add/Subtract Time — get "three days from now" for a task deadline;
- Compare Dates — calculate the difference between two dates.
Text
- Trim Whitespace, Capitalize, Lowercase — normalize names and emails;
- Replace — strip unwanted characters, like spaces and brackets in phone numbers;
- Split Text — split "First Last" into parts;
- Extract Email / Extract Number — pull a value out of free text;
- Default Value — fill in a value when a field is empty.
Numbers
- Format Number — thousands separators and decimal marks;
- Perform Math Operation and Spreadsheet-Style Formula — calculate a discount, tax or line total;
- Format Phone Number — convert a number to international format.
Utilities
- Lookup Table — map values, for example "tashkent" to the ID of the responsible manager;
- Line Itemizer — work with lists of order items.
Tip: one Formatter step per transformation, with a clear name like "Format date for CRM" instead of "Formatter 3".
Keeping task usage under control
Tasks are counted for actions that run. Built-in steps follow their own counting rules, which Zapier has changed over time, so check the current help docs. The general principles stay the same:
- Filter right after the trigger — a stopped run does not spend the actions after the filter.
- Filter at the trigger level — fewer runs overall.
- Avoid loops. If a Zap updates a record and the trigger fires on updates to that same record, you get an endless cycle. Add a filter on a marker field such as "processed by Zapier".
- Prevent duplicates. Use a Find step to check whether a record exists before creating a new one.
- Review Zap History regularly to see which Zaps consume the most and where runs stop.
Common mistakes
- Text filters are sensitive to spelling: "Tashkent" and "tashkent " with a trailing space are different values. Normalize with Formatter first, then filter.
- Comparing numbers as text: make sure you picked a condition from the Number group.
- Dates without a time zone: an evening event may shift to the next day.
- Overlapping conditions in Paths that make two branches run.