Hosting n8n under a generic acme.flowengine.cloud subdomain is fine while you're testing. The moment you put it in front of a paying client, you want a domain you actually own. Maybe automation.acmeagency.com, maybe workflows.client.com, ideally with SSL that doesn't require you to think about renewals.
FlowEngine handles every part of that automatically. This guide walks through pointing a custom domain at a managed n8n instance in three steps: drop the domain in the portal, add a CNAME record at your DNS provider, and wait about 30 seconds for SSL to provision.
Why agencies bother with custom domains
Three reasons keep coming up:
- Trust. A client clicking an
automation.acmeagency.comlink feels different than clicking a generic FlowEngine subdomain. It looks like infrastructure, not a side project. - White-label. If you sell n8n automations as part of an agency package, the URL is part of the brand. Clients shouldn't see your hosting provider's name.
- Webhook stability. The webhook URLs you give to client systems (Stripe, Calendly, HubSpot) are the URL people will see in audit logs and integration settings for years. Anchoring them on your own domain means you can switch hosting later without breaking every webhook.
Step 1: Open the instance settings
Log into the FlowEngine portal and click into the n8n instance you want to brand. The instance detail page has an Instance URL row at the top with copy and refresh buttons, plus a Change Domain button on the right.
Click Change Domain. A modal asks for your custom domain. Drop in the full hostname (no https://, no trailing slash), e.g. automation.acmeagency.com.

Step 2: Add the CNAME record
FlowEngine shows you the exact DNS record to create. Copy it into your DNS provider (Cloudflare, Namecheap, GoDaddy, Route 53, doesn't matter which). The record looks like:
Type: CNAME
Name: automation
Value: aa8552fcml6v12.us1.flowengine.cloud
TTL: Auto (or 300 seconds)
FlowEngine routes custom domains through Cloudflare's edge for SSL termination, so if your DNS provider is Cloudflare, the orange cloud (proxied) should stay on. The Change Domain modal in the FlowEngine portal shows you the exact CNAME, target, and proxy state to set.
DNS propagation is usually instant for new records. Run dig automation.acmeagency.com CNAME if you want to verify it from the terminal.
Step 3: Confirm in the portal
Back in the FlowEngine modal, click Verify. FlowEngine resolves the CNAME, requests a Let's Encrypt certificate, and updates the instance URL. The whole flow takes about 30 seconds end to end.
Once it's done, the instance detail page shows the new domain with the green Active badge. Hitting https://automation.acmeagency.com in a browser opens the n8n editor on the new URL with a valid certificate. Old webhook URLs on the FlowEngine subdomain keep working (you can flip them off later if you want), so nothing breaks the moment you switch.
What about renewals and edge cases
Certificate renewals run automatically. You don’t have to set a calendar reminder or maintain a renewal cron. If something goes wrong (DNS provider blip, expired domain), FlowEngine emails you before the cert expires.
One useful detail for agencies: each n8n instance can have its own custom domain, so you can run automation.client-a.com and workflows.client-b.com side by side without any per-instance config. Same agency portal, different client-facing URLs.
If you're moving an existing n8n setup to FlowEngine and want to preserve the same URL, point your existing domain at FlowEngine before changing webhooks. The integrations on the other end won't notice the swap. We have a separate guide on getting your first instance running if you haven't done that yet.
Try it
Custom domains are included on every paid n8n plan. Sign up at flowengine.cloud, deploy an instance, and point a domain at it. The free tier exists for personal use with no credit card required if you want to test the platform before wiring up your real client domain.
