Automation and integrations decision
Make
A handful of workflows can be coded quickly, but Make's paid value is the visual builder, app modules, scheduling, observability, and maintenance.
Visit website↗Open-source builds that already do this
Every project below is open source and already does this job today. Fork one, self-host it, or take the parts you need - the build prompt further down assumes an empty file, and this is the shortcut past that. Licences differ; check the one on each card before you ship. All Make alternatives, with the arithmetic →
What a replacement has to do
- Implement the needed scenarios as scripts or n8n workflows with API calls, retries, and logs.
What it still won’t have
- visual scenario builder
- app modules
- scheduling
- operations history
- error handling
- team governance
What remains hard
- Integration maintenance
- Execution quality
First-year cost
The build hours below are a category default, not an estimate for this product. Change them to your own numbers and the comparison follows.
Keep paying
Paying is—cheaper in year one.
On cash alone, building overtakes the subscription at 1 seat.
Money you would actually spend
Time you would spend
—
What you would spend
What we assumed
The verdict above measures whether you could build it. This one is only about money.
Runnable build prompt
Build me a code-first workflow runner to replace Make for my handful of scenarios. Requirements: - A Node project where each scenario is one file in scenarios/ exporting a trigger (cron string or webhook route) and an ordered list of steps, each step an async function that receives the previous step's output. - The runner executes steps in order, retries a failed step 3 times with exponential backoff, then halts the run recording the step name and error. - Every run saved to SQLite (better-sqlite3): scenario, start/end, per-step input and output JSON, status. That history is the debugging story, make it good. - A minimal dashboard on localhost:4880 (Express, server-rendered): scenario list with last-run status, click into a run to see each step's payload. - Webhook triggers land on the same Express app with signature verification helpers; cron triggers via node-cron. All credentials in .env. - Ship two example scenarios: a Stripe payment webhook appends to a Google Sheet and sends a Telegram message; an RSS post gets an LLM summary drafted as email. - Binds to localhost only, single user, no accounts, no telemetry. - Out of scope: a visual drag-and-drop builder and an app-module catalog. Scenarios are code, that is the point of this build. - README: how to add a scenario, .env keys, and a note that self-hosted n8n is the off-the-shelf fallback if maintaining this stops being fun.





