Plan Google Cloud VPC subnets with correct IP reservation counts. GCP reserves 4 IPs per subnet — one fewer than AWS/Azure. Use the interactive planner below to generate subnets with optional GKE secondary ranges, then export Terraform.
GCP reserves 4 IP addresses in every subnet — one fewer than AWS. These are:
.0 — Network address
Second address — Default gateway (e.g., .1 in most subnets)
Second-to-last address — Reserved by Google Cloud
.255 (last address) — Broadcast address
For example, in a 10.0.0.0/24 subnet: .0, .1, .254, and .255 are reserved — leaving 252 usable addresses.
Auto Mode vs Custom Mode VPC
GCP offers two VPC creation modes with significant operational differences:
Feature
Auto Mode
Custom Mode
Subnet creation
Automatic (one per region)
Manual, full control
CIDR range
Predefined /20 from 10.128.0.0/9
Any valid RFC 1918 range
VPC peering
Limited (overlapping ranges)
Recommended for peering
Production workloads
Not recommended
Recommended
Use custom mode VPCs for production. Auto mode VPCs use predictable CIDR ranges that frequently conflict with on-premises networks. You cannot convert an auto mode VPC back to custom mode once created.
GCP VPC Design Best Practices
Always use custom mode VPCs for production workloads
Plan your CIDR space upfront — VPC peering and Shared VPC require non-overlapping ranges
GKE clusters consume large secondary ranges — allocate /16 for pods before provisioning
Use Private Google Access on subnets that need to reach Google APIs without internet access
Cloud NAT requires explicit subnet configuration — plan your NAT gateways per region