AWS IPv4 Charges in 2026: Cut Costs Without Guesswork

Reading Time: 7 minutes

A few overlooked public IPv4 addresses may cost less than a coffee each month, but a large fleet turns that small fee into visible spend. Ownership gaps make these charges easy to miss.

In 2026, AWS IPv4 charges remain $0.005 per public IPv4 address per hour. That is roughly $3.65 per address in a 730-hour month, whether the address is active or idle. At scale, the total grows quickly.

The practical task is to inventory every address, connect each one to an owner and workload, then remove only those your architecture no longer needs. The sections below show how to audit usage and quantify savings before making changes.

Key Takeaways

  • AWS charges $0.005 per public IPv4 address per hour, or about $3.65 per address in a 730-hour month, whether the address is attached or idle.
  • A complete audit should combine VPC IPAM Public IP Insights, console and CLI inventories, Cost Explorer, and the AWS Cost and Usage Report across every account and Region.
  • Release unneeded Elastic IPs and disable automatic public IPv4 assignment only after checking DNS, allowlists, routing, monitoring, security groups, and recovery procedures.
  • Compare direct public IPv4 costs with NAT gateway hourly, processing, data transfer, and Availability Zone costs before changing the network design.
  • Private-by-default networking, selective IPv6 adoption, and edge services can reduce public IPv4 demand without removing required internet access.

What AWS IPv4 charges cover in 2026

AWS began charging for these addresses on February 1, 2024. The current rate for public IPv4 addresses is $0.005 per address per hour, billed in one-second increments with a 60-second minimum. AWS documents IPv4 address pricing and the billing model on its Amazon VPC pricing page.

The charge applies to public IPv4 addresses allocated by AWS. That includes automatic public IPs on EC2 instances, an allocated Elastic IP address, and public addresses attached to service-managed resources. Depending on the design, covered resources can include a NAT gateway, an Application Load Balancer, AWS Global Accelerator, and other Elastic Load Balancing resources.

AWS charges the same base rate for an address attached to a resource and one allocated but unused in an account. An unassociated allocation is therefore an easy fix, but it is not the whole problem. A fleet of public EC2 instances can create a larger recurring cost. The fee reflects the scarcity behind IPv4 address exhaustion, but it does not solve the problem by itself.

Billing data may label an address as in use, but in-use public IPv4 addresses still incur the hourly rate. Association status distinguishes attached addresses from unused allocations, but it does not change the price.

The usual monthly estimate is simple:

number of charged addresses x 730 hours x $0.005

For example, 25 public IPv4 addresses cost about $91.25 each month, or $1,095 a year, before any related service charges.

Bring Your Own IP (BYOIP) ranges and customer-owned IP addresses are exempt from this AWS public IPv4 address fee. They can still carry operational and service costs. New AWS customers may also have limited public IPv4 usage through the AWS Free Tier for eligible EC2 workloads during their first 12 months. Check the current terms rather than treating that allowance as a permanent architecture decision.

Pricing and service eligibility can vary by AWS Region. Confirm the rate and resource behavior in every Region where you deploy, especially for regional load balancers and similar managed resources. AWS also explains the broader VPC and subnet IP addressing model, including the difference between public and private addressing.

Auditing AWS IPv4 charges across every account

Laptop showing cloud network diagrams on a clean desk with one blurred person behind it.

A reliable audit needs both a resource inventory and billing data. The inventory shows current ownership, while billing data validates monthly trends and spend location.

Start with Public IP Insights

Amazon VPC IP Address Manager (VPC IPAM) includes Public IP Insights at no additional charge. In the VPC console, open IPAM, then Public IP Insights. The view identifies public IPv4 addresses, their associated AWS resource, account, Region, and address type.

For multi-account environments, use AWS Organizations and VPC IPAM with a delegated administrator. Configure VPC IPAM discovery for every active Region and assign ongoing inventory ownership to each workload team. FinOps can set policy, but application owners must approve releases after confirming whether an address supports production traffic.

AWS offers a practical walkthrough for identifying and optimizing public IPv4 use. Treat its output as a working queue, not a one-time report.

Check the console and CLI for missed addresses

Elastic IPs are the first place to inspect. In the EC2 console, open Elastic IPs and look for allocations without an association. Also inspect EC2 instances, each Application Load Balancer, VPN connections, and network address translation gateways in every Region.

A short CLI inventory complements the console:

  1. Run aws ec2 describe-addresses --region <region> to list Elastic IP allocations and associations.
  2. Run aws ec2 describe-network-interfaces --region <region> --filters Name=association.public-ip,Values='*' to find network interfaces carrying public IPv4 addresses.
  3. Query running EC2 instances for PublicIpAddress so automatically assigned addresses do not escape the review.
  4. Repeat the checks across every enabled Region and account. Create an owner-mapping queue for the public IPv4 addresses found. Assign network interfaces and each Application Load Balancer to an application, environment, and owner.

Don’t release an address only because it looks unused. A legacy DNS record, partner allowlist, or disaster-recovery runbook may still depend on it. Confirm DNS records, security groups, routing, monitoring, and deployment automation before releasing anything.

Use Cost Explorer and the AWS Cost and Usage Report to quantify the waste

Cost Explorer provides a quick trend view. Choose a date range, group by Usage type and Region, then search for usage types containing PublicIPv4. Start without filtering to one AWS service, because the charge may appear separately from the application service you expected.

Look for PublicIPv4:IdleAddress records for idle public IPv4 addresses and PublicIPv4:InUseAddress records for in-use public IPv4 addresses. Regional prefixes may appear before those names. Idle records usually indicate allocated addresses without current associations, while in-use records point to addresses attached to EC2, network interfaces, or a managed service.

