Comparing Google Cloud VM prices while accounting for performance should be a ten-minute exercise. Many teams turn it into a project.
Here’s the typical process I’ve seen: teams export pricing data, build a spreadsheet to map pricing across all available machine types, and filter comparisons across machine series to the nearest pre-defined machine type sizes. The more advanced teams will normalize CPUs across machine series based on internal benchmarking data and maybe take custom machine types with 5% premiums into account. Then, when prices shift, new machine types become available or there’s renewed modernization interest, they’ll do the whole thing over again. The math isn’t hard, but it’s tedious when the values are constantly changing.
This Google Cloud: Compute VM List Price Comparison Tool fixes that. It gives you one view of current Google Cloud VM list prices anchored to your current machine, with comparison logic that handles nuances like performance, custom shapes, and geographical price differences automatically.
New! Google VM Instance Price Performance Comparison Tool
The tool has three sections: a source machine selector at the top, a target filter panel in the middle, and a comparison table at the bottom. Walk through these sections in order and you’ll have a handle on everything it does.

Source Machine Type
Select your region and predefined machine type. CPU and RAM auto-populate from the selection.

You can model a custom configuration by editing the CPU and RAM fields directly, and the tool treats it as a custom machine.

By default, the comparison table shows resource amounts and percentage comparisons. Use the Column Display dropdown or the “+” icon to toggle in pricing columns.

Once pricing is on, a View Mode dropdown appears so you can flip between hourly, daily and monthly rates, depending on which scale is preferred.

Target Machine Types
You’re trying to find a target machine that does the same work as your source for less money. The target section controls which candidates show up in the comparison table.

By default, targets are scoped to the same region as your source and filtered to CPU vendors compatible with your source architecture. If your source is ARM, you’ll only see ARM targets.

If your source machine is Intel or AMD, you’ll see both options toggled by default, since they’re both x86 and the switching cost is usually low. ARM is architecturally different and can require real migration work, so it only appears by default when it’s actually relevant. You can select all CPU vendors if you want to compare across all of Google Cloud.
Allow Custom: Custom machine types are enabled by default. They carry a 5% premium over list rates. But the premium is usually more than offset, because predefined shapes force over-provisioning when your normalized requirement falls between sizes.
Normalize for Performance: Most pricing tools compare machines by shape, which can be misleading. One machine series with 8 CPU can sometimes do twice the work of another machine series with the same resource count. The Normalize for Performance toggle fixes that by applying a normalization factor to compare equivalent performance across machines. If you’d rather compare by shape, uncheck the box and the tool falls back to nearest-size matching.
See below for the benefits of custom machines and normalization in the examples of practical comparisons section.
Comparison Table
The comparison table is sorted by the most cost-effective options at the top. You can re-sort by any column and export to CSV. Every machine type in the table is the best-fit target shape for your source machine, normalized for performance. The table doesn’t show you every machine. It shows you the right ones.

Examples of practical comparisons
Matching resource amounts. Without performance normalization or custom shapes, the tool guarantees the target has at least the source’s CPU and RAM. An n4-standard-16 is a clean target of a c4-standard-16 because it matches or exceeds both resources.

Flip the direction and the obvious target stops working. The c4-standard-16 has the same CPU as n4-standard-16 but less RAM, so the tool moves up to the next C4 size that covers both.

Allowing custom machines. That mismatch is what makes custom shapes worth turning on. Compare n2-highcpu-16 to n4-highcpu-16 with predefined shapes only, and the result is a 6.8% price increase for the same nominal size.

Allow custom shapes and the comparison lands on a custom N4 with matching CPU and RAM. The price increase drops to 1.7%. That’s when the 5% custom premium pays for itself: skipping the overprovisioned predefined size.

Normalize for performance. Custom shapes get you to the right amount of resource, but a CPU on N4 does more work than a CPU on N2. Run the same comparison normalizing for performance, and in us-central1 the 1.7% increase becomes a 21.1% price decrease.

Region planning. Lock the target series to your source and open up the region filter. Running n2d-standard-16 in us-east4? Expand to U.S. East and us-east1 and us-east5 come back 11% cheaper on demand, with mixed differences on commitment pricing. This is the view you want when capacity constraints push you toward relocation or failover planning.

Custom Pricing
The public version of the tool uses list prices. If you have negotiated rates with Google Cloud, click “Generate Custom Pricing Tool” in the top right, input your information, and we’ll generate a custom view using your actual rates.
The tool is free to anyone, ProsperOps customer or not. If it spares you a weekend of pivot tables comparing e2-standard-16 to n4-standard-16, it has done its job.
Interested in how we can impact your Google Cloud spend? Contact us for a free Compute Efficiency Benchmark today!