STACKD
Build your stack
← Blog
How-To9 min read

n8n vs Zapier: the case for self-hosted automation

Zapier is easy to start with. n8n self-hosted is what serious operators build on. Here's the honest comparison — pricing, power, and when to switch.

The honest answer before we start

Most "n8n vs Zapier" articles are written by affiliate marketers. They pad the comparison with feature tables that obscure the single most important question: *what does this actually cost when your workflows are doing real work?*

Here's the honest version.

Zapier is the best on-ramp to automation in existence. If you've never built a workflow before, it will get you from zero to a working Zap in under ten minutes. The interface is polished, the documentation is excellent, and 8,000+ apps means your obscure tool probably has a connector.

n8n self-hosted is what you build on once you know what you're doing. It's open-source, runs on your infrastructure, costs a fraction of Zapier at volume, handles complexity that Zapier cannot, and has native LangChain nodes built into the canvas for AI-native workflows. The catch: you need a server, and you need to be comfortable running Docker.

If you're a founder or ops lead who's already outgrown Zapier's free tier and is staring down a £200+/month bill — or who needs your automation to process data without it leaving your infrastructure — this comparison is for you.

We're going to cover pricing (real numbers, no ranges), the architectural differences that matter, a concrete workflow example built both ways, and the honest case for self-hosting n8n if you're not a DevOps engineer.

The cost gap at working scale

£0/mon8n self-hosted software costOpen-source Community Edition, Apache 2.0 licence
~£4–5/moHetzner CX23 VPS to run itEUR pricing; add VAT for your jurisdiction
~£17/mon8n Cloud Starter (annual billing)2,500 executions/mo — managed, no server needed
~£17–25/moZapier Professional (annual billing)750 tasks/mo — costs scale fast with multi-step Zaps

How the pricing models actually work

This is where most comparisons go wrong by treating "tasks" and "executions" as equivalent. They are not.

Zapier: task-based billing that punishes complexity

Zapier counts *actions*. Every successful action step in a Zap that runs consumes one task. A Zap with four action steps uses four tasks per execution. This is the structural problem with Zapier at scale: the more sophisticated your workflow, the more expensive it gets per run.

At the Professional tier (approximately £17–25/month on annual billing), you get 750 tasks per month. That sounds reasonable until you have a booking confirmation workflow with six steps — which burns through your 750-task allowance in 125 bookings. A busy service business doing 400 bookings per month would need the Team tier at minimum.

The Team plan (approximately £60–90/month) gives 2,000 tasks and adds shared workspaces. But 400 bookings × six steps = 2,400 tasks — you'd still be hitting overages.

Overage billing kicks in automatically at Zapier's pay-per-task rate, capping at three times your plan limit before workflows start failing. This is the billing behaviour that catches operators off guard.

n8n Cloud: execution-based, unlimited steps

n8n Cloud bills per *workflow execution*, not per node run. That six-step booking confirmation workflow costs one execution — whether it has six nodes or 60. The Starter tier at approximately £17/month (annual, billed in EUR at ~€20/mo) gives 2,500 executions. Four hundred bookings per month costs you 400 executions — leaving 2,100 for everything else.

The Pro tier at approximately £43/month (€50/mo annual) gives 10,000 executions monthly with 20 concurrent runs and admin roles.

n8n self-hosted: the real numbers

Self-hosted n8n (Community Edition) is free software. Your cost is infrastructure.

A Hetzner CX23 instance — two vCPUs, four GB RAM, 40 GB SSD — runs at approximately €3.99/month in Germany or Finland, excluding VAT. Add an IPv4 address (€0.50/mo) and automated backups (+20%, so roughly €0.80/mo) and you're at around £5–6/month all-in.

That instance will comfortably run n8n with up to a few hundred thousand monthly executions, depending on workflow complexity. There is no execution ceiling. There is no task ceiling. You run as many workflows, as complex as you like.

The trade-off is real: you manage the server, handle updates, and own the ops overhead. We'll come back to this.

