DNS specs won’t let you put a CNAME record on your apex domain (the naked root, like example.com). If you deploy to platforms like Vercel, Render, or AWS Amplify and they hand you a hostname like cname.vercel-dns.com instead of a static IP, dropping a CNAME directly on @ breaks zone routing immediately.
Namecheap gets around this with a pseudo-record type called an ALIAS record (essentially CNAME flattening managed on their nameservers). I had to wire this up recently while migrating a production app from a VPS to an edge host that doesn’t issue static IPv4 addresses. Getting it working took about three minutes in Namecheap BasicDNS once I cleared out their default garbage records. Here’s how it works under the hood, how to set it up without breaking email, and how to verify it with dig.

Why You Cannot Put a CNAME on an Apex Domain
This isn’t Namecheap being stubborn; it’s baked into RFC 1034 (section 3.6.2). The rule is simple: if a CNAME record exists at a node, no other record types can exist at that same node.
Your root domain can’t live without several critical records sitting right at @:
- SOA (Start of Authority): Identifies the authoritative zone coordinator and refresh timers.
- NS (Nameserver): Tells resolvers which nameservers handle queries for your zone.
- MX (Mail Exchange): Tells mail servers where to deliver emails sent to
you@example.com.
If your DNS provider let you blindly drop a CNAME on @, every single query for your MX or NS records would follow that alias redirect and hit your web host’s servers instead. Your incoming email would drop off the map instantly. That’s why any compliant DNS dashboard blocks raw CNAMEs on the root.
How Namecheap ALIAS Records Work Under the Hood
An ALIAS record (called ANAME or CNAME flattening by other providers) isn’t an official DNS record type. Resolvers on client laptops, phones, and home routers don’t have a clue what an ALIAS record is. They only understand standard types like A, AAAA, CNAME, and TXT.
Instead, ALIAS is a server-side resolution trick handled entirely by Namecheap’s authoritative nameservers:
- You point your root host (
@) to an external hostname (likeyour-app.vercel-dns.com). - Namecheap’s nameservers run background queries against that target hostname to pull its active public IP addresses (A and AAAA).
- When a visitor requests the A record for
example.com, Namecheap dynamically answers with those resolved IP addresses.
To the outside world, your apex domain looks like it has normal, healthy A records. You bypass the RFC limitation, and your MX records keep working untouched.
Clear the Default Namecheap Parking Records First
Every time you buy a domain on Namecheap or reset your zone to BasicDNS, Namecheap injects default parking records. If you add an ALIAS record without nuking these first, half your visitors will hit Namecheap’s parking page because DNS queries will round-robin between your real target and Namecheap’s parking IP.
Head to your Namecheap account, go to Domain List, hit Manage next to your domain, and click the Advanced DNS tab.
Look at the Host Records table and delete these two rows right away:
A Recordwith Host@pointing to198.54.117.x(their parking IP).CNAME Recordwith Hostwwwpointing toparkingpage.namecheap.com..
If you already routed your mail using custom mail records on Namecheap or added SPF, DKIM, and DMARC in Namecheap DNS, leave those TXT and MX entries alone. Only scrap existing A or CNAME entries assigned to @ and www.
Step-by-Step: Adding the ALIAS Record in Namecheap
With the parking entries out of the way, you can point the apex directly to your provider’s hostname.
- In the Advanced DNS tab under Host Records, click Add New Record.
- From the Type dropdown, select ALIAS Record.
- Set the Host field to
@(which represents the root domain). - In the Value field, paste your platform target hostname (e.g.,
example-app.vercel-dns.comorcdn-origin.azureedge.net). Don’t includehttp://orhttps://. - Leave TTL set to Automatic (or pick 5 min if you’re actively migrating and want rapid updates).
- Click the green checkmark to save.
Most setups also require the www subdomain to hit the same application. Add another record right below it:
- Type:
CNAME Record - Host:
www - Value: The exact same target hostname (or your root domain
example.com.depending on your redirect flow). - TTL:
Automatic
If you’re routing assets through a dedicated edge network or running multi-tier apps, check our guide on how to connect Namecheap DNS to an edge CDN for related architectures.
What I Ran: Verifying Resolution and Flattening with Dig
Namecheap BasicDNS updates push to their nameservers within 60 to 180 seconds. Don’t sit around waiting hours wondering if it worked. I always test directly against Namecheap’s nameservers using dig to bypass local ISP resolver caches.
Query one of Namecheap’s authoritative nameservers directly:
dig @dns1.registrar-servers.com example.com A +noall +answerInstead of returning an ALIAS or CNAME type, Namecheap should return standard A records reflecting the upstream target’s IP. Here’s what my terminal dumped during a live migration:
; <> DiG 9.18.28 <> @dns1.registrar-servers.com myapp.dev A +noall +answer
myapp.dev. 300 IN A 76.76.21.21Notice how Namecheap dynamically synthesized the IP (76.76.21.21) directly into standard A records. Next, verify your MX records weren’t trampled:
dig @dns1.registrar-servers.com myapp.dev MX +noall +answerYour mail exchange entries should resolve cleanly without any reference to the web hosting endpoint:
myapp.dev. 1800 IN MX 10 mail.privateemail.com.The Trailing Dot and Host Parsing Quirks
One quirk that trips people up in Namecheap is whether to include a trailing dot at the end of the target hostname. In standard BIND zone files, a trailing dot (like target.com.) flags a fully qualified domain name (FQDN). Without it, nameservers usually append the zone origin, creating a messy mess like target.com.example.com.
Namecheap’s current UI automatically strips trailing dots when you save. If you enter app.herokuapp.com., it normalizes to app.herokuapp.com. But be careful with protocols: never paste https:// or a trailing slash (/). Namecheap will let you save an address like https://target.com without warning, but the backend resolver will fail silently and spit out SERVFAIL to anyone querying your domain.
Handling the Canonical Redirect: WWW vs Apex
You need to pick one primary URL format: either the root (https://example.com) or the subdomain (https://www.example.com). Serving both without a 301 redirect will hurt SEO and cause session cookie issues.
Here are the two ways to handle it on Namecheap:
Approach A: Edge Host Handles the Redirect
If you’re hosting on Vercel, Netlify, Cloudflare Pages, or AWS Amplify, let the platform manage the redirect. Add both example.com and www.example.com to your project’s custom domains dashboard, and mark your preferred version as primary. Keep the ALIAS on @ and the CNAME on www in Namecheap pointed to whatever hostnames the provider gives you.
Approach B: Namecheap URL Redirect Record
If your upstream server only binds to www and won’t issue an SSL certificate for the apex, skip the ALIAS record entirely. Use Namecheap’s built-in URL Redirect Record on the root:
- Type:
URL Redirect Record - Host:
@ - Value:
https://www.example.com - Redirect Type:
Permanent (301)
For more edge caching setups, check our breakdown on how to deploy an apex domain with custom CDN caching.
Troubleshooting Namecheap ALIAS Records
If your site won’t load after setting up the ALIAS record, check these common failure points:
- Query returns
SERVFAIL: The target hostname you entered doesn’t have active public A records. Test it directly:dig target.example.net A. If that comes up empty, Namecheap can’t synthesize any IPs and will return a server failure. - Page intermittently loads old content or parking page: You left an old A record sitting on
@alongside your ALIAS record. Namecheap will alternate between them. Delete the old A record. - SSL handshake errors (
ERR_SSL_VERSION_OR_CIPHER_MISMATCH): Namecheap is resolving correctly, but your edge host hasn’t finished issuing the Let’s Encrypt certificate. Most edge hosts wait for DNS propagation before firing off the certificate request. Give it 10–15 minutes. - Certificate authority issuance blocks: If certificate generation keeps failing, check for restrictive CAA records. You can check your setup with our guide on CAA record configuration rules in Namecheap DNS.
Frequently Asked Questions
Can I use both an ALIAS record and an A record on the apex?
No. Don’t mix an ALIAS record with standard A or AAAA records on the @ host. Namecheap might let you save both, but its nameservers will bundle the synthesized IPs with your manual A records, resulting in random routing errors for your users.
Does an ALIAS record slow down DNS resolution?
Not noticeably. Namecheap’s nameservers cache the resolved IPs from your target domain, so end-users receive standard, pre-cached A record responses just like any normal DNS lookup.
Why does my DNS checker say the record type is A instead of ALIAS?
Because ALIAS is a private record type handled internally by Namecheap. External DNS resolvers and tools like dig will only ever see the final, synthesized A or AAAA records.
What happens if the target hostname changes its IP address?
Namecheap’s nameservers periodically re-query the target hostname based on its TTL. When your host shifts edge nodes or rotates IPs, Namecheap updates its synthesized A records automatically. You don’t have to touch anything.
Next Steps
With your apex domain pointing safely to your target without breaking RFC specs, make sure your subdomains are mapped properly. If you need to break out staging branches or route services to separate providers, check out our guide on pointing a subdomain using Namecheap DNS.

