How to Pick the Right Workflow Automation Tool: n8n, Zapier, Make, or Custom Code?
Four real options, three deciding questions. We use n8n for most production builds, but not always. Here is when each tool wins, and when each one quietly costs you 10x in run-rate.
Short answer: For SMB production builds with non-trivial volume, n8n self-hosted wins on cost and flexibility. Zapier wins on speed-to-first-thing-working. Make wins on visual complexity for non-technical users. Custom code wins when integrations don’t exist or volume is enormous. Most teams overpay for Zapier when they should be on n8n.
Here’s how we actually decide.
What are the four options, briefly?
- n8n — open-source workflow automation. Self-host it on a VPS or use n8n Cloud. 2,500+ integrations. Pay-per-execution pricing only on cloud; flat infrastructure cost when self-hosted.
- Zapier — SaaS workflow automation. 6,000+ integrations. Pay per "task" (each step counts). Easiest onboarding; gets expensive fast.
- Make (formerly Integromat) — SaaS workflow automation. Visual editor with branching/loops/data manipulation built in. Pay per "operation". Cheaper than Zapier; steeper learning curve.
- Custom code — Python/Node.js services running on your own infrastructure. Maximum flexibility, maximum maintenance.
When does each one actually win?
Zapier wins when
- You’re a non-technical operator and need something working today.
- Volume is < 1,000 tasks/month per workflow.
- The integration you need is in Zapier’s catalog and you don’t need branching logic.
Make wins when
- The workflow has real branching, loops, or array manipulation that Zapier handles awkwardly.
- You’re budget-sensitive but not yet at "self-host" scale.
n8n wins when
- You’re running > 5,000 executions/month across your workflows.
- You need to plug LLM steps in cheaply (Zapier’s AI features are expensive per task).
- You want to own the workflows, not rent them. Self-hosted means data never leaves your infra.
- You need custom code nodes (n8n lets you write JS/Python inline).
Custom code wins when
- The integration you need doesn’t exist anywhere and you’d be writing custom HTTP requests anyway.
- Volume is huge (six-figure executions/day) and per-execution cost dominates.
- Latency matters — you need sub-100ms response and platform overhead is too much.
What's the actual cost difference at SMB scale?
Real numbers from a recent project: a workflow that runs 10,000 times/month and includes 1 LLM classification + 4 system actions per run.
| Tool | Monthly cost (approx) | Notes |
|---|---|---|
| Zapier (Professional plan + tasks) | ~$200–$400 | 50,000 tasks × $0.005 + AI tokens via paid integration |
| Make (Pro plan + operations) | ~$80–$200 | Cheaper per operation, still SaaS |
| n8n self-hosted (Coolify VPS + LLM) | ~$30–$80 | $15 VPS + LLM token costs only |
| Custom Node.js service | ~$15–$50 | Just LLM tokens + minimal hosting |
The cost gap isn’t close. At even modest volume, the choice is "convenience SaaS" vs "self-host and save 5–10×". Below ~1,000 executions/month, the cost difference is noise and Zapier is a fine answer. Above that, n8n self-hosted wins decisively.
What about reliability?
Conventional wisdom says SaaS = more reliable than self-hosted. Reality is more nuanced:
- Zapier reliability is high but not perfect. When Zapier has a regional outage (it happens), all your automations stop together. You can’t fix it.
- n8n self-hosted reliability depends on your infrastructure. On a properly monitored VPS with backups, it’s as reliable as anything — and when it does break, you can fix it yourself in minutes instead of waiting on a SaaS support ticket.
- Make sits in between. SaaS reliability without Zapier-scale infrastructure investment.
The bigger reliability question isn’t the platform — it’s whether the workflow has fallback logic, retry handling, and monitoring. Any platform without those is fragile.
What about AI integration?
This is where the platforms diverge most.
- Zapier’s OpenAI integration is convenient but expensive on the per-task pricing model. A workflow with one LLM step costs roughly 2× what it costs to call OpenAI directly.
- Make’s AI integrations are better-priced but still have SaaS markup.
- n8n lets you call OpenAI/Claude/DeepSeek/local models directly with no platform markup. For LLM-heavy workflows, this alone is the cost-tipping point.
If your workflow doesn’t use AI today but will tomorrow, n8n future-proofs you. If you’re building an AI-first automation, n8n is the obvious starting point.
Our default recommendation
For SMB clients building production AI automations, we default to n8n self-hosted on Coolify for these reasons:
- Cost scales with infrastructure, not per-task pricing.
- Workflow source code lives in your own infra — no vendor lock-in.
- LLM calls are direct (no SaaS markup).
- Custom code nodes mean we’re never blocked by missing integrations.
- Backups + version control are straightforward.
We use Zapier and Make for clients who already have them in production and don’t want to migrate — the migration cost rarely justifies it for sub-10,000 executions/month workflows.
What's the next step?
If you’re evaluating tools for a specific automation, the fastest path is the 15-minute discovery call: describe the workflow, we’ll tell you which tool fits and why — with cost math — in 5 minutes. The other 10 minutes go to scoping the build.
If you want to see what we ship on n8n, our integrations page shows the stack we use across 2,500+ pre-built nodes plus custom development.
About Kapil
Founder & AI Lead at ClosedChats AI. Builds production AI agents and workflow automations for SMBs. Background in AI/ML systems and operations engineering.