Contact Book a call

Guide · Automation platforms

How to migrate from Zapier to n8n

A seven-step Zapier to n8n migration: check it pays, export and inventory your Zaps, map the concepts, reconnect credentials, run both in parallel and cut over.

Pranav MahaveerFounder, SBD

Updated

Reading time7 minutes

Markdown version

The short answer

Decide first whether the move pays and who will own n8n. Export your Zaps as JSON, list every live one, and rebuild each in n8n: there is no automatic converter. Recreate every credential, attach an error workflow, run both platforms side by side until the outputs match, then switch triggers over one at a time and turn Zapier off.

Moving from Zapier to n8n is mostly a rebuild, not a file transfer. Both tools describe workflows in JSON, but the formats do not line up and neither vendor offers a converter. What you can carry across is the logic, and the export gives you a precise record of it.

This guide covers the decision, the export, how Zapier’s building blocks map to n8n’s, credentials, the parallel run and the switch-off. If you are still choosing a platform, start with n8n vs Make vs Zapier, which does the pricing side by side.

1. Decide whether the move pays

People move for four reasons: cost as volume grows, long workflows that are expensive per run, the need to keep data on their own infrastructure, and logic that has outgrown no-code steps. The billing difference is the usual trigger. Zapier counts tasks per action step, while n8n counts a whole workflow run as one execution, so a ten-step workflow is billed very differently. The arithmetic is in the Zapier tax in 2026 and the comparison guide above. We will not repeat it here.

Moving is often not worth it when:

  • The bill is small and the Zaps are short. The migration costs more than years of the difference.
  • Nobody will own n8n. Zapier hides the plumbing. n8n, especially self-hosted, needs someone to watch executions, apply updates and fix things.
  • You depend on apps n8n has no node for and nobody is comfortable calling their APIs over HTTP.
  • The real problem is judgement, not plumbing. If you want an agent to make decisions, read does an AI agent still need Zapier? before moving anything.

Count the build time honestly. Every Zap is rebuilt and tested by hand, so the cost is mostly people’s hours. The how much does AI automation cost guide shows how to price that work, and the ROI calculator turns it into a payback period.

Decide cloud or self-hosted now, because it changes the credential and monitoring steps later. Our post on n8n self-hosted or cloud for a team under 50 works through it.

2. Export and inventory your Zaps

Zapier has three exports worth taking before you start:

ExportWhereWhat you get
Account dataSettings, Security and data, “Export my data”An emailed archive. Its Zapfile.json holds every undeleted Zap, with each step’s inputs and references to earlier steps
Zaps as JSONSettings, Security and dataYour own Zaps as a JSON file. Account owners and super admins can export every user’s Zaps. Zapier lists import and export as a Team and Enterprise feature
Zap historyZap HistoryUp to 5,000 runs at a time as CSV or JSON, emailed to you

The Zap JSON is your specification. The history tells you what real data looks like and how often each Zap runs, which you will need for testing.

Then build an inventory, one line per live Zap:

FieldWhat to write
Name and ownerWho relies on it, and who to ask when it looks wrong
TriggerApp and event, polling or instant, webhook URL if any
StepsCount, plus any paths, filters, Formatter, Code or Storage steps
Runs a monthFrom Zap history, not memory
Writes toEvery system it changes: CRM, email, accounting, sheets
DecisionKeep, merge with another Zap, or retire

Expect to retire some. Old accounts usually hold Zaps nobody remembers building, duplicates, and Zaps that are on but no longer run.

3. Map Zapier concepts to n8n

Most of Zapier has a direct n8n counterpart. The differences are in how data flows: an n8n node passes a list of items to the next node, and later nodes can read any earlier node’s output.

Zapiern8nNotes
ZapWorkflowOne workflow can replace several related Zaps
TriggerTrigger node (app trigger, Schedule Trigger, Webhook)Check whether the app trigger polls or listens
Action stepApp node or HTTP Request nodeHTTP Request covers any app with an API but no node
FilterFilter or If nodeIf gives you an explicit false branch to handle
PathsIf or Switch nodeBranches can rejoin later in the same workflow
FormatterEdit Fields (Set), built-in expressions, or Code nodeTest date and number formatting carefully
Code by ZapierCode nodeRewrite rather than paste; input and output shapes differ
Storage by ZapierA database, a sheet or a table you controlDecide where state lives before you build
Webhooks by ZapierWebhook nodeThe URL changes, so every sender must be updated
Task historyExecutions listOnly production executions count towards plan quotas
Looping by ZapierNative: nodes run once per itemUsually no loop step is needed

4. Set up credentials and re-authorise OAuth

Nothing secret comes across. Every app connection is created again in n8n, and each OAuth app needs someone with the right access to sign in again. Plan this per system owner, because the person who connected the CRM to Zapier three years ago may have left.

For some providers you also create your own OAuth client. With Google, for example, you copy the OAuth Redirect URL from the n8n credential into the provider console, and it must match exactly, including protocol and port, or sign-in fails with a redirect mismatch error.

If you self-host, n8n encrypts credentials with an encryption key. It generates one on first launch, or you set your own with N8N_ENCRYPTION_KEY. Set it explicitly and store it somewhere other than the server, because restoring a database without it leaves you with credentials you cannot read.

Exported n8n workflow JSON includes credential names and IDs, and HTTP Request nodes imported from cURL can carry auth headers. Check files before you share or commit them.

5. Rebuild or translate each workflow

There are two ways to rebuild, and most accounts need both.

Translate short, linear Zaps step for step. A trigger, a filter and two actions becomes a trigger node, a Filter node and two app nodes. It is quick and easy to compare against the original.

