Route 53 vs Cloudflare DNS: Pricing ($0.50 a Zone vs Free), Alias vs CNAME Flattening, Health Checks, Private Zones, Registrar, and When to Use Both

Logeshwaran
—

Route 53 vs Cloudflare for DNS: Cloudflare hosts your DNS for free on every plan, including unmetered queries, DNSSEC and CNAME flattening at the root domain, and can also sit in front of your site as a CDN and firewall; Amazon Route 53 charges $0.50 per hosted zone per month plus $0.40 per million queries, and in return is woven into AWS: free alias queries to CloudFront, load balancers and S3, health checks with failover (the first 50 checks of AWS endpoints are free), latency and geolocation routing, and private DNS inside your VPCs, which Cloudflare cannot do. For a website or blog, Cloudflare's free DNS is hard to beat; for infrastructure that lives on AWS, Route 53 is the native choice, and many teams use both. The detail that surprises people: Route 53's 100 percent availability SLA comes with every hosted zone, while Cloudflare's 100 percent uptime SLA starts on the Business plan at $200 a month.

Jake bought the shop's domain years ago from the cheapest registrar he could find, and when Ethan moved the website to AWS, he moved the DNS to Route 53 along with it. A friend who runs a bakery's website asked Jake why he pays for DNS at all. "Mine's free," she said. Jake asked Ethan the same question that evening, and the honest answer took longer than either expected.

⚡ Quick Answer

• Cloudflare: free DNS, free DNSSEC, CNAME at the root, plus an optional CDN and WAF. When it wins.

• Route 53: $0.50 a zone + $0.40 per million queries; alias records, health checks, routing policies, private zones. When it wins.

• Costs: worked examples · Domains: registrar comparison.

• Using both: Cloudflare for the public site, Route 53 for AWS-internal names. How.

Side-by-side table · Alias vs CNAME flattening · Moving DNS between them · FAQ.

This guide compares Amazon Route 53 and Cloudflare as DNS providers and domain registrars: features, prices in October 2026, how each handles a root domain pointed at AWS, traffic routing and failover, what each cannot do, and how to move a domain from one to the other without downtime. For how DNS hosting works on AWS, see what a Route 53 hosted zone is.

🧭 NEW HERE? READ THESE FIRST

New to DNS on AWS? These pages explain the basics this guide uses:

💡 DNS is the phone book. Route 53 is the phone book that also knows which of your AWS servers is awake.

Route 53 vs Cloudflare: what each actually is

Both are authoritative DNS providers: they answer the internet's questions about your domain ("what is the address of jakesshop.com?") from large global networks of name servers. Both can also register domains. Past that, they come from opposite directions:

  • Route 53 is AWS's DNS service. Its strengths are the AWS connections: alias records that point straight at CloudFront distributions, load balancers, S3 websites and API Gateway, health checks that remove unhealthy endpoints from answers, routing policies (latency, geolocation, weighted, failover), and private hosted zones that answer only inside your VPCs.
  • Cloudflare is a global edge network whose DNS is free and fast, and which can optionally proxy your website: with the orange cloud on, visitors connect to Cloudflare, which caches content, blocks attacks and forwards the rest to your server. DNS is the entry point to its CDN, WAF, DDoS protection, Workers and more.

The deciding question is usually not "which DNS is better" but "where do the things my DNS points at live, and do I want Cloudflare's proxy in front of them?"

Route 53 vs Cloudflare DNS: side by side

Amazon Route 53Cloudflare DNS
Price$0.50 per hosted zone a month (first 25), $0.10 after; $0.40 per million standard queriesFree on all plans, queries included
Root domain pointing at a hostnameAlias records (AWS targets only); alias queries to AWS resources freeCNAME flattening, any target
DNSSECYes (KMS-backed key; KMS key cost applies)Yes, one click, free
Health checks and failoverBuilt in: first 50 checks of AWS endpoints free, then $0.50 each; non-AWS $0.75Load Balancing add-on, from $5 a month
Routing policiesWeighted, latency, geolocation, geoproximity, failover, multivalue, IP-basedThrough Load Balancing (geo, proximity, dynamic steering)
Private DNS inside a VPCYes, private hosted zonesNo
CDN, WAF, DDoS proxySeparate services (CloudFront, WAF, Shield)Built in when a record is proxied
Availability SLA100 percent, every hosted zone100 percent on Business ($200 a month, billed annually) and above; none on Free or Pro
Infrastructure as codeCloudFormation, CDK, TerraformTerraform provider, API
RegistrarYes, AWS's price per TLDYes, at cost with no markup (from $7.85 a year)