The AWS Cost and Usage Report (CUR) is better for chargeback and automation. Query lineItem/UsageType, lineItem/UsageAmount, and lineItem/UnblendedCost, grouped by linked account, Region, and usage type. Filter usage types containing PublicIPv4:.

If your CUR includes resource IDs, join each billing record to your inventory and tags. An Application Load Balancer may expose an IPv4-related record separately from its application service charge. Some service-managed public IP records may lack a resource ID, so account, Region, usage type, and tags remain useful matching fields.

A useful monthly report has three columns: public IPv4 cost, count of public IPv4 addresses, and addresses without a confirmed owner. The third column turns billing data into an actionable remediation backlog.

Calculate the NAT gateway crossover before changing architecture

A NAT gateway can reduce the number of direct public IPs, but it does not automatically reduce network costs. It primarily supports outbound access from private subnets. It is not a replacement for public inbound services.

Using a common $0.045-per-hour rate as a planning example, the gateway costs about $32.85 each month for 730 hours. Add one public IPv4 charge, and the fixed estimate becomes $36.50 before data processing or data transfer charges.

Architecture choiceMonthly fixed IPv4-related costImportant limitation
1 direct public IPv4$3.65One workload remains internet-addressable
9 direct public IPv4 addresses$32.85Lower fixed cost than one gateway
10 direct public IPv4 addresses$36.50Matches one NAT plus one IPv4 charge
One NAT gatewayAbout $36.50 plus per-GB processingSupports outbound access, not inbound traffic

At 10 addresses, the fixed hourly fees are equal. Because this design also charges for processed data, direct public addresses remain cheaper on cost alone at that point.

At 20 addresses, direct IP fees reach about $73 per month. A single gateway leaves roughly $36.50 available for data processing before the comparison flips. At a $0.045-per-GB processing rate, that is about 811 GB, excluding cross-AZ data transfer charges and other traffic costs.

Use the formula for your Region: NAT gateway hourly charge + public IPv4 hourly charge + data processing versus public IPv4 hourly charge x direct address count. The decision depends on inbound versus outbound requirements, traffic volume, and Availability Zone resilience. High availability often requires deploying one in each Availability Zone, which changes the result again.

Reduce public IPv4 addresses without breaking access

Server racks with blue lights line a clean data center hallway.

Begin with a private-by-default posture by disabling automatic public IPv4 assignment on subnets and EC2 launch templates unless a workload has a documented need. Place application servers, databases, worker nodes, and internal APIs in private subnets.

Keep administrator-facing instances in private subnets. Replace direct SSH and RDP exposure with AWS Systems Manager Session Manager or an EC2 instance connect endpoint. Review the EC2 instance connect endpoint’s pricing, security groups, and access controls before deploying at scale.

Public web applications should concentrate exposure at the edge, keeping the public subnet limited to resources that must remain internet-facing. A public Application Load Balancer can terminate inbound traffic while targets remain private. Forecast the Application Load Balancer’s own public address needs, too.

IPv6 adoption can reduce address fees and help address IPv4 address exhaustion without forcing a rushed migration. Start with dual-stack VPC subnets, security groups, DNS, and client-facing services, then validate dual-stack behavior through an Application Load Balancer. Test dependencies such as third-party APIs, monitoring agents, and corporate networks. IPv4 still has a place when customers or integrations require it.

Cloudflare can also reduce public IP demand for HTTP and HTTPS services. When Cloudflare proxies a site, Cloudflare IPv6 can serve IPv6 clients while Cloudflare Tunnel keeps the EC2 origin private with no inbound public IP. This design requires strict origin authentication and logging changes, and it does not solve public-address needs for every TCP, UDP, or non-web workload.

Frequently Asked Questions

How much does one AWS public IPv4 address cost?

AWS charges $0.005 per public IPv4 address per hour. At 730 hours, that is about $3.65 per address per month, before related service or data transfer charges.

Do idle and in-use public IPv4 addresses have different prices?

No. AWS applies the same base hourly rate to an attached public IPv4 address and an allocated but unused address. An idle allocation is still worth releasing when no workload or operational process depends on it.

Where can I find public IPv4 addresses across AWS accounts?

VPC IPAM Public IP Insights provides an inventory of public IPv4 addresses, associated resources, accounts, Regions, and address types. Supplement it with EC2 console and CLI checks, then repeat the review across every enabled Region and account.

How do I confirm that IPv4 charges are creating waste?

Use Cost Explorer to group charges by usage type and Region, looking for PublicIPv4:IdleAddress and PublicIPv4:InUseAddress. For chargeback and automation, use the AWS Cost and Usage Report and match billing records to resource IDs, accounts, Regions, and tags.

Is a NAT gateway cheaper than using public IPv4 addresses directly?

It depends on the number of addresses, traffic volume, Availability Zone design, and the NAT gateway’s hourly and per-GB charges. Compare the full NAT gateway cost with the direct public IPv4 cost before making an architecture change, especially because a NAT gateway supports outbound access rather than public inbound traffic.

Conclusion

AWS IPv4 charges are small per address, yet they become material at scale and reward architectural discipline. The fastest savings usually come from idle Elastic IPs, automatic public IP assignment, and public instances used only for administration.

A monthly inventory and billing review, including data transfer charges, creates a recurring cost optimization control. Private-by-default networking and measured IPv6 adoption reduce recurring IPv4 spend without making access harder to manage.

Scroll to Top