Writing 2 min read

Self-Hosting n8n on Hetzner with Coolify

How I run n8n for $5/month on Hetzner using Coolify's pre-built template. No Docker commands, no complex setup.

I pay $5 a month for n8n. Not the cloud version. My own instance running on a Hetzner VPS. Here's exactly how I set it up.

The Stack

  • Hetzner CX11: €4.51/month, 2 vCPUs, 4GB RAM
  • Coolify: Free, open-source PaaS
  • n8n template: Pre-built with Postgres and Redis workers

Total time to deploy: about 10 minutes.

Why This Setup?

I tried the cloud version of n8n. It works fine until you need more executions. Then the pricing gets silly.

I tried running it on Railway. Also fine, but I like owning my infrastructure.

This setup gives me unlimited workflows, unlimited executions, and full control. For the price of a coffee.

Step 1: Hetzner Server

Sign up for Hetzner Cloud. Spin up a CX11 in Falkenstein or Nuremberg.

Use Ubuntu 22.04. That's it. Don't overthink the server config.

Step 2: Install Coolify

SSH into your server and run:

curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash

This installs Coolify with all the Docker stuff handled automatically.

Step 3: Deploy n8n

In the Coolify dashboard:

  1. Create a new resource
  2. Search "n8n" in the templates
  3. Pick the one with Postgres and Worker
  4. Set your domain (I use n8n.my-domain.com)
  5. Deploy

Coolify handles the Docker Compose, the reverse proxy, SSL certificates, everything.

What's Included

The template sets up:

  • n8n main instance
  • Postgres database
  • Redis for queuing
  • Worker containers for background jobs
  • Automatic SSL via Let's Encrypt

You don't touch a single Docker file.

Configuration

Once deployed, set these environment variables in Coolify:

N8N_BASIC_AUTH_ACTIVE=true
N8N_BASIC_AUTH_USER=your-username
N8N_BASIC_AUTH_PASSWORD=your-password
WEBHOOK_URL=https://n8n.your-domain.com

Redeploy. Done.

Backups

I run a simple n8n workflow that exports my workflows weekly and uploads them to S3. Takes 5 minutes to set up.

For the database, Coolify has a backup feature built-in. Enable it, point it to your S3 bucket, set the schedule.

Performance

This setup handles about 5,000 executions per day without breaking a sweat. If you need more, scale up the VPS or add more worker containers in Coolify.

The Alternative

You could spend $50+ a month on n8n Cloud. Or you could spend 10 minutes setting this up and pay $5.

Your call.

Troubleshooting

Container won't start: Check the logs in Coolify. Usually a memory issue — bump the VPS to 8GB.

Webhooks not working: Make sure WEBHOOK_URL matches your actual domain.

Slow executions: Add more worker containers or check if your VPS is hitting CPU limits.

Conclusion

That's it. No complex Docker setup. No managing Postgres manually. Just a working n8n instance that costs less than lunch.

If you're serious about automation, self-hosting is the way to go. And Coolify makes it embarrassingly easy.


Running into issues? I actually use this setup daily. Find me on LinkedIn.

Contact

Mail is fine. I answer within a day, usually less.

[email protected]