When Cloudflare is the better choice

  • A website, blog or small business site. Free DNS, free TLS certificates at the edge, caching and DDoS protection in one dashboard, with nothing to bill.
  • Many domains with low traffic. Fifty parked or small domains cost $15 a month in Route 53 hosted zone fees alone (25 at $0.50, 25 at $0.10), before queries, and nothing in Cloudflare.
  • You want a root domain on a non-AWS host (a page builder, a Git-based host): CNAME flattening works for any target, where Route 53 aliases only reach AWS resources.
  • You want Cloudflare's proxy features: caching, the WAF, bot protection, Workers, image optimization. Those require Cloudflare to be your DNS (or a partial CNAME setup on paid plans).
  • Cheapest domain renewals. Cloudflare Registrar charges the registry's price with no markup.

The bakery's site, a few pages on a website builder, is the textbook case. Jake's friend was right to use Cloudflare; her DNS costs nothing and her site sits behind a CDN she did not have to build. Cloudflare's free tiers extend well beyond DNS.

When Route 53 is the better choice

  • Your infrastructure is on AWS. Alias records at the root domain point straight at CloudFront, an ALB, an S3 website or API Gateway, and those alias queries are free; they also follow the target's IP changes automatically.
  • You need DNS failover or traffic steering without another product: health checks plus failover, latency or geolocation records are part of Route 53, and checks of AWS endpoints are free up to 50.
  • You need private DNS for VPCs: internal names for databases and services, Resolver rules for hybrid networks, and DNS Firewall. Cloudflare has no equivalent inside a VPC.
  • Infrastructure as code with the rest of your stack: records live in the same CloudFormation, CDK or Terraform as the resources they point to, under the same IAM permissions and CloudTrail audit.
  • An SLA for DNS on any budget: Route 53's 100 percent availability SLA applies to every hosted zone.

Ethan's answer to Jake was the first bullet: the shop's root domain points at a CloudFront distribution through an alias record, the API at a load balancer, and the order database has a private name inside the VPC. Route 53 does all three in one place for about a dollar a month. Custom domain and HTTPS with CloudFront and Route 53 shows that setup.

Route 53 vs Cloudflare pricing, with examples

Route 53 prices from the AWS price list (September 2026): hosted zones $0.50 a month for the first 25, $0.10 after; standard queries $0.40 per million (first billion), latency-based $0.60, geolocation and geoproximity $0.70; queries to alias records that point at AWS resources are free; health checks of AWS endpoints free for the first 50, then $0.50 a month, non-AWS endpoints $0.75. Cloudflare's DNS is included on the Free plan ($0), Pro ($20 a month billed annually), Business ($200) and Enterprise.

Scenario (per month)Route 53Cloudflare
1 domain, 2 million queries, root aliased to CloudFront$0.50 zone + alias queries free + other queries about $0.40 = about $0.90$0
1 domain, 100 million standard queries$0.50 + $40.00 = $40.50$0
50 small domains, 1 million queries each25 x $0.50 + 25 x $0.10 + 50 x $0.40 = $35.00$0
Failover between two sites with health checks2 checks of AWS endpoints: free; queries as aboveLoad Balancing from $5

For most sites, the DNS bill is a rounding error either way; the real money is in what sits behind DNS. Two cost details matter more than the query price: Route 53's alias queries to AWS resources are free, so a site that answers mostly with aliases pays little more than the zone fee; and on Route 53, a high TTL (how long resolvers cache your answer) directly lowers your query count, while on Cloudflare TTL has no cost effect.

Root domains: Route 53 alias vs Cloudflare CNAME flattening

The DNS standard does not allow a CNAME record at the root of a domain (jakesshop.com, the "zone apex"), only at subdomains like www. Yet CloudFront, load balancers and most hosting platforms give you a hostname to point at, not a fixed IP. Each provider solves it its own way:

  • Route 53 alias records look like an A or AAAA record to the outside world, but Route 53 fills in the target's current addresses itself. They work at the root and are free to query, but only for AWS targets: CloudFront, ELB, S3 website endpoints, API Gateway, Global Accelerator, another record in the same zone, and a few more.
  • Cloudflare CNAME flattening lets you create a CNAME at the root; Cloudflare resolves the target and answers with its IP addresses. It works for any hostname, AWS or not.

Here is the Route 53 alias for a root domain pointed at CloudFront, as an API request (the shape is checked against the current SDK model, botocore 1.43.118). Z2FDTNDATAQYW2 is the fixed hosted zone ID used for every CloudFront alias:

