CNAME Flattening Explained: How Providers Fake an Apex CNAME

It looks like a CNAME in the dashboard. It isn't one by the time it leaves the provider's servers — and that difference is exactly what makes it work.

📅 Published August 2026· ⏳ 16 min read· ✍️ ToolsNovaHub Editorial Team
🛠️ Related tool: Open CNAME Lookup →

Solving a Rule Without Breaking It

The apex restriction covered elsewhere on this site is a hard rule — a CNAME simply cannot exist at a name that also needs NS and SOA records. Flattening doesn't break that rule. It sidesteps it entirely, at a layer the rule was never written to cover: instead of publishing an actual CNAME record externally, the provider resolves the target hostname on its own infrastructure, at query time or on a refresh schedule, and hands the outside world a completely standard A or AAAA record. From the resolver's perspective, nothing unusual happened — it just got an address, the way it always does at an apex.

ToolsNovaHub Pro Tip
If your target's address changes and your apex traffic doesn't seem to reflect it promptly, check your flattening provider's own refresh interval — it's a separate setting from the target's own TTL, and it's often the actual bottleneck.
⚠️
Common Beginner Mistake
Assuming flattening behaves identically across every provider. Cloudflare's CNAME flattening, a competitor's ANAME, and another's ALIAS record are all solving the same problem with different internal mechanics and refresh behavior — always read your specific provider's documentation rather than assuming.

What Actually Happens Behind the Scenes

1

You Configure What Looks Like a CNAME

In the dashboard, you enter a target hostname at your apex, exactly as you would for a normal CNAME anywhere else.

2

The Provider Resolves It Internally

Rather than publishing that pointer externally, the provider's own infrastructure looks up the target's current A/AAAA address.

3

A Standard Address Record Is Served

What actually leaves the provider's nameservers and reaches the public internet is a normal, standards-compliant A or AAAA record.

4

Refresh Happens on the Provider's Own Schedule

The provider periodically re-resolves the target to keep the served address current — the interval and mechanism vary by provider.

Flattening vs a Traditional CNAME

AspectTraditional CNAMEFlattened CNAME
What's actually published externallyA CNAME record, literallyA synthesized A/AAAA record
Works at the apex domainNoYes
Who resolves the chainThe querying resolver, hop by hopThe provider, internally, ahead of time
Freshness depends onEvery hop's own TTLThe provider's internal refresh interval

Flattening vs ALIAS/ANAME

Conceptually, these are the same idea wearing different provider labels — both solve the apex restriction by resolving a target internally and serving a synthesized address record. The differences that actually matter in practice are implementation details: exact refresh timing, whether the feature is available on all plan tiers, and how each provider's dashboard exposes the configuration. None of this is standardized across the industry, which is exactly why reading your specific provider's own documentation matters more than assuming generic behavior.

Where Flattening Can Surprise You

SituationWhat to Expect
Target's address changesApex traffic updates on the provider's refresh schedule, not instantly and not tied to the target's own TTL
Target becomes temporarily unreachable during a lookupBehavior varies by provider — some serve a stale cached address, others may briefly fail
Migrating away from a flattening providerYou'll need to determine the target's actual current address and configure a standard A/AAAA record directly

Real-World Use Cases

☁️
Apex-to-CDN Onboarding
The single most common flattening use case — pointing a bare domain at a CDN's alias hostname while still satisfying the apex restriction.
🏢
Enterprise Multi-Environment Setups
Larger organizations use flattening to keep apex domains pointed at load-balanced infrastructure that can be relocated without a manual DNS change.
💻
Platform-as-a-Service Custom Domains
Many PaaS platforms recommend flattening specifically so customers can use their bare domain, not just a subdomain, with the platform's infrastructure.

Common Mistakes

MistakeConsequence
Assuming flattening updates as fast as the target's own TTLApex traffic may lag behind an expected change until the provider's own refresh cycle runs
Migrating providers without checking the resolved address firstRisk of apex downtime if the new provider isn't configured before the old flattening record is removed
Assuming all providers implement flattening identicallyBehavior and refresh timing genuinely differ — always check your specific provider's documentation

Best Practices

Treat flattening as a genuinely different mechanism from a real CNAME, not a cosmetic variant — its freshness model depends on your provider's internal refresh behavior, not the target's TTL. Document which provider-specific feature you're using and its known refresh interval, and before migrating away from a flattening setup, resolve the current target address manually so you can configure a direct A/AAAA record without a gap in service.

Related Tools

Check what a flattened apex is currently resolving to with A Record Lookup or AAAA Record Lookup. Trace a related subdomain's real CNAME chain with CNAME Lookup, or review the complete record picture with DNS Lookup. For the broader apex restriction this technique works around, read Apex Domain Issues.

FAQ

A technique some DNS providers use to let an apex domain behave like it has a CNAME, by resolving the target on the provider's own servers and serving a standards-compliant A/AAAA record externally.
No. It's a provider-specific technique, not part of the formal DNS specification, though it's widely implemented and considered reliable in production.
Not necessarily — freshness depends on the provider's own internal refresh interval, which is a separate setting from the target's TTL.
Conceptually yes — they solve the same apex problem — but implementation details like refresh timing differ by provider and aren't standardized.
A standard A or AAAA record, synthesized by the provider — not a literal CNAME. That's exactly what allows it to work at the apex.
Behavior varies by provider — some serve a stale cached address temporarily, others may briefly fail. Check your specific provider's documented behavior.
Resolve the target's current actual address first, then configure a direct A/AAAA record with the new provider before removing the old flattening configuration.
No — support varies. Check your specific provider's feature set and documentation before assuming it's available.
Yes — use our A Record Lookup or AAAA Record Lookup tool to see the actual served address.
You can, if the target provides a stable apex-safe address — flattening is specifically useful when the target's address may change and you want that reflected automatically.
Reviewed by: ToolsNovaHub Editorial Team📅 Last updated: August 2026📜 Sourced from: Provider documentation and standard apex-resolution behavior

ToolsNovaHub tools are built and independently maintained with a focus on accurate, no-signup network and security utilities. Spotted an error? Let us know.

📋 Related Tools & Guides Comparison

ResourceTypeLink
A Record LookupToolOpen Tool →
CNAME LookupToolOpen Tool →
Apex Domain IssuesGuideRead Guide →
CDN CNAMEGuideRead Guide →
Try it yourself — 100% free
🚀 Open CNAME Lookup

🔗 More Guides