What You'll Need
- n8n Cloud or self-hosted n8n instance
- Hetzner VPS or Contabo VPS for self-hosting Temporal/Windmill
- DigitalOcean as an alternative hosting provider
- Basic understanding of workflow automation concepts
- A credit card to test free tiers
Table of Contents
- The Pricing Showdown: Raw Numbers
- n8n Pricing Breakdown
- Temporal Pricing Breakdown
- Windmill Pricing Breakdown
- Cost Comparison by Use Case
- Hidden Costs You Need to Know
- Self-Hosting vs Cloud: The Real Math
- Which Platform Should You Choose?
I've spent the last two years building production workflows across n8n, Temporal, and Windmill—and I've watched pricing models shift dramatically. Every founder asks the same question: "Which one won't bankrupt us when we scale?" The answer isn't straightforward because these tools solve different problems at different price points.
Let me walk you through the actual costs, hidden fees, and break-even math so you can make the right call for your business.
The Pricing Showdown: Raw Numbers
Here's the uncomfortable truth: pricing comparisons are nearly meaningless without context. These platforms serve different use cases. n8n focuses on visual workflow building for integrations, while Temporal handles long-running distributed tasks, and Windmill bridges the gap with code-first automation.
But let's start with what matters—the bill you'll actually pay.
n8n Pricing Breakdown
n8n Cloud uses a straightforward model: you pay per active workflow execution. Here's what I see in production:
n8n Cloud Plans (as of 2025):
- Free: 0–100 executions/month, 1 active workflow
- Starter: $30/month (5,000 executions, unlimited workflows)
- Pro: $100/month (15,000 executions)
- Business: $500/month (unlimited executions + SSO + advanced features)
- Enterprise: Custom pricing
I typically recommend the Starter plan ($30) for bootstrapped teams. Here's why: one workflow running daily on 150 tasks easily hits 4,500 executions monthly without you noticing.
n8n Self-Hosted:
This is where n8n gets interesting for cost-conscious engineers. You can self-host on Hetzner for roughly $5–15/month with a 2-core VPS, or $5–6/month on DigitalOcean. You get unlimited executions forever. Setup takes 15 minutes with Docker.
Here's the self-hosted setup I use:
version: '3.8'
services:
n8n:
image: n8nio/n8n:latest
ports:
- "5678:5678"
environment:
- N8N_HOST=your-domain.com
- N8N_PROTOCOL=https
- NODE_ENV=production
- WEBHOOK_TUNNEL_URL=https://your-domain.com/
- DB_TYPE=postgres
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_HOST=postgres
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_USER=n8n
- DB_POSTGRESDB_PASSWORD=secure_password_here
depends_on:
- postgres
restart: unless-stopped
volumes:
- n8n_data:/home/node/.n8n
postgres:
image: postgres:15-alpine
environment:
- POSTGRES_DB=n8n
- POSTGRES_USER=n8n
- POSTGRES_PASSWORD=secure_password_here
restart: unless-stopped
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
n8n_data:
postgres_data:
Deploy this and you're self-hosted for under $10/month. No execution limits. No overage fees.
💡 Fast-Track Your Project: Don't want to configure this yourself? I build custom n8n pipelines and bots. Message me with code SYS3-DEVTO.
Temporal Pricing Breakdown
Temporal vs Airflow for API-First Automation is a common debate because both handle long-running tasks, but Temporal's pricing model is radically different from n8n's execution-based approach.
Temporal Cloud Plans:
- Developer: Free tier with 1 GB storage, 1 action/second throughput
- Standard: $1.50 per 1M action executions + $0.10/GB storage over 1 GB
- Premium: Volume discounts at higher action counts
The key metric here is "actions"—not executions. One workflow execution might spawn 50 internal actions (API calls, retries, state transitions). Suddenly that "1M actions" quota feels thin.
I built a customer notification system in Temporal that sent 50,000 daily emails. Simple math: 50,000 executions × 5 actions per workflow = 250,000 actions. On Standard pricing: $0.38/day = $11.40/month.
But I added retry logic, compensation, and temporal activities. The same workflow jumped to 15 actions per execution = $34/month. Then monitoring and logging infrastructure costs another $200–400/month on AWS (for CloudWatch, Lambda logging, etc.).
Temporal Self-Hosted:
This is what 90% of serious teams do. Run Temporal on your own infrastructure with PostgreSQL or Cassandra backend.
Here's a minimal Temporal cluster on Docker:
version: '3.8'
services:
temporal:
image: temporalio/auto-setup:latest
ports:
- "7233:7233"
- "6933:6933"
- "6934:6934"
- "6935:6935"
- "6936:6936"
environment:
- DB=postgres
- DB_PORT=5432
- POSTGRES_USER=temporal
- POSTGRES_PWD=temporal_password
- POSTGRES_SEEDS=postgres
depends_on:
- postgres
restart: unless-stopped
temporal-ui:
image: temporalio/ui:latest
ports:
- "8080:8080"
environment:
- TEMPORAL_ADDRESS=temporal:7233
depends_on:
- temporal
restart: unless-stopped
postgres:
image: postgres:15-alpine
environment:
- POSTGRES_DB=temporal
- POSTGRES_USER=temporal
- POSTGRES_PASSWORD=temporal_password
restart: unless-stopped
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
postgres_data:
Cost: $5–20/month on Hetzner + your engineering time. No action limits. Scales to millions of workflows.
The trade-off? You need a TypeScript, Python, or Go engineer who understands worker processes, activity retries, and workflow definitions.
Windmill Pricing Breakdown
Windmill is the dark horse. It's self-hosted by default with optional cloud hosting, and it positions itself as the open-source alternative to Zapier and n8n.
Windmill Cloud Plans:
- Community: Free, unlimited workflows, 1 executor (serialized)
- Team: $99/month per workspace (dedicated executors, priority support)
- Enterprise: Custom
The Community plan is legitimately free for small-to-medium teams. One executor means workflows run sequentially, but for many use cases (webhooks, scheduled tasks), this isn't a bottleneck.
I ran a data pipeline on the free tier processing 50K records daily. Runtime was 8 minutes—totally acceptable. Upgrade to Team ($99/month) for 4 parallel executors, and runtime dropped to 2 minutes.
Windmill Self-Hosted:
version: '3.8'
services:
windmill:
image: windmill:latest
ports:
- "8000:8000"
environment:
- DATABASE_URL=postgresql://windmill:windmill@postgres:5432/windmill
- JWT_SECRET=your_jwt_secret_here
- BASE_URL=https://your-domain.com
depends_on:
- postgres
restart: unless-stopped
postgres:
image: postgres:15-alpine
environment:
- POSTGRES_DB=windmill
- POSTGRES_USER=windmill
- POSTGRES_PASSWORD=windmill
restart: unless-stopped
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
postgres_data:
Cost: $5/month hosting + zero licensing fees. Unlimited workflows, unlimited executions. Windmill's revenue model depends on managed hosting, not restrictive licensing.
Cost Comparison by Use Case
Let me show you real numbers from three different scenarios.
Scenario 1: Lightweight Integration Bot (1 webhook → Slack → Database)
- n8n Cloud: $30/month (Starter, ~1,500 executions)
- Temporal Cloud: Free (under 1M actions, no database queries)
- Windmill Cloud: Free (Community plan)
- n8n Self-Hosted: $10/month
- Temporal Self-Hosted: $10/month + engineer time
- Windmill Self-Hosted: $5/month + engineer time
Winner: Windmill Cloud (free) or n8n Cloud ($30) for zero operations overhead.
Scenario 2: High-Volume Data Pipeline (500K daily transformations)
- n8n Cloud: $500+/month (Business, unlimited executions; scaling to 500K daily = ~15M/month)
- Temporal Cloud: ~$7,500/month (500K workflows × 10 actions average × $1.50/1M actions)
- Windmill Cloud: $99/month (Team, unlimited executions)
- n8n Self-Hosted: $15/month hosting
- Temporal Self-Hosted: $20/month hosting + ~$5K engineering
- Windmill Self-Hosted: $5/month hosting + ~$2K engineering
Winner: Windmill Cloud ($99) or self-hosted Windmill ($5). Temporal Cloud is the most expensive option here.
Scenario 3: Long-Running Workflows with State Management (order processing, multi-step approvals)
- n8n Cloud: $100–500/month (workflow execution time costs money indirectly)
- Temporal Cloud: $50–200/month (designed for this; state is efficient)
- Windmill Cloud: $99/month (works, but less efficient for long waits)
- n8n Self-Hosted: $10/month (best value)
- Temporal Self-Hosted: $10/month + strong TypeScript knowledge required
- Windmill Self-Hosted: $5/month (code-first approach is solid)
Winner: n8n or Windmill self-hosted for raw value. Temporal self-hosted if you need industrial-grade reliability.
Hidden Costs You Need to Know
Nobody talks about these, and they'll crush your budget:
Egress Bandwidth: If your workflows talk to external APIs heavily, cloud egress kills you. I once hit a $340 AWS egress bill running [n8n workflows that synced data to multiple SaaS tools](#
Originally published on Automation Insider.
Top comments (0)