AWS Route 53 Pricing: Hosted Zones, Queries, Health Checks, and Traffic Flow
Start with a calculator if you need a first-pass estimate, then use this guide to validate the assumptions and catch the billing traps.
Use this page when you need to decide what belongs inside the Route 53 bill before you debate TTL tuning or query reduction. The first budgeting decision is whether Route 53 spend is mainly query-led, zone-led, or health-check-led.
This guide is about bill boundaries: hosted zones, DNS queries, health checks, and the adjacent resolver, CDN, and incident-side costs that should be tracked beside Route 53 rather than blended into it.
Quick pricing read
Route 53 pricing looks simple at first, but the bill shape changes as soon as you separate public hosted zones, private hosted zones, DNS query classes, health checks, and Traffic Flow. The best first move is to decide which of those is actually in play before you assume every DNS question is just "queries times a single rate."
- Hosted zones: public hosted zones and private hosted zones are both billable zone surfaces, but they do not behave the same way in the query model.
- Private hosted zone queries: private hosted zone queries do not add Route 53 query charges the way public authoritative queries do.
- Free alias behavior: alias queries to AWS resources are free, so not every answered DNS request belongs in the paid query line.
- Health checks: health checks are their own steady cost surface and should not be hidden inside generic query assumptions.
- Traffic Flow and advanced routing: routing policy choices can change the effective pricing model, so keep Traffic Flow and advanced routing logic separate from basic DNS query counting.
This page was updated on 2026-06-18 against the current AWS Route 53 pricing page and Route 53 developer guide.
Inside the Route 53 bill vs beside the Route 53 bill
- Inside the Route 53 bill: hosted zone charges, authoritative DNS query charges, and Route 53 health checks.
- Beside the Route 53 bill: resolver-side churn, CDN cache behavior, application retry storms, downstream logging, and incident response work that may explain the spike but do not belong inside the core Route 53 line items.
- Why the distinction matters: teams often try to lower the Route 53 number by tuning DNS before they have separated billable Route 53 usage from adjacent traffic or reliability symptoms.
What to model (the pricing surfaces that actually matter)
- Hosted zones: how many public and private zones you maintain across environments/accounts
- Public DNS queries/month: your paid authoritative public query volume after you separate free alias behavior where relevant
- Health checks: if you use DNS-level health checks or endpoint monitoring
- Traffic Flow / advanced routing: if traffic policies or advanced routing classes are part of the design, treat them as explicit pricing lines instead of burying them inside generic query math
How to scope each line item without mixing jobs
- Zones: list public and private zones separately. In multi-account setups, zones often get duplicated across environments.
- Queries: prefer a measured window from query logs. If you do not have logs, start from DNS QPS/RPS and convert to monthly.
- Alias behavior: separate alias queries to AWS resources before you multiply every public query by a paid rate.
- Health checks: count them, and confirm whether you have per-endpoint checks, multi-region checks, or checks per record.
- Routing policy: identify whether geolocation, latency, IP-based routing, or Traffic Flow policies are part of the design because they can change the effective billing surface.
When this is not the right page
- You still need the traffic evidence: go to Estimate DNS queries if the real problem is turning metrics, logs, TTL posture, and retry behavior into a defendable monthly query number.
- You already know the bill driver: go to Route 53 cost optimization if the real question is what to change in production.
Budget with baseline and peak bill scenarios
Use AWS Route 53 Cost Calculator for a simple zones + queries + health checks model. Then bring in measured query volume from the estimate guide rather than guessing from generic application traffic.
- Baseline scenario: a typical week (exclude outage windows and launch days).
- Peak scenario: incident retry storms, cache misses, or a short-lived traffic spike. This is what prevents a budget from failing in real life.
Fast DNS cost formula
- Total monthly Route 53 cost = hosted zone fees + DNS query charges + health checks.
- DNS query charges = paid public queries/month x effective query unit rate after excluding free alias behavior where applicable.
- Peak protection: budget with both baseline and incident retry scenarios.
What usually causes surprise bills at the bill-boundary level
- Hosted zone duplication: public/private splits and multi-account copies can increase zone count more than teams expect.
- Authoritative query growth: traffic growth, low TTL posture, or resolver churn can lift the paid query line item.
- Routing-policy blind spots: Traffic Flow or advanced routing may raise the unit economics even when raw query volume looks stable.
- Health check sprawl: checks per endpoint and per environment add steady monthly cost and are easy to miss in budgets.
- Incident-side confusion: retry storms and failovers may explain why query charges jumped, but the operational fix belongs on the estimate and optimization pages.
Worked estimate template (copy/paste)
- Hosted zones cost = public zones + private zones (as applicable)
- Query cost = standard queries/month (baseline) + standard queries/month (peak scenario)
- Health checks cost = health checks/month (baseline) + any extra checks used only for peak events
How to validate the estimate
- In Cost Explorer / CUR, confirm you see distinct line items for hosted zones, queries, and health checks.
- Validate whether the measured query set includes free alias queries to AWS resources before you apply a paid public-query rate everywhere.
- Compare baseline vs peak: if peak is not materially higher, the estimate workflow may still be missing incident behavior.
- Check whether the bill is query-led, zone-led, or health-check-led before choosing an optimization plan.
Failure patterns
- Using this pricing page as the only source of truth for query measurement.
- Charging private hosted zone queries or free alias queries as if they were standard public authoritative query lines.
- Folding resolver-side or CDN-side behavior directly into the Route 53 bill without separating ownership.
- Ignoring health-check sprawl across environments.
- Estimating only baseline and skipping peak bill scenarios.
Related tools
Related operational guides
- AWS CloudTrail pricing: useful when incident investigation or governance work is changing both audit volume and DNS behavior.
- AWS CloudWatch metrics pricing: useful when Route 53 health checks, alarms, or dashboard polling are part of the same reliability review.