External IP addresses are a critical component of your Google Cloud infrastructure, enabling public connection to your virtual machines and cloud resources. Just as your costs scale as your organization adds more Compute Engine VM instances, each external IP address comes with a similarly recurring charge.
For example, static IP addresses that are assigned to a resource, whether in use or not, are billed at a rate of $0.01 per hour. You can read the pricing charges by type here. The bottom line is that if you forget to check and clean up assigned, unused IP addresses, you will face a higher GCP bill on a regular basis.
In this guide, we will show you how to find and clean up these unattached external IP addresses so you can lower your cloud costs.
Finding Unattached GCP External IP Addresses
To find external IP addresses that are no longer needed, you can get most of the information you need by running this command:
You’ll see an output that looks like this:
If you have an external IP address that is associated with an instance that has a “Terminated” or “Suspended” status, then that address is considered “in use” and cannot be used by other running resources. You should either look into getting that instance running again or un-assign that external IP address so it can be useful. We’ll explain that process in the next section.
You can get a list of all of your IP addresses with this simple command:
You’ll see an output like this one:
This view shows all the IP addresses that you would have seen in the “instances list” command (since those had a status of “IN_USE”). This view will also show you IP addresses that have a “RESERVED” status. Reserved means that these IP addresses are not assigned to resources currently. You are still paying for them in the meanwhile.
You can review this list and see if you have more “Reserved” IP addresses than you need. If you are able to un-assign IP addresses after you saw that they were associated with stopped instances, then your number of reserved addresses will increase and you may be able to reduce the overall number of external IP addresses you are paying for by releasing them.
Releasing External IP Addresses
Like finding these addresses, the process of releasing them is this simple gcloud command:
Once released, you will no longer be charged for this IP address. If in the future, you need more external IP addresses than you have in your project, you can just reserve new addresses.
$0.01 cent per hour can seem like such a small charge. Is it really worth it to run through these steps to clean them up? If you have 100 unnecessary IP addresses running per month, that translates to $720/month in wasted spending.
If a team fails to clean up after a project ends, then taking steps like these could save your organization from significant waste.
Automatically Finding Unattached IP Addresses with Blink
If you want to stay on top of unattached IP addresses, there’s a better way to detect these instead of running manual checks on a regular basis.
By using a no-code/low-code platform like Blink, you can set up simple automations for checks like these that run regularly and trigger actionable notifications. Start reducing your cloud costs without the context-switching.
Get started and create your free Blink account today.