aws route53 change-resource-record-sets --hosted-zone-id Z0123456789ABC --change-batch '{
  "Changes": [{
    "Action": "UPSERT",
    "ResourceRecordSet": {
      "Name": "jakesshop.com.",
      "Type": "A",
      "AliasTarget": {
        "HostedZoneId": "Z2FDTNDATAQYW2",
        "DNSName": "d111111abcdef8.cloudfront.net.",
        "EvaluateTargetHealth": false
      }
    }
  }]
}'

On Cloudflare, the same thing is a CNAME record named @ with the CloudFront hostname as its target. One caution: if you turn the Cloudflare proxy on (orange cloud) for a record pointing at CloudFront, you are putting one CDN in front of another, with two caches and two TLS hops; most setups keep such records DNS only (gray cloud). Alias vs CNAME at the zone apex covers the Route 53 side in depth.

Using Cloudflare DNS with AWS services

Cloudflare DNS works with AWS resources; you just do by hand what Route 53 automates:

  1. Point records at AWS hostnames with CNAMEs (flattened at the root): the CloudFront domain, the ALB's DNS name, the API Gateway custom domain target. Never point an A record at an ALB IP; those change.
  2. Validate ACM certificates by adding the CNAME records ACM gives you, set to DNS only. A proxied validation record is the most common reason a certificate stays at "Pending validation"; the ACM pending validation guide walks through it.
  3. Decide per record whether to proxy. Proxying an ALB adds Cloudflare's WAF and caching but changes client IPs (read them from the CF-Connecting-IP header) and needs your security group to allow Cloudflare's ranges.
  4. Keep private names in Route 53. Internal names for RDS, ElastiCache or services inside the VPC still need a Route 53 private hosted zone.
  5. Automate it with the Cloudflare Terraform provider alongside your AWS resources, so a new load balancer gets its record in the same change.

Using both: the common split

Many teams end up with a split that plays to each service's strengths: the public domain's DNS on Cloudflare (free, with its proxy and WAF in front of the website), and Route 53 for everything internal to AWS (private hosted zones for service discovery, Resolver for hybrid DNS) plus any subdomain that needs AWS-native failover, delegated to Route 53 with NS records. A domain can delegate a subdomain like api.jakesshop.com to a Route 53 hosted zone while the parent stays on Cloudflare.

That is roughly where Jake's shop landed after the conversation with the bakery: still on Route 53 for now, because everything it points at is on AWS, but with the cheapest-renewal registrar moved to Cloudflare. "So I was paying for DNS that earns its keep, and overpaying for the domain," Jake summarized. Ethan said that was exactly it.

Route 53 vs Route 53 Resolver

Two different things share the Route 53 name, and searches mix them up. Route 53 (public DNS hosting) answers the internet's questions about your domains: hosted zones, records, routing policies, health checks. That is the part this guide compares with Cloudflare. Route 53 Resolver is the DNS resolver inside every VPC (the "VPC + 2" address, also reachable at 169.254.169.253): it answers your EC2 instances, containers and Lambda functions when they look up any name, public or private, and is free for that basic use.

Resolver gets its own price list when you extend it: Resolver endpoints for hybrid networks (an inbound endpoint so on-premises servers can resolve your private AWS names, an outbound endpoint plus forwarding rules so AWS workloads can resolve your on-premises names) cost $0.125 per hour per network interface in US East, with at least two interfaces per endpoint for availability, plus $0.40 per million queries through them; Route 53 Resolver DNS Firewall filters which domains your VPCs may resolve. Cloudflare has no counterpart to any of this, because it never sits inside your VPC. If your instances cannot resolve names at all, the Resolver side is where to look; EC2 cannot resolve DNS names covers it.

Route 53 vs Cloudflare as a domain registrar

  • Price. Cloudflare Registrar charges what the registry charges, with no markup, on all plans, from $7.85 a year depending on the TLD. Route 53 Domains has its own price list per TLD, typically above wholesale.
  • TLD coverage. Both support the common TLDs; each supports some the other does not. Check your TLD on both lists before moving.
  • DNS coupling. A domain registered at Cloudflare must use Cloudflare's DNS. A Route 53 domain can use any DNS provider, including Cloudflare.
  • Privacy and locks. Both offer WHOIS privacy and transfer locks at no extra cost where the TLD allows.

You can mix them: register with one and host DNS with the other, as long as the registrar's name server settings point at the DNS host.