Rebuild anything long, branched or duplicated. Several Zaps that each react to the same form can become one workflow with a Switch node. Formatter chains often collapse into one Edit Fields node. Logic that was spread across Storage and paths may be clearer as a small table and one branch.

Whichever route, test each workflow with real payloads taken from the Zap history export, including the awkward ones: empty fields, long text, odd characters, duplicates. n8n’s manual executions do not count towards quotas, so test freely.

You can move finished workflows between environments with the editor’s Download and Import from File options, or with n8n’s command line and API.

6. Add error workflows and monitoring

In n8n you decide what happens, and if you decide nothing, failures can go unnoticed.

Create one error workflow that starts with the Error Trigger node and sends an alert to a named person or channel. Then, in each production workflow, open Settings and choose it under Error workflow. One error workflow can serve many workflows. The alert can include the workflow name, the last node that ran, the error message and a link to the failed execution.

Use the Stop and Error node where a run should fail on purpose, for example when a required field is missing. That routes bad data into the same alert path instead of passing it on.

Self-hosted teams also need to watch the instance itself: uptime, disk space and backups. That is the work covered in the self-hosting post linked above.

7. Run in parallel, cut over and decommission

Run both platforms side by side before you trust n8n. The risk is double writes: two platforms creating the same CRM record or sending the same email. Pick one of these for each workflow:

  • n8n writes to a test copy of the destination, and you compare its output with Zapier’s.
  • n8n runs up to the last step and logs what it would have written, without writing it.

Compare outputs over enough real runs to cover the cases in your inventory. Then cut over one workflow at a time: turn the Zap off, point the trigger or webhook sender at n8n, turn the n8n workflow on and watch the first executions.

When every Zap is off:

  1. Take a final Zap JSON export and keep it with the inventory.
  2. Leave Zapier on its lowest plan for a short safety period, if you can, in case something was missed.
  3. Revoke the Zapier connections in each app’s settings, so old tokens stop working.
  4. Downgrade or cancel the plan.

A migration is finished when Zapier is off and every n8n workflow has an owner and an error workflow, not when the last workflow is built. If you want a second opinion on whether the move pays, the build or buy tool helps frame it, and you can see where n8n and Zapier fit with other tools on our n8n and Zapier integration pages.

Checklist

0 of 12 done

Ticks are saved in this browser only.

Sources

  1. Zapier Help CenterExport or delete your Zapier account data (Zapfile.json contents), checked 29 October 2026
  2. Zapier Help CenterImport and export Zaps in your Team or Enterprise account, checked 29 October 2026
  3. Zapier Help CenterExport your Zap history (up to 5,000 runs, CSV or JSON), checked 29 October 2026
  4. n8n DocsExport and import workflows, checked 29 October 2026
  5. n8n DocsError handling: error workflows, Error Trigger and Stop and Error nodes, checked 29 October 2026
  6. n8n DocsExecutions (manual and production executions, quotas), checked 29 October 2026
  7. n8n DocsGoogle OAuth2 credentials (redirect URL must match exactly), checked 29 October 2026
  8. n8n DocsSet a custom encryption key, checked 29 October 2026

Questions

Can I import my Zaps straight into n8n?

No. Zapier exports Zaps as JSON, and n8n imports workflows as JSON, but the two formats describe different things. There is no official converter in either product. Use the Zapier export as a specification and build the n8n workflow from it.

Do my app connections move across?

No. Every connection has to be created again in n8n, and OAuth apps need you to sign in again. For some providers, such as Google, you also register the n8n OAuth redirect URL in the provider console, and it must match character for character.

How long does a Zapier to n8n migration take?

It depends on the number and shape of the Zaps more than on the platform. A handful of simple Zaps can move in days. An account with dozens of multi-step Zaps, paths and custom code takes weeks, most of it spent on inventory, testing and the parallel run rather than on building.

Should we move to n8n cloud or self-host it?

Cloud if nobody on the team wants to run a server. Self-hosted if you need the data on your own infrastructure and have someone to own updates, backups and the encryption key. Our post on self-hosted versus cloud for a team under 50 covers the trade-off.

Is it worth migrating if Zapier works?

Often not. If the bill is small, the Zaps are short and nobody wants to maintain workflows, staying put is a reasonable answer. Migration pays when volume, step counts, data control or custom logic are pushing against Zapier.

Next

Put it to work.

Cookie preferences

Choose what this site may use on your device. You can change this at any time from “Cookie settings” in the footer.

Strictly necessary

Keep the site working and remember the choices you make here. These cannot be switched off, and none of them track you.

Always on
What this includes (4)
NameProvider PurposeDuration
sbd-consentThis site Remembers your cookie choices12 months
Vercel Web AnalyticsVercel Inc. Counts page views in aggregate. Sets no cookie and stores nothing on your deviceNone
ticker-dismissed, sbd-note-offThis site Remembers that you closed a notice or language tipUntil the tab closes
sbd-voice-resume, sbd-voice-prefillThis site Carries a voice conversation across pages, only if you start oneUntil the tab closes

Analytics

Tell us which pages are read and where visitors leave, so we can improve them. IP addresses are anonymised and nothing is used for advertising.

What this includes (2)
NameProvider PurposeDuration
_gaGoogle Analytics (Google LLC) Distinguishes visitors with a random ID13 months
_ga_FPXDMQPRV1Google Analytics (Google LLC) Keeps the session state for this site13 months

Functional

Embedded services that set their own cookies. Without them the site still works; you get a link to open the service instead.

What this includes (1)
NameProvider PurposeDuration
Booking calendarCal.com Inc. Shows live availability and books the call on the booking pageSet by Cal.com

Advertising

Not used. This site has no advertising, retargeting or social media tracking, and we never sell data.

Not used

Questions about your data: hello@smallbaydigital.com