Why we chose n8n + Postgres over Zapier for African SMBs
A short field note on building automation infrastructure that survives African price points, intermittent connectivity, and the people who built it.
Every SMB owner we meet has the same problem with their automation stack: it works until it doesn't, and when it doesn't, nobody knows why. Zapier is the obvious default for most teams reaching for automation tooling for the first time, but for businesses operating at African price points and African connectivity, it quietly fails in ways that don't show up in the marketing.
We've now deployed self-hosted n8n on top of Postgres for three different SMB clients, and I want to set down, while it's still fresh, why we keep arriving at this stack and what we've learned about running it in production. This is not an n8n tutorial. There are plenty of those. This is the architecture decisions, the costs, and the trade-offs that nobody writes about until they've made the wrong call first.
The total cost of three SaaS automation tools added up to more than ₦80,000 a month, and they still didn't talk to ERPNext.
What Zapier costs you in practice
Zapier's pricing is opaque on purpose. The headline number, the per-month plan cost, is rarely what you actually pay. The real cost is the per-task pricing, and it scales with success: the more your business grows, the more the tooling charges you for the privilege.
For a typical small business with around 3,000 orders a month, multi-step workflows (which is most of them in practice: receive WhatsApp message, look up customer, log order, send confirmation, update inventory) can rack up tens of thousands of tasks per month. At enterprise plan pricing, you're paying $599 a month before you've even started building anything custom.
These figures are from May 2026. Zapier's pricing changes regularly and downward pressure is unlikely. The directional point holds: hosted automation scales linearly with usage; self-hosted scales with infrastructure.
The architecture we keep arriving at
Three services. Docker Compose. A single Hetzner CX22 box at €4.51 a month. The whole stack looks like this:
# minimum viable automation stack services: postgres: image: postgres:16-alpine environment: POSTGRES_DB: n8n POSTGRES_USER: ${PG_USER} POSTGRES_PASSWORD: ${PG_PASS} volumes: - ./data/postgres:/var/lib/postgresql/data n8n: image: n8nio/n8n:latest environment: DB_TYPE: postgresdb DB_POSTGRESDB_HOST: postgres N8N_HOST: ${DOMAIN} depends_on: [postgres] caddy: image: caddy:2-alpine ports: ["80:80", "443:443"]
That's it. The total monthly cost, including domain, Caddy-managed TLS, backup storage on Backblaze B2, and the box itself, comes in under $15 USD for the kind of workload that would cost a client $200 to $600 a month on Zapier.
Why Postgres and not the bundled SQLite
n8n ships with SQLite by default. For a single user playing around, this is fine. For anything production-bound, it isn't. SQLite locks the whole database on write, which means concurrent webhook bursts (think 30 WhatsApp messages arriving in the same second after a marketing push) will start dropping or delaying executions. Postgres handles this without flinching.
The trade-offs nobody admits
Self-hosting is not free. It's just cheaper in money and more expensive in attention. Here's the honest comparison after running this stack at three different clients for the last 10 months:
| Concern | Zapier | n8n self-hosted |
|---|---|---|
| Monthly cost | $200–600+ | $8–15 |
| Setup time | 1 hour | 4–6 hours |
| Data location | USA | Anywhere you choose |
| Custom code | Limited | Full JS / Python |
| Failures wake you up | Rarely | Initially, yes |
That last row is the real cost. Self-hosting means you are the SRE. For the first month, something will break that didn't break before, and you'll need to look at logs. After that, things stabilize.
"The right question isn't 'is self-hosting cheaper?' It's 'is the trade you're making in attention worth the trade you're saving in money, and in vendor lock-in?'"
A client, after three months of running the stackWhat this means for African SMBs specifically
Two things particular to the African SMB context make this trade especially worthwhile:
- Margins are thin. A coffee shop in Abuja running 2,000 transactions a month cannot rationalize ₦300,000 a month for automation tooling. They can rationalize ₦10,000 a month for a VPS.
- Currency exposure is real. Zapier bills in USD. A USD-billed SaaS line item is a hedge against your business that you don't get to participate in.
- Data sovereignty matters more here, not less. Customer data is increasingly subject to local regulation. Keeping it on a box you control, in a jurisdiction you understand, is becoming a feature.
What would change my mind
If Zapier dropped task pricing entirely. If they added meaningful self-hosted options. If they lowered the per-execution price by 10 times. None of these feel imminent, but I want to be honest about the conditions under which our default would flip.
Until then, for any SMB serious enough about their operations to pay for automation but cost-conscious enough to feel it on the bottom line, the self-hosted n8n + Postgres stack is the answer we keep arriving at. It's not always the easiest answer. It is consistently the right one.
Got a stack that's quietly costing you?
If your automation tooling works until it doesn't, that's worth a conversation. The first one is free.
Tell us what's broken →