Your Lovable custom domain usually fails because one required DNS record is missing or wrong: most often the TXT verification record, sometimes a leftover AAAA record, or a Cloudflare proxy sitting in front of the A record. Fix the specific record, wait for propagation, and the domain goes live.
Domain Still Not Connecting? Skip the Guesswork
DNS troubleshooting is faster with a second pair of eyes. Get a free audit of your domain setup and find out exactly what’s blocking your Lovable project from going live.

That’s the short version. If you’ve already added something to your DNS panel and the domain still won’t connect, the rest of this guide walks through every record Lovable actually needs, the specific failure modes that trip people up, and the fastest path to a working custom domain.
Two Ways to Connect a Domain in Lovable Now
Before troubleshooting, it’s worth knowing that Lovable now supports two different domain workflows, and which one you’re on changes what “not working” even means.
Buying a domain directly through Lovable. From Project, then Settings, then Domains, you can search for and purchase a domain without leaving the platform. Lovable runs the purchase through Stripe, then automatically creates the required A and TXT records, provisions the SSL certificate, and connects both the root domain and the www version. There’s very little to troubleshoot here because you never touch a DNS panel — if something goes wrong, it’s almost always on Lovable’s backend, not your configuration.
Connecting a domain you already own. This is the path most people run into problems on, and it’s what the rest of this article focuses on. You buy or already hold the domain at a separate registrar — Namecheap, GoDaddy, or a budget option like Hostinger — and you’re responsible for manually entering the records Lovable gives you. If you’d rather understand the record types before you touch your DNS panel, our A-record-vs-CNAME breakdown for Lovable covers the theory in more depth.
The DNS Records Lovable Actually Requires
Lovable doesn’t use a single CNAME the way many simpler hosts do. Depending on whether you’re connecting a root domain or a subdomain, it asks for a combination of record types, and missing any one of them is enough to stall the connection.
The A Record
The A record points your root domain to Lovable’s IP address. Lovable shows you the exact value in the Domains panel when you start a connection. Adding this alone is the single most common half-finished setup — the domain appears to resolve toward Lovable, but the connection never actually completes.
The TXT Verification Record
This is the record people miss most often, and it’s the number one reason a domain sits in a pending or “Verifying” state indefinitely. The TXT record proves you control the DNS for the domain. Without it, Lovable has no way to confirm ownership, no matter how correctly the A record is configured. Copy the value exactly — a stray space or a dropped character will silently fail verification.
The CNAME Record for Subdomains
Subdomains like app.yourdomain.com or portal.yourdomain.com use a CNAME pointing to your specific Lovable project URL instead of an A record, since root-domain rules don’t allow CNAMEs at the apex. The www version of your domain is treated as a separate connection from the root domain and needs its own CNAME entry — it is never included automatically.
What Each Domain Status Actually Means
Lovable’s Domains panel shows a status for every domain you’ve connected, and knowing what each one means saves a lot of guessing:
| Status | What it means | What to do |
|---|---|---|
| Verifying | Lovable is waiting for your DNS records to propagate | Wait, then click Check status |
| Unable to Verify | Verification didn’t complete within about an hour — records are likely wrong or still propagating | Re-check both the A and TXT values against what Lovable shows you |
| Setting Up | Verification passed; the SSL certificate is being issued | Wait — this resolves automatically |
| Action Required | Setup was started but not finished | Return to the domain and complete the connection flow |
| Ready | DNS and SSL are correct, but the project isn’t published yet | Publish your project |
| Live | Fully connected and serving traffic over HTTPS | Nothing — you’re done |
If your domain has been stuck on “Unable to Verify” for more than a few hours, that’s a strong signal one of the two records below is the problem.

