How Do I Connect a Custom Domain to the App My Agent Built?
6 min read
Your app works, but it lives at something like my-app-xk29.vercel.app, and you
bought a real domain you want to use instead. To connect them you do two things:
add the domain in your host's dashboard, then add the DNS records it gives you at
your domain registrar. That's the whole job. The confusing part is that the two
sides live in different places, and the change can take a few hours to spread.
Why this feels harder than it should
Your app's host (Vercel, Netlify, Lovable, Replit, Cloudflare Pages) is where the app runs. Your registrar (the company you bought the domain from, like Namecheap, GoDaddy, or Google Domains) controls where the domain points. Nothing connects them automatically. You have to tell the registrar "send visitors for this domain to my host," and tell the host "expect visitors for this domain."
Your AI agent built the app, but it never touched your registrar, because it has no access to it and you never mentioned the domain. So this last step is on you, and it is genuinely a separate system from your code.
How to check where you stand
- Log in to your host and find Settings > Domains (the wording varies). If your custom domain is not listed there, the host does not yet know about it.
- Log in to your registrar and find DNS or DNS records. Look at what is there now. A brand-new domain usually has placeholder or parking records.
- Decide which address you want people to type: the bare domain
(
example.com) or the www version (www.example.com). You will make one the primary and redirect the other to it. Pick one and be consistent.
The fix
- Add the domain on the host first. In your host's Domains settings, enter your domain. The host will show you the exact DNS records to create. Copy these, they are the source of truth.
- Add an A record for the bare domain. For
example.com, create anArecord with host@pointing to the IP the host gave you (Vercel uses76.76.21.21, others differ, so use what your host shows). - Add a CNAME for www. For
www.example.com, create aCNAMErecord with hostwwwpointing to the target the host gave you (often something likecname.vercel-dns.com). A CNAME is just "this name is an alias for that one." - Set the redirect. In the host's domain settings, choose whether
wwwredirects to bare or the other way round. This is why you picked one earlier. - Wait, then verify. DNS changes propagate across the internet, which can
take anywhere from a few minutes to a few hours. Check progress at
dnschecker.orgby entering your domain. When the host's dashboard shows the domain as Valid with a green tick, you are done. - Confirm HTTPS came up. After the records resolve, the host issues an SSL
certificate automatically. Visit
https://yourdomain.comand check for the padlock.
The trap to avoid
Do not keep editing records every ten minutes because "it isn't working yet."
Nine times out of ten the records are correct and you are simply waiting for
propagation. Changing them resets the clock and creates real conflicts. Set the
records once, then leave them alone for a couple of hours before you touch
anything. The other common mistake is adding the same host name twice with
conflicting record types, for example both an A record and a CNAME on @, which
most registrars will reject or behave oddly with.
Where this fits
A real domain is one of the visible signals that your app is a product and not a prototype, and it needs to be solid before you send the link to your first users. Once the domain resolves, make sure the padlock is really there, because a "Not Secure" warning undoes the trust a nice domain buys you, see why does my site say Not Secure. The free Readiness Report checks your live domain and certificate the way a visitor's browser would, and the Finishing Pass hands you the remaining launch steps in order. When you are close, the launch-day checklist for a vibe-coded app covers what to confirm before you go live.