Moving DNS from Route 53 to Cloudflare (or back) without downtime

  1. Lower TTLs on the records you will change, a day ahead, so caches expire quickly afterward.
  2. Export the records from the current provider. From Route 53: aws route53 list-resource-record-sets --hosted-zone-id Z0123456789ABC, then recreate them on the other side (Cloudflare can import a BIND zone file). Alias records have no direct equivalent: turn each into a CNAME (flattened at the root) pointing at the AWS hostname.
  3. Turn off DNSSEC first at the registrar and the old provider (check with aws route53 get-dnssec); moving name servers while DNSSEC is on can make the domain fail to resolve for validating resolvers.
  4. Compare answers by querying the new provider's name servers directly (dig @NEW-NAMESERVER jakesshop.com) for every important record.
  5. Change the name servers at the registrar to the new provider's.
  6. Keep the old zone for a few days while caches move over (parent NS records can be cached for up to two days), then delete it, and re-enable DNSSEC on the new provider.

If a domain stops resolving after a move, the registrar's name servers and the hosted zone's NS records usually disagree; Route 53 domain not resolving covers that check.

Which is faster?

Both run large anycast networks, and for most visitors either answers in a few tens of milliseconds; independent DNS benchmarks usually rank Cloudflare among the very fastest authoritative providers. In practice, DNS speed is rarely what users feel: caching resolvers answer repeat lookups locally, and a sensible TTL means most visitors never reach your provider at all. Choose on features and fit, not on a few milliseconds. If you want to measure for your own domain, query each provider's name servers directly with dig @ns-123.awsdns-45.com jakesshop.com or dig @ada.ns.cloudflare.com jakesshop.com from a few locations and compare the query times; the result will vary more with the visitor's location than with the provider.

Troubleshooting by symptom

ACM certificate stuck on Pending validation with Cloudflare DNS

The validation CNAME is proxied or mistyped. Set it to DNS only and copy the name and value exactly.

Root domain will not point at my load balancer on Cloudflare

Use a CNAME at @ (CNAME flattening) to the ALB's DNS name, never an A record with an IP.

Site works on www but not on the root domain in Route 53

Add an alias A record (and AAAA for IPv6) at the root pointing at the same target as www.

Domain stopped resolving after moving DNS

Check that the registrar's name servers match the new provider, and that DNSSEC was disabled before the move.

Client IPs in my server logs are all Cloudflare addresses

The record is proxied. Read the real visitor IP from the CF-Connecting-IP header.

Route 53 bill higher than expected

Check query volume and TTLs. Raise TTLs on stable records and use alias records for AWS targets, which are free to query.

Frequently asked questions

Is Cloudflare DNS better than Route 53?

For websites and many domains, Cloudflare's free DNS and proxy are hard to beat. For AWS infrastructure, Route 53's alias records, health checks and private zones fit better.

Is Cloudflare DNS free?

Yes. Authoritative DNS, DNSSEC and CNAME flattening are included on the Free plan, with queries included.

How much does Route 53 cost?

$0.50 per hosted zone a month for the first 25 and $0.40 per million standard queries; alias queries to AWS resources are free.

Can I use Cloudflare DNS with AWS?

Yes. Point CNAMEs at CloudFront, load balancer and API Gateway hostnames, keep ACM validation records DNS only, and keep private names in Route 53.

Can I use Cloudflare in front of CloudFront?

You can, but proxying CloudFront puts one CDN in front of another. Most setups keep the record DNS only and use one CDN.

Does Cloudflare support alias records like Route 53?

Cloudflare uses CNAME flattening instead: a CNAME at the root that it resolves to IP addresses, for any target.

Should I register my domain with Cloudflare or Route 53?

Cloudflare charges registry cost with no markup but requires Cloudflare DNS. Route 53 costs more for most TLDs but lets you use any DNS provider.

Does Route 53 have an SLA?

Yes, a 100 percent availability SLA for Route 53 DNS. Cloudflare's 100 percent uptime SLA is on Business and Enterprise plans.

Can Cloudflare do private DNS for my VPC?

No. Private DNS inside VPCs needs Route 53 private hosted zones or a DNS server you run in the VPC.

Does Route 53 have DDoS protection?

Route 53 is protected by AWS Shield Standard at no cost. Cloudflare adds DDoS protection for proxied web traffic too.

Can I move DNS from Route 53 to Cloudflare without downtime?

Yes: lower TTLs, copy records, disable DNSSEC, verify answers on the new name servers, then switch the name servers at the registrar.

Is Route 53 a registrar?

Yes. Route 53 Domains registers and transfers domains, with prices that vary by TLD.

