Skip to content

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

  1. 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.
  2. 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.
  3. 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

  1. 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.
  2. Add an A record for the bare domain. For example.com, create an A record with host @ pointing to the IP the host gave you (Vercel uses 76.76.21.21, others differ, so use what your host shows).
  3. Add a CNAME for www. For www.example.com, create a CNAME record with host www pointing to the target the host gave you (often something like cname.vercel-dns.com). A CNAME is just "this name is an alias for that one."
  4. Set the redirect. In the host's domain settings, choose whether www redirects to bare or the other way round. This is why you picked one earlier.
  5. 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.org by entering your domain. When the host's dashboard shows the domain as Valid with a green tick, you are done.
  6. Confirm HTTPS came up. After the records resolve, the host issues an SSL certificate automatically. Visit https://yourdomain.com and 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.