Amazon Route 53 Vercel DNS
Migrate DNS from Route 53 to Vercel.
9 record types move as they are. 3 things work differently at Vercel, and the preview shows exactly which of your records they affect.
Free preview. Read-only. Nothing changes until you apply.
What works differently
Generated from the same provider capability data the migration engine uses.
Moves as-is
- A
- AAAA
- CNAME
- MX
- TXT
- NS
- SRV
- CAA
- HTTPS
Routing policies are flattened
PTR, DS, SVCB, TLSA, SSHFP, NAPTR aren't available
TTLs below 60s are raised
A typical Route 53 zone at Vercel
Example records for example.com. Open any flagged row to read why it changed.
Route 53 Vercel
- TranslatedALIAS@
d1a2b3.cloudfront.net.
Stored as a Vercel ALIAS record to d1a2b3.cloudfront.net.
- ExactMX@
10 mx1.mail.example.net. +1
- ExactTXT@
"v=spf1 include:_spf.example.net -all"
- ExactCAA@
0 issue "letsencrypt.org"
- ExactTXT_dmarc
"v=DMARC1; p=reject; rua=mailto:dmarc@example.com"
- ExactSRV_sip._tls
100 1 443 sip.example.net.
- ReviewAapi
192.0.2.10 +1
Weighted routing isn't available at the destination. All 2 answers are served together as simple round-robin.
- TranslatedTXTlegacy
"v=spf1 -all"
SPF record type is obsolete. Stored as TXT, which is what mail servers read.
- ExactCNAMEwww
example.com.
| Status | Type | Name | At Vercel | TTL | Details |
|---|---|---|---|---|---|
| Translated | A ALIAS | @ |
| 1m | |
| Exact | MX | @ |
| 1h | |
| Exact | TXT | @ |
| 1h | |
| Exact | CAA | @ |
| 1h | |
| Exact | TXT | _dmarc |
| 1h | |
| Exact | SRV | _sip._tls |
| 1h | |
| Review | A | api |
| 1m | |
| Translated | SPF TXT | legacy |
| 5m | |
| Exact | CNAME | www |
| 1h |
How the move works
- 1
Connect Route 53
Connect Route 53 with read-only access (Cross-account IAM role with an external ID).
- 2
Connect Vercel
Connect Vercel (Access token (+ team ID)). Write access is only used when you apply.
- 3
Review the preview
Check every record marked Review or Unsupported. Each one explains what changes and why.
- 4
Apply to Vercel
We snapshot the Vercel zone, write in batches, and leave Route 53 untouched.
- 5
Verify
We query Vercel's own nameservers for every record and compare the answers before you switch.
- 6
Switch nameservers
Lower TTLs a day or two ahead, remove any DS record if DNSSEC is on, then point the domain at the new nameservers at your registrar.
Good to know about Route 53
- Alias records can only target AWS resources or records in the same hosted zone.
- Weighted, latency, geolocation and failover routing are Route 53 features. Most other providers can't reproduce them.
- Apex CNAMEs are not allowed. Use an alias record instead.
Access we need: route53:ListHostedZones, GetHostedZone, ListResourceRecordSets for the preview; ChangeResourceRecordSets and CreateHostedZone to apply.
Good to know about Vercel
- Records Vercel adds for project domains (such as the apex ALIAS and CAA) are read with a comment and never changed by us. Edit them in the project's domain settings.
- Domains must already be added to the Vercel account or team. We can't create them.
- Vercel DNS doesn't support DNSSEC, and the minimum TTL is 60 seconds.
Access we need: An access token scoped to the team that owns the domains. Vercel tokens can't be read-only.
Questions
Will there be downtime moving from Route 53 to Vercel?
Not if both providers serve the same answers during the switch. The records are copied to Vercel and verified before you change nameservers, so resolvers get the same answer from either side while caches expire.
Do I have to delete anything at Route 53?
No. We never write to Route 53. Keep the old zone for a week after cutover so you can switch back instantly if anything looks wrong.
What about DNSSEC?
If DNSSEC is on, remove the DS record at your registrar and wait for it to expire before switching nameservers. Then enable DNSSEC at Vercel and publish its new DS record. The cutover plan walks you through each step.
Ready to see your own zone?
Start a free preview