Zapier is $19.99/mo (Starter). Windmill is a self-hosted alternative at $0.99/mo. Here's when each makes sense.
| Windmill | Zapier | |
|---|---|---|
| Hosting | Self-hosted, your infra | Managed SaaS (cloud only) |
| Data location | Your server, your disk | Zapier's cloud |
| Free tier | 5 automations | Paid only |
| Pro pricing | $0.99/mo | $19.99/mo (Starter) |
| Dependencies | None (single binary + SQLite) | N/A (managed) |
| Setup time | ~30 seconds | Account signup |
| Dashboard | Built-in at /ui | Cloud dashboard |
| License | BSL 1.1 | Proprietary SaaS |
Windmill is a single Go binary with embedded SQLite. Install it with one command, and you are running in under a minute. Your data stays on your server.
curl -fsSL https://stockyard.dev/windmill/install.sh | sh
The decision between Windmill and Zapier usually comes down to one question: do you need the breadth of features that Zapier offers, or would a focused tool that stays out of your way be a better fit? Zapier has spent years building an ecosystem around background automation. Windmill does one thing well and gives you complete control of the underlying data.
The operational difference is significant. Zapier requires you to trust their infrastructure, their security practices, and their business continuity. Windmill requires you to run a process and keep the data directory backed up. If your server dies, restore the binary and the SQLite file to a new server. The entire recovery procedure fits in a single paragraph because there is nothing else involved.
Switching from Zapier to Windmill is straightforward for most teams. Export your data from Zapier (most services offer CSV or JSON export), then POST each record to Windmill's API. A migration script that reads the export and writes to /api/ endpoints typically takes less than 50 lines of code. The reverse migration is equally simple — Windmill's SQLite database is a standard file you can query with any SQLite client.
Single binary. Free to start. $0.99/mo for Pro.