Last reviewed: May 2026
If AWS returned this error, the fix is mechanical once you can see which existing range you collided with. This page shows how to find it and how to choose a range that will be accepted.
You asked AWS to create a subnet whose address range shares at least one IP with a subnet that already exists in the same VPC. AWS requires every subnet in a VPC to be disjoint — not merely different, but non-overlapping. A new 10.0.0.0/23 conflicts with an existing 10.0.1.0/24 because the /23 completely contains it.
List what is already allocated before guessing at a new range:
aws ec2 describe-subnets \
--filters "Name=vpc-id,Values=vpc-xxxxxxxx" \
--query "Subnets[].{CIDR:CidrBlock,AZ:AvailabilityZone,Name:Tags[?Key=='Name']|[0].Value}" \
--output table
describe-subnets JSON and CSV directly and highlights every overlapping pair.A subtler variant: the error also fires when the new subnet is inside an existing one. Containment is a form of overlap. If you are trying to carve a smaller subnet out of a larger existing one, you must delete or re-range the larger subnet first — AWS will not let a subnet nest inside another.
This error is almost always a symptom of address space that was never planned centrally. Allocating each environment a documented block from one supernet, and checking new ranges against that record before deployment, removes the whole class of failure. The Cloud VPC & VNet CIDR Planning Guide sets out that approach.
You asked AWS to create a subnet whose address range shares at least one IP with a subnet that already exists in the same VPC. AWS requires every subnet in a VPC to be disjoint — not merely different, but non-overlapping. A new 10.0.0.0/23 conflicts with an existing 10.0.1.0/24 because the /23 completely contains it.
Not within the same VPC or virtual network. Providers require subnets to be disjoint so routing is unambiguous. Overlap is also what blocks VPC peering, VNet peering and Transit Gateway attachments between networks.
List every existing range in the network, then compare each one against the range you are trying to create. The bulk subnet calculator on this site accepts CLI JSON and CSV exports directly and reports every overlapping pair, which is faster and more reliable than comparing by eye.