White Label Domain: What It Is, and What Your Customers Still See at Each Layer

A white label domain lets your customer's brand appear everywhere your product's brand would have appeared. The customer's own hostname serves your product, over valid HTTPS, with no vendor name in the URL or the setup steps.
The one-line version: white label domain = customer's hostname + valid HTTPS + no vendor branding in the URL or setup.
The term has two common meanings:
- A platform setting. A vendor lets agencies or resellers run the platform under their own domain. That's the agency-portal meaning. If you came for a platform's settings page, this isn't it.
- A SaaS feature. Each of your customers connects their own domain to your product. This page covers this one.
For how Domainee does it, see white label custom domains for SaaS.
The five layers where a vendor name can leak
White label is not one switch. It's five layers, and a vendor name can show at any of them. Here's the honest version, including the one layer where a technical customer can still see ours.
| Layer | Where a vendor name can leak | What a customer sees with Domainee |
|---|---|---|
| 1. URL | customer.yourapp.com instead of docs.customer.com | The customer's own hostname |
| 2. DNS target | The value of the CNAME the customer adds | The CNAME value is edge.domainee.dev. Domainee's name is visible to anyone who looks at their DNS records. |
| 3. TLS certificate | A browser warning, or a cert for the wrong name | A Let's Encrypt cert for the customer's hostname, issued on first request and renewed automatically |
| 4. Setup flow | Instructions or copy that tell the customer to go to a vendor | Provider-aware instructions you present inside your product |
| 5. Registrar step | Sending customers to a registrar to buy a domain | Buy a domain in-app, with the end user as legal registrant |
The site's line is "Your customers never see Domainee." Read it as: your customers browse your product on their own hostname, and your setup flow doesn't send them to us. The CNAME value is the exception. It names domainee.dev, and we won't pretend otherwise.
Layer 1: the URL
The visible hostname. docs.customer.com, not customer.yourapp.com. Everyone thinks of this layer first, and it's the only one most people check.
Domainee supports subdomains and apex domains. Some DNS providers disallow a CNAME at the apex. In that case we offer two anycast A records instead.
Layer 2: the DNS target
This is the CNAME record your customer adds, and the value it points at. For Domainee that value is edge.domainee.dev.
So this layer is not hidden. If a technical customer looks up their own DNS, they'll see domainee.dev. Apex domains on the A-record fallback use two anycast A records, which are IP addresses rather than a hostname.
Layer 3: the TLS certificate
The padlock must be valid for the customer's hostname. Anything else is a browser warning, and a browser warning is the least white label thing on the internet.
SSL is automatic via Let's Encrypt. It's issued on first request (on-demand TLS) and renewed automatically. We handle the ACME side so you don't have to. Details on automatic SSL for custom domains.
Layer 4: the setup flow
If your setup instructions say "go set this up at VendorX," the effect is gone before the domain works. Two pieces help:
- Provider-aware instructions.
GET /v1/domains/{id}/instructionsdetects the DNS provider from public NS records and returns provider-specific steps. - The embeddable widget. One script tag (
https://domainee.dev/widget.js,Domainee.mount) puts setup inside your product. It polls every 15 seconds. There is no theming API yet, so check how it looks in your layout before you ship.
One-click setup via Domain Connect is available where supported. Cloudflare is live. GoDaddy is not available. Customers can also hand over a scoped API token (Cloudflare or DigitalOcean) via POST /v1/domains/{id}/dns/apply. The token is used once and never stored.
Layer 5: the registrar step
Some of your users don't own a domain yet. Sending them to a registrar breaks the flow. The Buy a Domain API (POST /v1/domain-purchases) lets them buy one inside your product: 500+ TLDs, wholesale price plus a $1 flat fee, charged through the customer's Stripe account. The end user is the legal registrant. Your customer never needs a registrar account.
What "white label DNS" actually means
It's not a separate DNS product. White label DNS is the record your customer adds, and what it points at. Boring, on purpose.
One API call registers the hostname. You send a hostname and an originUrl:
curl https://api.domainee.dev/v1/domains \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{"hostname": "docs.customer.com", "originUrl": "https://customer.yourapp.com"}'
The call returns the CNAME your customer adds. DNS state is reported through status and monitorStatus. In plain text, the instruction you show your customer looks like this:
Add a CNAME pointing docs.customer.com to edge.domainee.dev
DNS gets set up wrong constantly. So each domain is re-checked every 5 minutes, or on demand via POST /v1/domains/{id}/check. The monitorStatus field tells you where it stands:
dns_not_resolving: the record isn't there yet.dns_incorrect: the record exists but points somewhere else.pending_ssl: DNS is right, certificate on its way.active_ssl: done. Live on the customer's hostname.
The full set also includes unknown, ssl_failed and ssl_expired. Webhooks like domain.verified and domain.failed tell your app without polling.
White label domain vs custom domain vs vanity domain
The terms overlap, and in most SaaS conversations people use them interchangeably.
- Custom domain is the mechanism: a customer's own hostname points at your product.
- White label is the outcome: the vendor is also kept out of the URL, the certificate and the setup flow.
- Vanity domain is the customer-facing name itself.
A custom domain with a vendor-named setup page and a mismatched cert is a custom domain. It's not white label.
Which products need it
Anything where your users publish under their own brand:
- Website builders and store builders
- Help centers and docs sites
- Link-in-bio tools
- White-label SaaS
Agencies and platform builders running several client products use one Domainee workspace per client. For the vertical-by-vertical view, see custom domains for white-label SaaS.
What it costs to offer
Published numbers only:
- Free: up to 20 domains and 100 GB/month, never expires.
- Scale: $0.20/domain/month after the first 20.
- Volume discounts: start at 1,001 domains and graduate down to $0.10 at 10,001+ domains.
- Bandwidth: $0.05/GB above 100 GB.
A card on file is required before the first domain. It's charged $0 under the free tier. Full table on the published pricing page.
Who runs on it
Domainee is a product of Common Ninja (Domainee by Common Ninja). Per the site, Common Ninja, Embeddable and Vidocu run on Domainee in production. SendRaven, Brackets and Trofeo.live are named customers too.
Ready to ship it?
Ready to offer white label domains without building the ACME, SNI and cert-renewal stack yourself? See how it works on the white label custom domains for SaaS page, then create a Domainee account. The first 20 domains are free, forever.
FAQ
What is a white label domain?
A white label domain lets your customer's own hostname serve your product, over valid HTTPS, with no vendor name in the URL or the setup steps. The customer's brand shows up everywhere your product's brand would have.
What is the difference between a white label domain and a custom domain?
A custom domain is the mechanism: a customer's own hostname points at your product. White label is the outcome, where the vendor is also kept out of the URL, the certificate and the setup flow. In most SaaS conversations the two terms overlap.
What is white label DNS?
It isn't a separate DNS product. White label DNS is the record your customer adds, usually a CNAME, and what that record points at. With Domainee, the CNAME value is edge.domainee.dev, so the target name is visible to anyone who looks up their DNS.
How do I set up a white label domain for my SaaS?
Call POST /v1/domains with a hostname and an originUrl. It returns the CNAME your customer adds. Domainee then monitors DNS, issues the SSL certificate on first request and reports state through status and monitorStatus.
Do my customers need a registrar account or DNS expertise?
No registrar account is needed. Customers add one CNAME, and GET /v1/domains/{id}/instructions returns steps specific to their DNS provider. One-click Domain Connect setup is available where supported, and Cloudflare is live.
Does a white label domain need its own SSL certificate?
Yes. The certificate must be valid for the customer's hostname, or browsers show a warning. Domainee issues a Let's Encrypt certificate on first request (on-demand TLS) and renews it automatically.
Can a white label domain be an apex domain, or only a subdomain?
Both work. Where an apex provider disallows a CNAME, Domainee offers two anycast A records instead.
How do I know when a customer's DNS is set up wrong?
Each domain is re-checked every 5 minutes, or on demand via POST /v1/domains/{id}/check. The monitorStatus field reports states such as dns_not_resolving, dns_incorrect, pending_ssl and active_ssl. Webhooks like domain.verified and domain.failed notify your app.
Can my customers buy a domain inside my product?
Yes. The Buy a Domain API (POST /v1/domain-purchases) covers 500+ TLDs at the wholesale price plus a $1 flat fee, charged through the customer's Stripe account. The end user is the legal registrant.
How much does it cost to offer white label domains?
The first 20 domains and 100 GB/month are free, forever. After that it's $0.20/domain/month. Volume discounts start at 1,001 domains and reach $0.10 at 10,001+ domains. Bandwidth is $0.05/GB above 100 GB. A card on file is required before the first domain and is charged $0 under the free tier.
Is a white label domain the same as white-label web hosting?
No. White-label hosting is a reseller arrangement where you sell someone else's hosting under your brand. A white label domain, in the SaaS sense, is about your customers' own hostnames serving your product without your vendor's name showing.