Domain transfer vs nameserver delegation: which path to AWS
You bought a domain at GoDaddy. You want to host the site at AWS — S3, CloudFront, the cheap stack. You realize Route 53 is the cleanest DNS provider for AWS-native sites because of alias records and integration with ACM certificates.
You have two paths to get there.
Path A — Domain transfer. GoDaddy stops being your registrar. AWS becomes your registrar. You pay AWS at renewal. Your domain belongs to your AWS account.
Path B — Nameserver delegation. GoDaddy stays your registrar. Route 53 hosts the DNS records (the actual A, CNAME, MX records). You point GoDaddy's nameserver fields at the AWS-provided nameservers. GoDaddy still bills you at renewal; AWS handles the DNS.
Most founders default to Path A because it sounds cleaner. Path B is almost always the right answer for an MVP. Here's why.
What's the same
Both paths give you full Route 53 capability:
- Alias records (the AWS magic that lets you point at CloudFront / Load Balancers / API Gateway without an IP).
- Quick DNS updates (Route 53 propagates in seconds, not the registrar's typical 30+ minutes).
- ACM cert validation via DNS records (just one CNAME).
- Integration with the rest of AWS.
Once delegation is set up, you don't notice a difference between the paths in day-to-day operations.
What's different
| Concern | Path A (Transfer) | Path B (Delegation) |
|---|---|---|
| Who you pay | AWS | GoDaddy |
| Renewal cost | $13/yr (Route 53) | $20/yr typical (GoDaddy) |
| Reversal cost | Another transfer ($13 + 5-day window) | Change nameservers back (free, instant) |
| Initial work | Transfer process (1-7 days) | Two text-field updates (5 minutes) |
| Email forwarding | You set up SES/Lambda yourself | GoDaddy's free forwarding still works |
| Domain locked period | 60 days after transfer (ICANN rule) | None |
| Loss of GoDaddy add-ons | Yes (privacy, forwarding, etc.) | No |
The biggest practical difference is the reversal cost. With Path B, if you decide to leave AWS for any reason, you change two text fields and you're done. With Path A, you've committed to AWS as your registrar, and reversing means another transfer with its own waiting period.
When Path A (Transfer) makes sense
- You're consolidating accounts. Managing 30 domains across AWS is easier than 30 across mixed registrars. If you have a portfolio, transfer.
- You hate dealing with GoDaddy. Their UI is a sales funnel. AWS Route 53 is bare. Some people find this restful.
- You've decided AWS is your forever provider. If you're 100% AWS for everything and not changing your mind, the transfer reduces vendor count.
When Path B (Delegation) makes sense
- You're not sure yet whether AWS is your forever provider. Reversibility is free.
- You like GoDaddy's free email forwarding and don't want to set up SES + Lambda.
- You bought the domain at GoDaddy because of a promo price. Renewal at AWS would be more expensive than your renewal at GoDaddy with the loyalty discount applied.
- You want to ship today. Transfer takes days. Delegation takes minutes.
For most founders shipping an MVP, Path B is the answer. Reversible, fast, free.
How Path B works (the nameserver delegation flow)
1. Create a Route 53 hosted zone for the domain. AWS Console → Route 53 → Hosted zones → Create. Type: Public. Domain: your-domain.com.
This generates four nameservers like:
ns-1255.awsdns-28.org
ns-1807.awsdns-33.co.uk
ns-316.awsdns-39.com
ns-789.awsdns-34.net
Copy them.
2. Update GoDaddy's nameserver fields. GoDaddy → Domain Portfolio → click into your domain → DNS / Nameservers → Change → "Enter my own nameservers" (custom).
Paste the four AWS nameservers, one per line. Save.
3. Wait for delegation. DNS delegation propagation usually completes in 5-30 minutes. You can check with dig +short NS your-domain.com — once it returns the AWS nameservers, you're delegated.
4. Add your records in Route 53. From this point on, every DNS record (A, CNAME, MX, TXT) gets created in Route 53. GoDaddy's DNS panel becomes irrelevant — even if you make changes there, they have no effect.
That's the whole thing. Three steps, mostly waiting.
The DNS record cheat sheet for an AWS-hosted static site
Once delegated, you'll typically add:
A apex (your-domain.com) alias → cloudfront.net distribution
A www.your-domain.com alias → cloudfront.net distribution
AAAA apex alias → cloudfront.net distribution (IPv6)
AAAA www alias → cloudfront.net distribution (IPv6)
CNAME _amazonses.your-domain.com ACM cert validation
CNAME <random>.dkim.amazonses.com SES DKIM (if using SES inbound)
TXT apex SPF record + ACM verification token
MX apex inbound-smtp.us-east-1.amazonaws.com (if using SES)
A and AAAA records use Route 53's alias feature — pointing directly at the AWS resource by name instead of an IP. Aliases are free (no per-query charge) and are the AWS-native pattern.
How to know which path you've taken
Check your registrar field at WHOIS:
whois your-domain.com | grep -i registrar
Registrar: GoDaddy.com, LLC→ you're on Path B (delegation).Registrar: Amazon Registrar, Inc.→ you're on Path A (transferred).
You can switch between them later, in either direction. It's not a one-way door.
What this site did
vibecodersguidetomvp.help is on Path B. I bought the domain at GoDaddy, created a Route 53 hosted zone, copied the four nameservers, pasted them into GoDaddy's "Custom Nameservers" field, and was done in 5 minutes.
If I ever decided to leave AWS — say, if I migrated this static site to Cloudflare Pages — I'd update DNS records in Route 53 to point at Cloudflare, or I'd delegate to Cloudflare's nameservers from GoDaddy. Either way, no transfer required, no waiting period, no risk.
The reversibility is worth the $7/year I "save" by not transferring to AWS at $13. For an MVP, I'd always take that trade.
What the skills do
The Vibe Coder's Guide domain skill (sub-skill 14) walks the founder through the GoDaddy purchase plus DNS setup. It defaults to delegation (Path B) for the reasons above. If the founder explicitly wants to transfer, the skill supports that, but the agent doesn't push it.
When in doubt, delegate. You can transfer later. You can't easily un-transfer.