Empty Route 53 hosted zones
A zone holding only its apex NS and SOA records serves no DNS at all — and costs fifty cents a month, every month.
What this problem is
Route 53 charges a flat rate per hosted zone, regardless of how many queries it answers. A zone created and never populated, or emptied when the domain went out of use, contains only the two records AWS creates by itself: the NS, pointing at the zone's name servers, and the SOA. Neither serves traffic.
It is a small amount per zone, which is exactly why they accumulate. Every experimental domain, every test environment with its own subdomain, every project that did not go ahead left a zone behind. Fifty cents a month shows up in no report; forty empty zones do.
Unlike an empty bucket, this is real dollar savings — Route 53 bills for the zone existing. But removing one requires a check no command can do for you: the zone holds the NS records your registrar delegates the domain to. Deleting the zone for a domain still registered and in use breaks its DNS resolution. That is why this finding lands as a decision to review, never as a direct command.
How we detect it
We list the account's hosted zones with ListHostedZones, which reports how many records each holds. A zone whose count matches only the default apex records is a zone serving no DNS.
- Empty Route 53 hosted zones
What it costs
Route 53 charges about $0.50 per hosted zone per month for the first 25 zones, and less beyond that. Forty empty zones cost roughly $20 a month.
Public AWS list prices, us-east-1, subject to change. The figure in your report is computed against your resources in your regions.
How it appears in the report
An illustrative example, with invented resources and figures. In the report each finding carries the real resource, its region, and the fix command where a safe one exists.
Does your account have this?
The scan is read-only and shows you what it found before you pay for anything.
Run a free scan