Skip to main content
These answers cover connecting and troubleshooting custom domains. For full reference, see Add a custom domain and Custom domains.
If you bought your domain through Replit, the DNS records are managed for you—open Publishing → Domains and follow the in-product setup. See Domain purchasing.To connect a domain from an external registrar:
  1. Open your project and go to Publishing → Domains.
  2. Select Connect your own domain, enter your domain, and continue.
  3. Replit shows an A record and a TXT record—copy both.
  4. Add both records at your DNS provider.
  5. Return to Replit and start verification.
A few important notes:
  • Both an A record and a TXT record are required for SSL. Apex (root) CNAMEs aren’t supported—use an A record for your root domain.
  • Wildcard certificates (*.example.com) aren’t supported; connect each subdomain individually.
  • On Cloudflare, set your A record to DNS only (the grey cloud) so proxy mode doesn’t block SSL setup.
  • DNS changes can take up to 48 hours to propagate.
See Custom domains for the full reference.
Work through these checks in order—most issues come from one of them:
  1. Wait for DNS to propagate. Changes can take up to 48 hours. Confirm your records are visible globally with a DNS lookup tool.
  2. Remove AAAA records. IPv6 (AAAA) records on the same hostname as your A record can block SSL.
  3. Remove old or conflicting A records. Keep only one A record at your root domain pointing to Replit.
  4. Set Cloudflare to DNS only. The orange cloud (proxy mode) interferes with SSL provisioning.
  5. Disconnect and reconnect the domain once in Publishing → Domains → Manage to force a fresh certificate, then wait a few minutes and reload. Each reconnect requests a new certificate, so avoid repeated retries. See Retry failed domains safely.
  6. Check CAA records. If you have CAA records, at least one must allow Let’s Encrypt as an issuer, since Replit issues certificates through it.
These checks apply to externally registered domains. If you bought your domain through Replit, contact Replit Support. See Custom domains.
Yes, for about 6 hours. After you add a domain, Replit checks its DNS records every 1 to 2 minutes for about 6 hours. If your records appear in that window, Replit verifies the domain and issues SSL automatically.After about 6 hours, the domain shows as Failed and Replit stops checking. Confirm your records are correct, then remove the domain and add it again.Add the A record and the TXT record at the same time. Replit can only issue SSL after the A record points to Replit. See How long Replit checks your DNS records.
Replit issues SSL certificates through Let’s Encrypt, which limits how many certificates each domain can get:
  • 50 new certificates per registered domain. All subdomains of example.com share this limit, including certificates issued by other hosts that use Let’s Encrypt. The limit frees up gradually, about 7 certificates per day. It doesn’t reset all at once each week.
  • 5 certificates per exact hostname in 7 days. Removing and re-adding the same subdomain always uses this limit. If the subdomain never got a certificate, re-adding it also uses the shared limit of 50.
To stay under the limits, add up to 50 new subdomains at once, then about 7 more per day. To retry a failed subdomain, remove it and add it again once, one domain at a time. Don’t remove and re-add domains that already work.See Connect many subdomains to one domain.
A few issues commonly come up when using Clerk authentication on a custom domain:
  • “Clerk CNAME records required” warning. This is a Clerk integration requirement and doesn’t block your domain’s verification or SSL. Open Publishing → Domains, select Manage, find the authentication DNS setup section, and add each listed CNAME record exactly at your DNS provider. If the section doesn’t appear, disconnect and reconnect the domain.
  • Domain stuck on Verifying after prior Clerk use. If the domain was attached to a different Clerk application, remove it there in your Clerk dashboard, then disconnect and reconnect the domain in Replit.
  • Migrating to your own Clerk instance. Switching from Replit-managed Clerk to your own instance requires a manual step—contact Replit Support. See Can I bring my own Clerk app?
If you’re still stuck, contact Replit Support with your domain name, your project name, and what you’ve already tried.

Still need help?

If your domain question isn’t answered here, contact Replit Support.