self hosting

N8N Custom Domain Setup

A custom domain for self-hosted n8n needs DNS, reverse proxy routing, HTTPS, and endpoint environment variables that make editor and webhook URLs use the same public host.

Independent third-party notes. n8n is a trademark of its owner and is referenced only for compatibility and troubleshooting context.

Quick Answer

A custom domain for self-hosted n8n needs DNS, reverse proxy routing, HTTPS, and endpoint environment variables that make editor and webhook URLs use the same public host.

Key Facts

DNS
The domain must point to the server or load balancer that handles public traffic.
Host setting
N8N_HOST should match the public host name.
Webhook setting
WEBHOOK_URL should match the public base URL used by external services.
HTTPS
Public domains should serve n8n over HTTPS.

Recommended Steps

  1. Create DNS records for the n8n subdomain.
  2. Route the domain through your reverse proxy or hosting layer.
  3. Configure HTTPS for the public domain.
  4. Set N8N_HOST to the domain host.
  5. Set WEBHOOK_URL to the public HTTPS base URL.
  6. Open the editor and copy a webhook URL to confirm the domain is correct.

Verification

  • The editor loads at the custom domain.
  • Webhook URLs use the custom domain.
  • A third-party service can call the production webhook successfully.

Warnings

  • Changing only DNS is not enough if n8n still generates localhost or internal webhook URLs.
  • Domain changes can break integrations that already stored old webhook URLs.

Sources