Sylvestri Systems
systems·April 14, 2026·2 min read

The Claude + n8n + VPS stack I run everything on

Two VPSs, one orchestrator, one reasoning engine. The exact topology behind every automation I ship — and why I stopped trusting Zapier for anything that matters.

Empty slot: post:claude-n8n-vps-stack.video-1
Populate in content/videos/video-slots.yml

The question I get asked the most: "what's actually running under your automations?" Answer: two VPSs, one orchestrator, one reasoning engine. Nothing exotic. Everything owned.

The topology

Two VPSs: VPS1 hosts the public site + auth, VPS2 hosts n8n, Postgres, and background workers. Caddy on both.
VPS1 = public surface. VPS2 = infra + scheduled jobs. Claude is called from both.

VPS1 — production surface

  • Caddy (automatic HTTPS)
  • Next.js 15 (this site)
  • Supabase auth proxy
  • Stripe webhook receiver

VPS2 — infra + orchestration

  • Caddy (for staging + n8n subdomain)
  • n8n (orchestrator — cron, webhooks, fanout)
  • Postgres (n8n DB + app DB for experiments)
  • Uptime Kuma (self-hosted status page)
  • Staging environment for every PR before prod

Both boxes run Docker Compose. Both are rebuildable from git + environment variables in under 20 minutes.

Where Claude fits

If a workflow needs to read, summarize, classify, or write — Claude. If it needs to trigger, route, schedule, or call an API — n8n.

Me, to myself, every week

Concretely:

Claude's jobs in the stack

    The three rules I run the stack by

    1. Own the orchestrator. Zapier is fine until pricing or rate limits bite. n8n on my own box never does.
    2. One reasoning engine. Claude is the only LLM in the hot path. Others get called from n8n when specifically useful (e.g. Whisper for transcription).
    3. Infra as code. Every service in Docker Compose. Every secret in an env file. Nothing clicked into a dashboard that can't be redeployed from git.

    What it costs

    ~$42/mo
    Dual-VPS + all self-hosted
    Hetzner CX22 × 2. Caddy + Docker + n8n + Postgres.

    Plus metered spend on Claude, Resend, Cloudinary, and Stripe. All of it scales with actual usage, not seat counts.

    Get the exact blueprint

    Next in this series: the Docker Compose files, verbatim.