Zapier Team
n8n self-hosted
Monthly cost at 5,000 executions
£90+/mo (overages)
~£5/mo VPS
Billing model
Per action step (punishes complexity)
No limits — own your infrastructure
Multi-step workflow (6 steps, 400 runs/mo)
2,400 tasks consumed
400 executions consumed
Data sovereignty
Data processed on Zapier servers
Data never leaves your server
AI/LangChain nodes
No native LangChain — use separate AI tools
70+ native AI nodes on the canvas
Code nodes / custom logic
JavaScript only, sandboxed
Python or JavaScript, full npm access
Self-hosted option
None
Free, open-source (Apache 2.0)
Setup time
Under 10 minutes
1–2 hours (Docker + SSL + domain)

Where Zapier is genuinely better

Being fair matters, so here it is plainly.

**Zapier's integration breadth is real.** At 8,000+ apps, Zapier covers niche tools that n8n hasn't built official nodes for. n8n has 400+ official integrations and roughly 6,000+ community nodes — but community nodes vary in quality and maintenance. If your workflow depends on a specialist B2B SaaS with no active community, Zapier is more likely to have a polished connector.

**Zapier's onboarding is genuinely excellent.** The visual editor, the Zap templates, the Copilot AI assistant — these make it possible for a non-technical operator to build useful automation without reading documentation. n8n's editor is powerful but has a steeper initial curve.

**Zapier doesn't require a server.** For a business that has no DevOps resource and doesn't want one, this is a real advantage. n8n Cloud closes the gap, but it's still more complex to configure than Zapier.

If you're a solo operator, your workflows are simple, and you're on Zapier's Professional plan at £17/month — stay there. The cost-benefit calculation only changes once you're doing volume, need complexity, or have data sovereignty requirements.

Where n8n self-hosted is categorically different

Complexity ceiling

Zapier is designed for linear, trigger → action chains. It handles branches (Paths), filters, and delays, but the mental model is a sequential flow. n8n uses a proper directed graph — nodes can fan out, merge, loop, and call sub-workflows. You can build workflows that would require custom code in Zapier with no-code nodes in n8n.

Error handling is a specific example. In Zapier, when a step fails, you get an email and the task is marked as failed. In n8n you can wire an error branch with its own logic: retry the step, post to Slack, write to a dead-letter queue, and alert a human — all within the same workflow.

AI-native workflows

n8n's LangChain nodes are native to the canvas. You can build a full RAG (retrieval-augmented generation) pipeline — document ingestion, vector storage, LLM query, output formatting — using drag-and-drop nodes. The AI Agent node wraps LangChain's agent loop; you connect it to a model (OpenAI, Claude, Gemini, Ollama for self-hosted inference) and give it tool nodes that can call any other n8n workflow.

Zapier has its own AI features, but they're service-level integrations, not composable building blocks. You can't wire a persistent memory module to an LLM and expose it as a tool that triggers your CRM — not without leaving Zapier's environment.

Data sovereignty

Every piece of data that passes through a Zapier Zap transits Zapier's infrastructure. For most automation this is fine. For anything involving customer personal data, payment data, health information, or commercially sensitive operational data, it creates compliance exposure — particularly under GDPR, where data processor agreements matter.

n8n self-hosted means your data never leaves your infrastructure. Your automation server in Frankfurt isn't sending customer booking data to a third-party SaaS. This is not a theoretical concern — it's a hard requirement for certain regulated industries.

"We moved everything off Zapier when we realised our client intake process was routing sensitive data through three different SaaS platforms we'd never audited."

Operations director, UK professional services firm

A concrete example: booking confirmation workflow

Let's build the same workflow in both systems. The scenario: a new booking comes in via Cal.com, a confirmation email goes out, Stripe is charged for the deposit, and the client is created in Frappe CRM.

The Zapier approach

Trigger: Cal.com booking created (requires Cal.com Zapier integration).

Steps: 1. Filter: check booking type (one task) 2. Gmail/Mailgun: send confirmation email (one task) 3. Stripe: create a payment intent (one task) 4. Formatter: prepare client data (one task) 5. Zapier doesn't have a native Frappe node — you'd use a Webhooks step to POST to Frappe's REST API (one task)

That's five tasks per booking execution. At 400 bookings per month: 2,000 tasks consumed. You'd need the Team tier.

Zapier also doesn't have a native Stripe node for creating payment intents — you'd use the Stripe integration for basic operations or, again, webhooks for anything custom.

The n8n approach

Trigger: Cal.com node (native) — webhook, zero polling.

Steps: 1. IF node: check booking type (no execution cost — it's a branch, not a separate task) 2. Email node: send confirmation 3. Stripe node (native): create payment intent 4. Frappe node (native): create or update contact

That's one execution. Native nodes for Cal.com, Stripe, and Frappe mean no custom webhook configuration. The workflow is readable and maintainable.

Error handling: wire the Stripe node's error output to a Slack notification and a write to a Postgres dead-letter table — built into the same canvas, no extra tooling.

Add an AI step: connect an AI Agent node to summarise the booking and draft a personalised follow-up email based on the client's service type. One more node. Still one execution.

The DevOps question: who actually manages this?

Self-hosting n8n is straightforward if you're comfortable with a command line. The baseline setup is:

1. Provision a Hetzner (or equivalent) VPS 2. Install Docker and Docker Compose 3. Run the official n8n Docker image with a Postgres database for persistence 4. Point a domain at the server, configure Nginx as a reverse proxy, enable SSL via Let's Encrypt

From there you have a production n8n instance. Updates are a `docker compose pull && docker compose up -d`. Backups are a Postgres dump on a cron schedule.

That said: "straightforward if you're comfortable with a command line" is doing real work in that sentence. If you're a business owner who's never SSHed into a server, this is several hours of YouTube tutorials plus several hours of troubleshooting before you have a stable setup. And then you own the ongoing maintenance.

This is exactly what STACKD builds and manages for operators. We set up n8n as part of your owned system — alongside your Next.js site, Frappe CRM instance, and AI layer — and we handle the infrastructure operations so you don't have to. The automation runs on your server, under your control, with your data. You get the sovereignty of self-hosting without the ops overhead.

If you want to explore what that looks like for your business, [the services page](/en/services) explains how the workflow automation block fits into a full system build.

Frequently asked questions

Is n8n really free to self-host?

The Community Edition is free and open-source under the Apache 2.0 licence. Enterprise features — SSO, audit logs, advanced user management, LDAP — require an enterprise licence, which is priced on request. For most SMBs the Community Edition covers everything needed. Your only cost is the server: a Hetzner CX23 instance runs at approximately €3.99/month plus VAT.

Can n8n replace Zapier completely?

For the majority of automation use cases, yes. n8n has 400+ official integrations and 6,000+ community nodes. Where n8n's integration coverage falls short is with very niche or obscure SaaS tools that have Zapier connectors but no n8n node. In those cases you can use n8n's HTTP Request node to call any REST API directly, which often means no functional gap — just more configuration than a dedicated connector.

How hard is it to migrate existing Zaps to n8n?

There's no automatic import. You rebuild your workflows in n8n's editor. Most Zaps can be rebuilt in n8n in less time than it took to build them originally, because n8n's editor exposes more of the underlying data. Budget a few hours for a migration of moderate complexity. The payback on hosting costs typically happens within the first month.

Does n8n work with AI tools like OpenAI and Anthropic?

Yes — n8n has 70+ dedicated AI nodes including native integrations with OpenAI, Anthropic Claude, Google Gemini, and Ollama (for self-hosted models). The AI Agent node implements the LangChain agent loop and can be connected to memory modules, vector stores (Pinecone, Qdrant, Postgres pgvector), and tool nodes that call any other workflow or external API.

What's the difference between n8n Cloud and n8n self-hosted?

n8n Cloud is the managed SaaS version — €20/month (Starter) gives you 2,500 executions with no server management. It's the right choice if you want n8n's power without infrastructure responsibility. Self-hosted is free software running on your own server — unlimited executions, full data control, but you own the ops. STACKD builds and manages self-hosted n8n instances as part of a full system, so operators get the cost and sovereignty benefits without the DevOps overhead.

Stop paying per task. Own your automation.

STACKD builds and manages self-hosted n8n as part of a complete owned system — CRM, automation, AI, site. One fixed build cost. Your infrastructure. Your data.

Talk to us about your automation stack