What does the orange cloud mean in Cloudflare?

The record is proxied: visitors connect to Cloudflare, which caches and filters traffic before forwarding to your server. Gray means DNS only.

Can I use Route 53 health checks with Cloudflare DNS?

Not for answering DNS. Health-check-based failover in Cloudflare needs its Load Balancing add-on.

Which is faster, Route 53 or Cloudflare?

Both are fast global anycast networks, and independent benchmarks usually rank Cloudflare among the fastest. Caching resolvers make the difference small for real visitors.

What is the difference between Route 53 and Route 53 Resolver?

Route 53 hosts public and private DNS zones for your domains. Route 53 Resolver is the DNS resolver inside each VPC that answers lookups from your AWS workloads, with optional hybrid endpoints and DNS Firewall.

What is the Azure equivalent of Route 53?

Azure DNS for public and private zones, with Azure Traffic Manager for DNS-based routing and failover. Cloudflare DNS works with Azure in the same way it works with AWS.

Do I need Route 53 if my site is on AWS?

No, any DNS provider works with AWS. Route 53 adds free alias queries, health checks and private zones that are convenient on AWS.

How do I enable a proxy in Route 53 like in Cloudflare?

Route 53 has no proxy; it only answers DNS. Put CloudFront in front of your origin (with AWS WAF if you need it) and point an alias record at the distribution for caching, TLS and a hidden origin.

What happens if I delete the hosted zones for my Route 53 domains?

The domains stay registered, but they stop resolving, because the registrations still point at the deleted zone's name servers. A new hosted zone gets new name servers, which you must then set on each domain.

How do I use a WAF with Route 53?

You don't attach AWS WAF to Route 53. Attach it to CloudFront, an Application Load Balancer, API Gateway or AppSync, and point your Route 53 record at that resource.

How do I hide my origin IP when using Route 53?

DNS records are public, so an A record pointing at your server reveals its IP. Point DNS at CloudFront (or Cloudflare's proxy) instead, and let the origin accept traffic only from it, for example with the CloudFront managed prefix list in a security group.

For readers preparing for an AWS certification

We have been covering AWS certifications alongside our fixes, so here is a short extra for readers studying for one. If you only came for the fix, you already have it; feel free to skip this part.

Exams that test this topic: Solutions Architect – Associate (SAA-C03) • CloudOps Engineer – Associate (SOA-C03) • Cloud Practitioner.

Here are the exam-style questions this topic tends to raise, with the reasoning you need to answer them:

1. A company needs its root domain (example.com) to point at a CloudFront distribution using Route 53. Which record type?

An alias A (and AAAA) record targeting the CloudFront distribution; CNAMEs are not allowed at the zone apex, and alias queries to AWS resources are free.

2. An application must answer DNS with a standby site when the primary fails its health check. Which Route 53 features?

Route 53 health checks with failover routing records (primary and secondary).

3. EC2 instances must resolve names for servers in the on-premises data center over a VPN. What is required?

A Route 53 Resolver outbound endpoint with forwarding rules for the on-premises domain.

4. Internal service names must resolve only inside two VPCs. Which Route 53 feature?

A private hosted zone associated with both VPCs.

5. Users should be routed to the AWS Region that gives them the lowest latency. Which routing policy?

Latency-based routing records in Route 53.

6. What does Route 53 charge for a hosted zone and for queries to alias records that point at an ALB?

$0.50 per hosted zone per month (first 25), and alias queries to AWS resources such as an ALB are free.

Exam codes and dates change often. Our AWS certification changes page keeps track of what is current.

πŸ“š ALSO READ

More DNS and domain guides:

📌 Free DNS for websites, native DNS for AWS infrastructure, and nothing stops you from using both.

The bakery's site still runs on Cloudflare's free plan, and Jake now recommends it to every shop owner who asks. For his own shop he keeps Route 53, for the alias records and the private names, and he has stopped thinking of the dollar a month as paying for DNS. "It's paying for the bit that knows where everything is," he said, which Ethan thought was a better definition than most textbooks give.

📌 If you keep one line from this page

Cloudflare DNS is free and great for websites; Route 53 ($0.50 a zone, $0.40 per million queries) earns its price with alias records, health checks, routing policies and private zones on AWS.

Route 53 prices from the AWS price list (September 2026); Cloudflare plans and Registrar pricing as listed in October 2026; Route 53 API requests checked against botocore 1.43.118.

Revision note. Written October 23, 2026. "Don't put all your eggs in one basket," the proverb says; with DNS, two baskets that each do what they are good at is a fine arrangement.

Related