Namecheap BasicDNS Hetzner DNS
Migrate DNS from Namecheap to Hetzner.
7 record types move as they are. 2 things work differently at Hetzner, 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
- CAA
Alias records are converted
URL, URL301, FRAME, MXE aren't available
A typical Namecheap zone at Hetzner
Example records for example.com. Open any flagged row to read why it changed.
Namecheap Hetzner
- UnsupportedALIAS@
Not migrated
@ is an alias to app.example-host.net at the zone apex. Hetzner doesn't support apex aliases or CNAMEs.
- 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"
- ExactCNAMEblog
example.github.io.
- UnsupportedURL301go
Not migrated
URL301 is a Namecheap redirect feature, not a DNS record. Recreate it as a redirect rule at Hetzner.
- ExactCNAMEwww
example.com.
| Status | Type | Name | At Hetzner | TTL | Details |
|---|---|---|---|---|---|
| Unsupported | ALIAS | @ | Not migrated | — | |
| Exact | MX | @ |
| 1h | |
| Exact | TXT | @ |
| 1h | |
| Exact | CAA | @ |
| 1h | |
| Exact | TXT | _dmarc |
| 1h | |
| Exact | CNAME | blog |
| 30m | |
| Unsupported | URL301 | go | Not migrated | — | |
| Exact | CNAME | www |
| 1h |
How the move works
- 1
Connect Namecheap
Connect Namecheap with read-only access (API user + API key, with our egress IP allow-listed).
- 2
Connect Hetzner
Connect Hetzner (Hetzner Cloud API token (per project)). 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 Hetzner
We snapshot the Hetzner zone, write in batches, and leave Namecheap untouched.
- 5
Verify
We query Hetzner'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 Namecheap
- Namecheap's API replaces the whole host list on every write, so we always read, merge and then write.
- SRV records can't be managed through the API.
- URL redirect records are Namecheap-specific and aren't real DNS records.
Access we need: API access enabled under Profile → Tools, with our static IP added to the allow-list.
Good to know about Hetzner
- Uses the Hetzner Console (Cloud API) DNS. The old DNS Console at dns.hetzner.com and its API were shut down in May 2026.
- The Cloud API has no DNSSEC signing, so turn DNSSEC off at the registrar before switching nameservers.
- Only registrable domains can be zones. Subdomains such as dev.example.com can't be their own zone.
Access we need: A Read token for the preview; a Read & Write token to apply.
Questions
Will there be downtime moving from Namecheap to Hetzner?
Not if both providers serve the same answers during the switch. The records are copied to Hetzner 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 Namecheap?
No. We never write to Namecheap. 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 Hetzner and publish its new DS record. The cutover plan walks you through each step.
Ready to see your own zone?
Start a free preview