Skip to content
Workflow automation · head-to-head

Windmill vs n8n

Updated Sep 2026prices checked · Jul 2026
We earn commissions when you shop through the links below. Full disclosure →
The verdictOur pick: Windmill

Pick Windmill if the people building the automations write code: scripts in Python, TypeScript, Go, Bash, SQL and more become webhooks, schedules, flows and internal UIs, under an AGPL-3.0 core, with unlimited executions in a free edition capped at 50 users — knowing the shipped Community image also contains proprietary code and the default compose stack is a multi-gigabyte, six-service deployment. Pick n8n if non-developers will build the automations or the work is connecting SaaS applications: one container on the 1 GB our n8n page lists (n8n publishes no minimum) with the larger application catalogue, under a Sustainable Use License that permits internal and personal use but not redistribution.

Side by side

Windmillour pick
n8n
Category
Windmill: Workflow automationn8n: Workflow automation
Stack
Windmill: Rust · Svelte · PostgreSQLn8n: TypeScript · Node.js
License
Windmill: AGPL-3.0 core (+ Apache-2.0 parts); Community Edition image also contains proprietary coden8n: Sustainable Use License (source-available)
Min RAM
Windmill: 4 GB (our figure: upstream's rule of thumb of 1–2 GB per worker applied to the default compose's four workers gives 4–8 GB; we list the low end)n8n: 1 GB (our n8n page's figure; upstream publishes no minimum)
How you build
Windmill: Scripts in Python, TypeScript, Go, Bash, SQL, GraphQL, PowerShell, Rust → flows, schedules, webhooks, appsn8n: Visual canvas of application nodes; JavaScript inside a Code node
Free-edition limits
Windmill: Unlimited executions; max 50 users, 3 workspaces, 4 groups, 10 SSO usersn8n: No documented user cap
Held back from the free edition
Windmill: SAML/SCIM, audit logs (Enterprise on the pricing page; the docs give CE a 14-day retention vs a year on EE), autoscaling, concurrency limits, approval-step forms/prompts/role restrictions, external secret backends, agent workers, staging/prod deployment UIn8n: SSO (SAML/LDAP), projects, sharing, Git version control, environments, external secrets, log streaming
Default install
Windmill: Compose: server, 3 workers, native worker, Postgres 18, extras, Caddy (ports 80 + 25)n8n: One container
Difficulty
Windmill: 3 / 5n8n: 3 / 5
Alternative to (SaaS)
Windmill: Zapiern8n: Zapier

Windmill and n8n both run workflows on a server you own, and that is roughly where the overlap stops. n8n is a no-code integration tool: a visual canvas, a catalogue of application nodes, credentials and executions managed for you. Windmill is a developer platform: you write scripts in Python, TypeScript, Go, Bash, SQL, PowerShell or Rust, and Windmill turns them into webhooks, schedules, multi-step flows and even internal UIs — its own positioning is "alternative to Retool, Pipedream, Superblocks", not to Zapier. Which one you want depends on whether the people building the automations would rather write code or drag nodes.

Code-first versus node-first

In Windmill, the unit of work is a script with typed inputs. The platform generates a form for it, runs it in a sandboxed worker, and lets you chain scripts into flows with branches, loops and retries — then build a small app on top if someone non-technical needs a button. Its worker model is explicitly sized for compute: the docs' rule of thumb is one worker per vCPU and 1–2 GB of RAM, and the default compose file starts three general workers plus a native one.

In n8n, the unit of work is a node from the library — a CRM, a chat tool, a spreadsheet, an AI model — wired to the next. You can drop into JavaScript inside a Code node, but the product's centre of gravity is the catalogue, and the appeal is that a non-developer can build a real integration without reading an API reference.

Licenses: both open-core, differently

Windmill's core is AGPL-3.0, a genuine OSI license, with some parts under Apache-2.0. Two things to read carefully: the Community Edition image you actually pull contains proprietary code alongside the open-source parts (the README says so, and grants free internal use of it), and the free edition has quotas — a maximum of 50 users, three workspaces, four permission groups, ten SSO users — while executions are unlimited. SAML/SCIM, audit logs (Enterprise on the pricing page; the docs give the Community Edition a 14-day retention against a year on Enterprise), autoscaling, concurrency limits, the forms/prompts/role-restriction layer of approval steps, external secret backends, agent workers and the staging/production deployment UI are Enterprise features.

n8n's Sustainable Use License is source-available rather than OSI: use and modify it for internal business or personal purposes, but do not redistribute it. Its Community edition withholds SSO (SAML, LDAP), projects, sharing, environments, external secrets, log streaming and Git version control; registering the free edition unlocks folders, debug-in-editor and custom execution data. No user cap is documented.

So Windmill is the one with an open-source license and a seat limit; n8n is the one with a restrictive license and no seat limit. Pick the constraint you can live with.

Footprint

This is not close. n8n runs as one container; the 1 GB on our n8n page is this site's figure, since n8n publishes no minimum. Windmill's default compose stack is a server, three workers and a native worker each with a 2 GB memory limit, Postgres 18, an extras container and a Caddy proxy that publishes ports 80 and 25. The 4 GB on Windmill's page here is our figure: upstream's 1–2 GB-per-worker rule applied to those four workers gives 4–8 GB and we list the low end — the project publishes no single minimum, and a busy instance will want more. The .env you download ships the database password changeme (it is also hard-coded on the db service in docker-compose.yml, so change both or neither) and the first login is admin@windmill.dev / changeme, which you should change on first sign-in.

Pick Windmill if…

  • Your automations are code you would rather write than draw, in more than one language.
  • You want an AGPL-3.0 core and can live inside the free edition's 50-user cap.
  • You need background jobs, internal tools and webhooks in one place — the Retool/Pipedream job, not the Zapier job.

Pick n8n if…

  • Non-developers will build the automations.
  • The work is connecting SaaS applications, and the node catalogue saves you the API reading.
  • A single container is the right size and the Sustainable Use License's internal-use terms are no obstacle.

The honest trade-off

Windmill wins this comparison for developer teams: it does more per box — scripts, flows, schedules and UIs in any of several languages — under an AGPL core, and its free edition's quotas are generous for anything short of a company-wide platform. It loses for everyone else, which is most people searching for a Zapier replacement: it asks you to write code, it wants a multi-gigabyte compose stack, and its shipped image is not purely open-source either. n8n is the smaller, friendlier install with the bigger application catalogue; its license is the part to read twice.

Common questions

Windmill vs n8n — which should I self-host?

Windmill if your team writes code and wants scripts, flows, schedules and internal UIs in one platform under an AGPL-3.0 core; its free edition has unlimited executions and a 50-user cap. n8n if non-developers will build the automations or the job is connecting SaaS applications — it is one container on the 1 GB our n8n page lists (upstream publishes no minimum) with a much larger application catalogue, under a source-available license.

Is Windmill fully open source?

The core is AGPL-3.0 with some parts under Apache-2.0, but the README states that the Community Edition image you download contains proprietary code alongside the open-source parts, which you may use internally for free. SAML/SCIM, audit logs beyond a short Community retention window, autoscaling, the forms/prompts/role-restriction layer of approval steps and several other features are Enterprise-only.

How much server does Windmill need compared with n8n?

Considerably more. n8n publishes no minimum; the 1 GB on our n8n page is this site's figure for its single container. Windmill's default compose file runs three general workers and one native worker with a 2 GB memory limit each beside the server, Postgres and a Caddy proxy, and the docs' rule of thumb is one worker per vCPU with 1–2 GB of RAM — four workers at the low end is where the 4 GB on our Windmill page comes from. It is our figure, not an upstream minimum.

Where to host itaffiliate disclosure
Kamateratrial either on
The entry tier is a free trial — fine for a first look. Size it up (or run the 2 vCPU / 4 GB box the cost figures above assume) once you're keeping it.1 vCPU · 1 GB RAM · 20 GB SSD · $4.00/mo
Start free on Kamatera → (opens in new tab)
DigitalOceanalso works on
From $6/mo · 1 vCPU / 1 GB / 25 GB · US + EU + Asia
Deploy on DigitalOcean → (opens in new tab)

Paid link — we earn a commission if you shop through it.

Other comparisons with these apps

We use analytics cookies (Google Analytics, PostHog) to see which guides are useful. No ad networks, no cross-site tracking. See our privacy policy.