Skip to content

Instantly share code, notes, and snippets.

@domin8xdigital
Last active February 6, 2026 08:38
Show Gist options
  • Select an option

  • Save domin8xdigital/2d26808cd3b119305754c4bb8aace99f to your computer and use it in GitHub Desktop.

Select an option

Save domin8xdigital/2d26808cd3b119305754c4bb8aace99f to your computer and use it in GitHub Desktop.
How we run n8n in production without server headaches (Agency guide)

How we run n8n in production without server headaches

We use n8n every single day. Not for demos. Not for toy workflows.
For real client automations that break if something goes wrong.

Over the last year, our agency built and maintained hundreds of n8n workflows across SEO, lead generation, customer support, data sync, and AI pipelines. Like most people, we started with the excitement of self-hosting and quickly learned that running n8n in production is less about workflows and more about infrastructure discipline.

This is a short, honest guide on what actually worked for us.


Our early n8n setup (and why it hurt)

We initially ran n8n the classic way:

  • VPS
  • Docker
  • PostgreSQL
  • Nginx
  • Manual backups
  • Manual updates

On paper, this is the recommended setup. In reality, this meant:

  • Disk filling up because of execution history
  • Databases growing silently
  • One failed update breaking credentials
  • Random 2am workflow failures with no alerting
  • Too much time spent maintaining the tool instead of building automations

n8n itself was never the problem.
Operating it reliably was.


The biggest lessons we learned

1. n8n is an application, not a script

Once clients rely on it, n8n becomes production infrastructure. That means:

  • Persistent storage
  • Proper database configuration
  • Predictable backups
  • Controlled updates
  • Monitoring

If any of these are missing, the system will eventually fail.


2. Execution history and databases matter more than workflows

Most n8n issues we debugged were not logic bugs. They were:

  • Execution logs filling disks
  • SQLite or Postgres misconfiguration
  • WAL files growing endlessly
  • Corrupted volumes after forced restarts

If you do not actively manage storage and retention, it will catch up with you.


3. Self-hosting is powerful, but not free

Self-hosting gives full control, but it also means:

  • You are the SRE
  • You are on-call
  • You own downtime

For internal experiments, that is fine.
For client-facing automations, it becomes risky fast.


What we needed for production

After a few painful incidents, we wrote down what we actually needed:

  • n8n ready out of the box
  • Proper database already configured
  • Backups handled automatically
  • No server access required for daily operations
  • Ability to scale workflows without touching infra
  • Zero setup time for new projects

In short: we wanted to build automations, not babysit servers.


What we use today

Today, when we need n8n production-ready fast, we use OpenHosst.

Not because it is flashy, but because it removes all the infrastructure friction:

  • n8n comes fully deployed
  • Database is already configured correctly
  • Backups and storage are handled
  • No Docker, no VPS tuning, no SSH
  • We can onboard a new automation project in minutes

This lets our team focus entirely on workflow design, logic, and reliability instead of ops.

https://openhosst.com


When we still self-host

We still self-host n8n in some cases:

  • Heavy internal experimentation
  • Temporary R&D systems
  • Highly customized environments

But for anything client-facing or revenue-critical, we no longer reinvent the wheel.


Final thoughts

n8n is an incredibly powerful automation engine.
Most production failures around it are not n8n problems, but infrastructure problems.

If you enjoy managing servers, self-hosting is a great learning experience.
If your goal is to deliver reliable automation to clients, reducing operational complexity is often the smarter move.

Hopefully this saves someone a few late nights.


Written by the team at Domin8x Digital
We design and operate production-grade automation systems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment