Skip to content

Connect a custom domain

Give your published app a web address of your own. WebDIY guides you through the setup and takes care of HTTPS for you.

On this page

With a custom domain, visitors can reach your app at an address you own, like example.com, where search engines can list it. Add your domain in WebDIY, follow the setup instructions, and we'll handle the secure connection. Your original website.diy address will continue to work, too, sending visitors on to your domain.

What you'll need

Custom domains come with the Pro and Max plans. Free doesn't include custom domains.

To connect one, you need to be an Admin of the project. You're the Admin of any project you create, and your organization's Owner and Admins can manage every project. Builders and Viewers can open the Domains screen but can't change anything on it.

You'll also need access to the domain's DNS settings. Those are usually with the company you bought the domain from.

If the project isn't published yet, that's fine. You can still connect the domain, and it starts serving your app when you publish.

Root domain or subdomain?

You connect Example What gets set up DNS records
A root domain example.com The root domain and its www. One serves your app, and the other redirects to it. 3
A subdomain shop.example.com Just that one address. 2

Either way, it counts as 1 of your organization's custom domains.

Connecting your domain

  1. In your project, open Tools, then select Domains under Site.

  2. Select Add domain to open the Connect a domain dialog.

  3. Enter the domain, like example.com, and select Continue.

    Under the field, the dialog spells out what it'll connect: "We'll connect example.com and www.example.com".

  4. In a new tab, sign in to your DNS provider and add each record the dialog lists. Use the copy button next to each name and value, so nothing gets mistyped. You'll also find the records in The DNS records below.

  5. Come back to WebDIY and select I've added them to check the records.

    Each record shows Found or Not found yet, and the screen checks again every 30 seconds while it's open. You can close it and come back later.

  6. Once every record is found, we verify that you own the domain and set up the HTTPS certificate. This usually takes a few minutes.

    The domain's card shows it as connected, and visitors reach your app at https://example.com.

DNS changes usually show up within minutes, though they can take up to an hour. If we don't find the records within 7 days, the claim lapses. Select Reconnect on the domain's card to get fresh records.

The DNS records

For a root domain

Type Name Value
A @ 8.233.131.68
CNAME www connect.website.diy
TXT _webdiy webdiy-verify=… (copy your value from WebDIY)

For a subdomain

Type Name Value
CNAME your subdomain's name, like shop connect.website.diy
TXT _webdiy webdiy-verify=… (copy your value from WebDIY)
  • The A record points your root domain at WebDIY, and a CNAME record points a hostname at WebDIY. The TXT record is how you prove you own the domain.
  • Enter the TXT name exactly as shown, underscore included. Most DNS editors add your domain to the name for you, so _webdiy becomes _webdiy.example.com.
  • The TXT value is different for every domain, so copy yours from WebDIY rather than from this page.

If your domain's DNS is on Cloudflare, set these records to DNS only (gray cloud) rather than Proxied.

Figure 1. The DNS checklist for a root domain: two records found, WebDIY waiting on the TXT record. Your TXT value will be different.

Which address do visitors land on?

For a root domain, the root serves your app and www redirects to it. If you'd rather serve at www, open the menu on the domain's card and select Serve at www.example.com instead.

When a project has more than one domain, select Make primary on the one you want visitors to land on, and your other addresses redirect to it. If you want an address to serve your app directly, turn off Redirect to primary on its card. Search engines may then treat it as a duplicate of your primary domain.

Once your domain is connected, search engines can list your app there. Your website.diy address sends visitors and search engines on to your primary domain, so your domain is the one in results. Getting listed takes time, and adding your domain to Google Search Console shows you when Google has found it. If you disconnect the domain, or it moves to another project, your site goes back to its website.diy address and drops out of search results over time.

What if the domain is already in use?

If the domain is already connected to another project, WebDIY tells you as soon as you enter it. Add the records and check them as usual. Once they're verified, the domain moves to this project and the other project stops serving at it.

Disconnecting a domain

Open the menu on the domain's card and select Disconnect. Your app stops serving at that domain right away, and its slot goes back to your organization. The DNS records stay where they are at your provider, so remove them there if you don't need them anymore.

How many domains you can connect

Plan Custom domains
Free Not included
Pro 5 per organization
Max 50 per organization
  • All the projects in your organization share these slots, and a root domain with its www counts once.
  • A deleted project holds on to its slots for 7 days, until it's deleted for good.
  • When every slot is taken, Add domain is unavailable. Disconnect a domain you're not using, or upgrade.
  • If your organization moves to Free, the domains you've connected keep serving, but you'll need Pro to connect another one.

To compare plans, see Plans.

Troubleshooting

My domain still shows my old website

Your DNS provider probably still has A, AAAA or CNAME records from a previous website. Remove the old records for the names you're connecting so only WebDIY's are left, then give DNS a few minutes to catch up.

I'm getting a Cloudflare 1001 or 1003 error

Your DNS is on Cloudflare and the record is set to Proxied (orange cloud). Switch this domain's records to DNS only (gray cloud), wait a few minutes and try again.

Verification keeps failing

Start with the TXT record. Its name keeps the underscore (_webdiy) and its value has to match exactly, so it's best to use the copy button. If there's already a TXT record with a different value, probably from an earlier claim, replace its value with the one WebDIY shows.

The certificate seems stuck

If your domain has CAA records, they need to allow both certificate authorities. Add 0 issue "pki.goog" and 0 issue "letsencrypt.org", or remove the CAA records.

NOT YET SEEN BY A PERSON ON PRODUCTION: the first real root-domain connect (§5). Ask the operator before publishing this page. -->

Recent changes

Last updated October 30, 2026View as MarkdownChangelog