Custom domain not working? How to fix it in Lovable and other builders

By the LaunchPal team · Updated 7 November 2026

In short

Most stuck domains come down to five things: old records from a previous host, an AAAA record, Cloudflare’s proxy turned on, a missing verification record, or a CAA record that blocks the certificate. Look up your records with a free DNS lookup, compare them with what your builder asks for, delete what doesn’t belong, and wait. Changes can take a few hours, sometimes up to two or three days.

You bought a domain, followed your builder’s steps, and now it’s been “Setting up” for hours. Or the domain shows your old site, a parking page from the registrar, or a “Not secure” warning. It’s one of the most common questions in builder communities, and the cause is usually in your domain’s DNS records, not in your app.

Lovable is the main example here, with notes for Bolt, Replit, Base44 and Vercel where their setup differs. Each builder’s own steps are linked at the end. Checked on 7 November 2026.

First, check your domain’s settings

Your builder tells you which records to add. Before changing anything, see which records actually exist. Our free domain checker looks them all up at once, checks them for the five causes below and says what to change, with a prompt you can paste into ChatGPT or Claude for your provider’s exact steps.

If you’d rather look yourself:

  1. Open dns.google, Google’s free DNS lookup.
  2. Type your domain, like bloomly.example, and click Resolve. That shows its A records. Change RR Type to AAAA, CNAME, TXT and CAA in turn to see the rest.
  3. Do it again for www.bloomly.example if you want www to work too.
  4. Put the results next to the records your builder shows in its domain settings.

Anything your builder didn’t ask for, on the same name, is a suspect. Records for other things, like MX records for your email, should stay.

The five usual causes

1. Old records from your previous host

If the domain pointed somewhere before, to a registrar’s parking page, an old website or a site builder, those records are often still there. Two A records pointing to different servers can show visitors your old site and stop the certificate for your new one. Lovable and Replit both tell you to keep only the records they gave you for that name.

Fix: at your registrar, delete every A, AAAA and CNAME record on that name that your builder didn’t give you. Leave email records alone.

2. An AAAA record you never added

AAAA records point to an IPv6 address. Some registrars add one automatically. Lovable warns that visitors on IPv6 can then end up on the wrong site. Replit supports only A records and says an AAAA record on the same name can block the certificate. Bolt says an AAAA record won’t connect the domain at all.

Fix: delete AAAA records on that name, unless your builder lists one itself.

3. Cloudflare’s proxy (the orange cloud)

If your domain’s DNS is on Cloudflare, each record has a cloud icon. Orange means Cloudflare sits in between, which can stop your builder from checking your records and issuing your certificate. In Lovable it can show as Cloudflare error 1001 or 1003.

Fix: click the cloud so it turns gray, DNS only, for the records your builder gave you. Lovable has a Uses Cloudflare or similar proxy option under Advanced if you really want the proxy, but then keeping it working is up to you.

4. A missing or wrong verification record

Lovable and Replit ask for a TXT record that proves you own the domain. In Lovable its name is _lovable and its value starts with lovable_verify=. In Replit the value starts with replit-verify=, and Replit needs it to stay there for good, because it’s also used to renew the certificate.

Fix: copy the full value again from your builder’s setup window. Some registrars add your domain to the end of the name by themselves, so if you typed _lovable.bloomly.example, it may have become _lovable.bloomly.example.bloomly.example. Type only _lovable.

5. A CAA record that blocks the certificate

A CAA record lists which companies may issue certificates for your domain. If one exists and doesn’t include your builder’s certificate company, setup hangs at Issuing certificate. Lovable asks you to allow at least one of these, and recommends all three:

Check the main domain as well as any subdomain. Then choose Check again from the domain’s menu in Lovable.

Root, www and subdomains

bloomly.example and www.bloomly.example are two different names, and each needs its own records.

“Domain already in use”

The domain is still connected to another project. In Lovable, disconnect it from the other project first, or use Move and connect if you bought it through Lovable. For a project in another workspace, Connect anyway works once the other project stops using it. Bolt warns when a domain is already connected to another project or in use on Netlify.

How long to wait

After you fix your records, give it time before changing anything else. Each change restarts the clock.

Builder What its docs say
Lovable Usually minutes. DNS changes can take up to 72 hours. Contact support if there’s no certificate after 72 hours
Bolt Most domains within a few hours, up to 24 hours
Replit A few minutes to 48 hours. After about 6 hours of failed checks it shows Failed, and you remove and re-add the domain once your records are right
Base44 Up to 48 hours for domains from another registrar

Replit also warns against removing and re-adding over and over, because every attempt asks for a new certificate and those are limited. The same patience pays off everywhere.

Once the domain works

Make sign-in work on my new domain

My app now runs on my own domain: [your domain]. Add it to the allowed redirect URLs and the site URL in my sign-in settings, and make sure sign-up, password reset and email links use it. Tell me what you changed and anything I need to set myself.

Where to find domain settings in each builder

Builder Where Their guide
Lovable Project → Settings → Domains, then Connect a domain you own Custom domains
Bolt Project name → All project settings → Domains & Hosting Connect a domain
Replit Tools → Domains, then Use a domain you already own Custom domains
Base44 App editor → Dashboard → Domains Custom domain
Vercel Your project’s Settings → Domains Add a domain

Lovable, Bolt and Base44 need a paid plan for your own domain. Vercel’s free plan allows it. If you’ve fixed the records, waited, and it’s still stuck, contact your builder’s support with the results from your DNS lookup. It saves a round of questions.

Keep reading

See all guides