Custom domains in Lovable require a paid plan. Configure them by clicking Publish, entering your domain, then adding a CNAME record pointing to Lovable's servers in your DNS provider. SSL certificates are provisioned automatically. If using Cloudflare, set the DNS proxy to 'DNS only' to avoid Error 1000 conflicts.
Why custom domain setup fails or shows errors in Lovable projects
Every published Lovable project gets a default subdomain at yourapp.lovable.app. Custom domains let you use your own domain (like app.yourbrand.com) instead. The setup involves two sides: telling Lovable about your domain, and telling your DNS provider to point that domain to Lovable's servers. The most common failure is DNS misconfiguration. Users add the wrong record type (A record instead of CNAME) or point to the wrong target. Lovable expects a CNAME record pointing to a specific value shown in the publish settings. If the CNAME is missing or wrong, SSL certificate provisioning fails and the domain shows an error. Cloudflare users hit a specific issue: Error 1000 'DNS points to prohibited IP'. This happens because Cloudflare's proxy (orange cloud icon) intercepts the connection before it reaches Lovable, and Lovable's SSL provisioning cannot complete through Cloudflare's proxy. The fix is setting the DNS record to 'DNS only' (grey cloud icon) so the connection goes directly to Lovable.
- Wrong DNS record type — CNAME is required but an A record was added instead
- CNAME target incorrect — pointing to the wrong hostname or missing the trailing dot
- Cloudflare proxy enabled — the orange cloud icon blocks Lovable's SSL provisioning
- DNS propagation not complete — records take up to 48 hours to propagate globally
- Domain not configured in Lovable's publish settings — DNS points to Lovable but Lovable does not recognize the domain
Error messages you might see
Error 1000: DNS points to prohibited IPThis Cloudflare error appears when the DNS proxy (orange cloud) is enabled. Set the CNAME record to 'DNS only' (grey cloud) in Cloudflare so the connection goes directly to Lovable.
Custom domain is still being configuredLovable is waiting for DNS to propagate or for SSL provisioning to complete. DNS changes can take up to 48 hours. If it persists beyond that, check your CNAME record points to the correct target.
SSL certificate provisioning failedLovable could not issue an SSL certificate for your domain. This usually means the CNAME record is wrong or Cloudflare's proxy is intercepting the verification request.
Before you start
- A Lovable project on a paid plan (Pro, Business, or Enterprise)
- A domain you own with access to its DNS management panel
- The project published at least once to lovable.app
How to fix it
Add your custom domain in Lovable's publish settings
Lovable needs to know which domain to expect so it can provision SSL and route traffic correctly
Add your custom domain in Lovable's publish settings
Lovable needs to know which domain to expect so it can provision SSL and route traffic correctly
Click the Publish icon in the top-right corner of the Lovable editor. In the publish configuration panel, find the custom domain section. Enter your domain (like app.yourbrand.com). Lovable will display the CNAME target you need to configure in your DNS provider. Copy this value — you will need it in the next step. Click Save or Publish to register the domain.
Expected result: Lovable shows the CNAME target value and the domain status changes to 'Configuring' or 'Pending DNS'.
Add a CNAME record in your DNS provider
The CNAME record tells browsers that your domain should resolve to Lovable's servers
Add a CNAME record in your DNS provider
The CNAME record tells browsers that your domain should resolve to Lovable's servers
Log into your domain registrar or DNS provider (like Cloudflare, GoDaddy, Namecheap, or Google Domains). Navigate to the DNS settings for your domain. Add a new CNAME record with: Name set to the subdomain you want (like 'app' for app.yourbrand.com, or '@' for the root domain), Target set to the value Lovable provided in the publish settings, and TTL set to Auto or 300 seconds. If you want to use the root domain (yourbrand.com without 'app'), some DNS providers require an ALIAS or ANAME record instead of CNAME — check your provider's documentation.
Expected result: The CNAME record is live. You can verify with a DNS lookup tool — the domain should resolve to Lovable's servers.
Disable Cloudflare proxy if using Cloudflare DNS
Cloudflare's proxy intercepts SSL provisioning and causes Error 1000 on Lovable custom domains
Disable Cloudflare proxy if using Cloudflare DNS
Cloudflare's proxy intercepts SSL provisioning and causes Error 1000 on Lovable custom domains
If you use Cloudflare for DNS, go to the DNS settings page. Find your CNAME record. Click the orange cloud icon next to the record to toggle it to grey (DNS only). This disables Cloudflare's proxy and lets traffic go directly to Lovable, which handles SSL on its end. You lose Cloudflare's CDN and DDoS protection for this record, but Lovable provides its own SSL and CDN through its hosting infrastructure.
Expected result: The cloud icon is grey (DNS only). Error 1000 is resolved and SSL provisioning begins.
Wait for DNS propagation and verify the setup
DNS changes take time to propagate across global nameservers — your domain may not work immediately
Wait for DNS propagation and verify the setup
DNS changes take time to propagate across global nameservers — your domain may not work immediately
After adding the CNAME record, wait for DNS to propagate. This typically takes 5-30 minutes but can take up to 48 hours in rare cases. Check the domain status in Lovable's publish settings — it should change from 'Configuring' to 'Active' once Lovable verifies the DNS and provisions the SSL certificate. Visit your custom domain in an incognito window to verify it loads your app. If it still shows an error after 48 hours, double-check the CNAME target value and ensure no conflicting records exist for the same subdomain. For complex domain setups involving multiple subdomains, CDN configurations, or enterprise DNS requirements, RapidDev's engineers have configured custom domains across 600+ Lovable projects.
Expected result: Your custom domain loads your Lovable app with a valid SSL certificate (green padlock in the browser).
Complete code example
1{2 "rewrites": [3 {4 "source": "/(.*)",5 "destination": "/index.html"6 }7 ],8 "headers": [9 {10 "source": "/(.*)",11 "headers": [12 {13 "key": "X-Content-Type-Options",14 "value": "nosniff"15 },16 {17 "key": "X-Frame-Options",18 "value": "DENY"19 },20 {21 "key": "Strict-Transport-Security",22 "value": "max-age=31536000; includeSubDomains"23 }24 ]25 }26 ]27}Best practices to prevent this
- Always use a subdomain (like app.yourbrand.com) instead of the root domain — CNAME records work reliably on subdomains across all DNS providers
- Disable Cloudflare proxy (set to DNS only) for Lovable custom domains to prevent Error 1000 and SSL provisioning failures
- Wait at least 30 minutes before troubleshooting DNS issues — most records propagate within this time
- Update your Supabase redirect URLs to include the new custom domain after setup — OAuth will break on the new domain otherwise
- Add both the custom domain and the lovable.app domain to your OAuth provider settings to keep both working
- Check for conflicting DNS records — remove any existing A or AAAA records for the same subdomain before adding the CNAME
- Bookmark your lovable.app URL as a backup — if the custom domain has issues, the default URL still works
Still stuck?
Copy one of these prompts to get a personalized, step-by-step explanation.
I am setting up a custom domain for my Lovable.dev project and running into issues. Here is my setup: - Domain: [your domain] - DNS provider: [Cloudflare/GoDaddy/Namecheap/etc.] - CNAME record target: [value from Lovable] - Current error: [describe the error or domain status] Please help me: 1. Verify my DNS configuration is correct 2. Troubleshoot the specific error I am seeing 3. Tell me what else I need to update (OAuth URLs, API keys, etc.) 4. Explain how to test if DNS has propagated
I have set up a custom domain [yourdomain.com] for this project. Update any hardcoded references to the lovable.app URL in the codebase to use window.location.origin instead so they work on both the default and custom domains. Also check the OAuth redirectTo values in any sign-in functions.
Frequently asked questions
How do I add a custom domain to a Lovable project?
Click the Publish icon in the top-right corner, enter your domain in the custom domain field, then add a CNAME record in your DNS provider pointing to the target Lovable provides. Wait for DNS propagation and SSL provisioning. Custom domains require a paid plan (Pro or higher).
Why do I see Error 1000 on my Lovable custom domain?
Error 1000 'DNS points to prohibited IP' is a Cloudflare-specific issue. It happens when Cloudflare's proxy (orange cloud icon) is enabled on the CNAME record. Set the record to DNS only (grey cloud icon) in Cloudflare's DNS settings.
How long does DNS propagation take?
Most DNS changes propagate within 5 to 30 minutes. In rare cases, it can take up to 48 hours. You can check propagation status using online tools like dnschecker.org by looking up your CNAME record.
Can I use a root domain without a subdomain?
CNAME records technically cannot be used on root domains (bare domains like yourbrand.com) according to the DNS specification. Some providers like Cloudflare support CNAME flattening which works around this. Otherwise, use a subdomain like app.yourbrand.com or www.yourbrand.com.
Do I need to update OAuth settings after adding a custom domain?
Yes. Add your custom domain to the Supabase Redirect URLs list and to your OAuth provider's authorized redirect URIs. Without this, OAuth sign-in will fail on the custom domain because the provider does not recognize it.
Is SSL included with Lovable custom domains?
Yes. Lovable automatically provisions an SSL certificate for your custom domain after the DNS is correctly configured. You do not need to purchase or upload a separate certificate.
What if I can't fix this myself?
Custom domain setup involving enterprise DNS configurations, multiple subdomains, or Cloudflare integration can be complex. RapidDev's engineers have configured custom domains across 600+ Lovable projects and can resolve DNS and SSL issues quickly.
Talk to an Expert
Our team has built 600+ apps. Get personalized help with your issue.
Book a free consultation