The AAAA Record Problem That Breaks Things Silently
This is the failure mode that generates the most confused Reddit posts and support tickets, because it doesn’t throw an obvious error — it just serves the wrong site. An AAAA record is the IPv6 counterpart to an A record, and because resolvers generally prefer IPv6 when it’s present, a leftover AAAA record pointing anywhere other than Lovable’s infrastructure will quietly hijack the routing on IPv6-capable networks.
The fix: open your DNS panel, find any AAAA record on the domain or www subdomain, and delete it. Once that change propagates, traffic follows the A record you configured for Lovable instead.
Cloudflare: The One Setting That Breaks Verification
If your DNS runs through Cloudflare, there’s one setting that causes more Lovable connection failures than anything else: the orange-cloud proxy.
When Cloudflare’s proxy is active on the A record pointing to Lovable, Lovable can’t complete verification, because it’s checking against Cloudflare’s proxy IPs instead of your actual DNS record. The domain gets stuck in “Verifying” and stays there.
The fix is to set the relevant records to DNS-only mode — the grey cloud, not the orange one — for the entire verification process. Once the domain reaches Live status, you can turn proxying back on if you want Cloudflare’s CDN and security layer in front of it; just do it after verification, not during. It’s worth having, too — Cloudflare’s edge caching and DDoS protection genuinely help once your domain is live. If you want full Cloudflare proxying from the start instead, use Lovable’s advanced CNAME flow rather than the standard A-record connection — the two approaches are mutually exclusive, and mixing them is a common source of domains that never resolve.
Step-by-Step: Connecting an Existing Domain Manually
- In Lovable, go to Project, then Settings, then Domains, and start connecting your domain. Keep that browser tab open — you’ll need the exact record values it shows you.
- In a separate tab, open your registrar’s DNS management panel.
- Add the A record with the exact IP Lovable provided, on the root domain (usually represented by @ or left blank, depending on your provider). Set the TTL to something low, like 300 seconds, while you’re testing.
- Add the TXT record exactly as shown — copy-paste it rather than retyping it.
- If you’re connecting a subdomain, add the CNAME pointing to your Lovable project URL instead.
- Delete any AAAA records on the domain, and remove old A or CNAME records left over from a previous host.
- If you’re on Cloudflare, confirm the relevant records are set to DNS-only (grey cloud) until verification finishes. (If you’re evaluating whether Lovable is even the right tool for what you’re building before you sink time into DNS, our honest Lovable.dev review is worth a read first.)
- Return to Lovable and wait. Initial propagation is usually done within one to four hours; full global propagation can take up to 48–72 hours in rare cases.
Tired of Fighting DNS Records?
If Cloudflare, AAAA records, or a stuck TXT value have eaten your afternoon, let someone who does this daily untangle it for you.
Why Your Domain Is Still Not Working: The Real Reasons
- Missing TXT record. The most common cause of a domain stuck in pending. Add it exactly as shown, then trigger a fresh check.
- Propagation hasn’t finished. If your old TTL was high, cached records can take longer to expire. There’s no way to force this globally — a DNS propagation checker will tell you if it’s actually done.
- A typo in a record value. A single wrong character in an IP address or TXT string is enough. Compare line by line against what Lovable shows you.
- The AAAA record conflict. Covered above — delete it.
- Cloudflare proxy interference. Switch to DNS-only mode until the domain is Live.
- Leftover records from a previous host. Old A, CNAME, or TXT entries from a prior setup can conflict silently. Audit everything on the domain and remove anything not part of your current Lovable configuration.
- Browser or CDN caching. Once the DNS is genuinely correct, a stale cache can still show you an old page. Test in an incognito window on a different network before assuming DNS is still broken.
SSL and HTTPS
Lovable automatically issues an SSL certificate once a domain finishes verification through the standard Settings, Domains flow — you don’t configure this separately. If a domain has been Live for more than 72 hours with no valid certificate, that’s no longer a DNS issue on your end; contact Lovable support directly.
If you’re running the advanced Cloudflare-proxy setup instead of Lovable’s standard flow, SSL is managed by Cloudflare, not Lovable, and your Cloudflare SSL mode needs to match — Full (strict) mode against a project that doesn’t yet have its own certificate can cause connection errors between the two.
Setting a Primary Domain
If you’ve connected more than one domain or subdomain to the same project, you can mark one as primary once it’s Live — go to the three-dot menu next to that domain in Settings, Domains, and set it as primary. This matters for SEO: it tells search engines which URL is canonical, so ranking signals consolidate on one address instead of splitting between, say, yourdomain.com and www.yourdomain.com.
When Nothing Above Works: Remove and Re-Add the Domain
If your records check out, propagation is confirmed complete, and there’s still no movement, removing the domain from Lovable’s settings and re-adding it forces a fresh verification attempt rather than retrying against a stuck cached state. Lovable will generate a new TXT value when you re-add it — check whether it differs from the old one, and update your DNS if it does.
Getting Professional Help
DNS troubleshooting eats hours fast, especially once you’ve ruled out every common cause and the domain is still stuck. At that point the issue is usually something registrar-specific, a backend hiccup on Lovable’s side, or an interaction that isn’t obvious from the outside. A developer who works with DNS and web infrastructure regularly can usually audit the full setup and get it resolved in a fraction of the time.
For Agencies and Client Projects
If you’re setting up a Lovable domain on behalf of a client, the domain connection is tied to whichever account actually configures it — so either the client connects it themselves, or you handle it through their registrar access directly. If you’re managing several client domains, keep a record of the A record, TXT value, and any CNAME entries used per project; reconstructing them later from memory when a client reports a broken domain is a bad way to spend an afternoon.
Conclusion
Getting a Lovable custom domain working comes down to a small, specific set of records: an A record and a TXT verification record for the root domain, and a CNAME for any subdomain including www. Nearly every “not working” case traces back to one of a handful of causes — a missing TXT record, a stray AAAA record, Cloudflare’s proxy sitting in front of verification, or simple propagation delay. Work through each one in order, and a Lovable custom domain that’s been stuck for days is usually fixable within the hour. If you’re still stuck after that, removing and re-adding the domain or reaching out to Lovable support is the next move — don’t let a DNS record keep a finished project offline.
Get Your Lovable Project Live, Properly
From domain connection to SSL to ongoing hosting, we handle the technical setup so your project looks as professional as it performs.
FAQ
Why does my Lovable domain say “Unable to Verify”?
This means Lovable tried to confirm your DNS records for about an hour and couldn’t. It almost always means the A record or TXT record is missing, mistyped, or still propagating — double-check both against the exact values Lovable shows in Settings, Domains.
Do I need both an A record and a TXT record for Lovable?
Yes, for a root domain you need both — the A record points traffic to Lovable’s servers, and the TXT record proves you own the domain. Missing the TXT record is the most common reason domains stay stuck in pending.
Why does my Lovable domain load the wrong site or show an error intermittently?
This is usually a leftover AAAA record. Because DNS resolvers often prefer IPv6 when it’s available, an old AAAA record pointing elsewhere can silently override your correctly configured A record on some networks. Delete any AAAA records on the domain.
I use Cloudflare — why won’t my Lovable domain verify?
Cloudflare’s orange-cloud proxy intercepts the DNS resolution Lovable needs to see directly, which blocks verification. Switch the relevant records to DNS-only (grey cloud) mode until your domain reaches Live status, then re-enable proxying if you want it.
How long does it take for a Lovable custom domain to go live?
Most domains verify within one to four hours once the correct records are in place, though full global DNS propagation can occasionally take up to 48–72 hours. If it’s been longer than that with no change, recheck your records rather than continuing to wait.
