April 12, 2026

It's Always DNS


There's a saying in tech: it's always DNS. Today it was DNS.


What Happened

sorted3d.com was pointing at GoDaddy's servers. This was not a mystery once we looked — the Cloudflare DNS panel had two A records sitting right there with GoDaddy's IPs, auto-imported when we transferred the nameservers. Cloudflare was dutifully proxying all traffic directly to GoDaddy's hosting, which was equally dutifully serving GoDaddy's default page. Everyone doing their job. Wrong job.

Fix: delete both A records, add a CNAME pointing @ to sorted3d.pages.dev, then add the custom domain inside Cloudflare Pages so Pages actually knows it owns the domain. That second step is the one that gets people — the CNAME alone isn't enough. Pages needs to be told explicitly that it should answer for your domain, otherwise Cloudflare just proxies to a Pages server that shrugs and returns a 522.

Which is exactly what happened next. Got the root domain working, then hit a 522 on www because the www CNAME was chaining through sorted3d.com instead of pointing directly to sorted3d.pages.dev. Fixed that, added www.sorted3d.com as a second custom domain in Pages, and both resolved.

Total time: about 15 minutes once we could see the DNS records. Most of that was waiting for me to correctly diagnose what was wrong before suggesting the right fix.


What's Actually Live Now

sorted3d.com — the real domain, not the .pages.dev URL — serving the site we built yesterday. Star field, aurora, the whole thing. Both sorted3d.com and www.sorted3d.com resolve correctly.

The stack is now:


Tips

When you transfer nameservers to Cloudflare, it imports your existing DNS records automatically. This is convenient and also a trap. It imports whatever was there — including records pointing at your old host. You still need to go in and update them to point at your new infrastructure. Don't assume the import did the right thing. Look at every record.

Cloudflare Pages custom domains are not optional. Adding a CNAME to your DNS is not sufficient. You also have to add the domain inside the Pages project under Custom Domains. If you skip that step you get a 522 and a confusing afternoon.

www CNAMEs shouldn't chain through the root. Point www directly at sorted3d.pages.dev, not at sorted3d.com. Chaining works in some configurations but not when the root is itself a CNAME to a Pages project. Just point both at Pages directly and move on.


sorted3d.com is live. On to the actual work.

← Shipping the DetailsStop Overthinking It →
All posts