Resource-based Pricing

In the coming months, n1-standard, n1-highmem, and n1-highcpu machine types will be billed by their individual vCPU and memory usage in two separate SKUs rather than billing by each machine type.

This change provides additional savings and simplicity. Predefined machine types continue to function as normal, but your bill reports them as individual vCPUs and memory. This means that the savings for sustained use discounts are no longer limited to instances of the same machine type. Instead, you receive sustained use discounts for instances based on your use of the individual vCPUs and GB of memory regardless of the machine type that you use. This additional flexibility provides larger sustained use discount savings than the current billing model.

Resource types

The billable machine type resources for Compute Engine machine types are broken down into the following SKUs:

  • Predefined machine types:
    • vCPUs: VMIMAGE_PREDEFINED_CORE
    • Memory: VMIMAGE_PREDEFINED_RAM
  • Custom machine types:
    • vCPUs: VMIMAGE_CUSTOM_CORE
    • Memory: VMIMAGE_CUSTOM_RAM
  • Memory-optimized machine types:
    • vCPUs: VMIMAGE_LARGE_CORE
    • Memory: VMIMAGE_LARGE_RAM
  • Shared-core machine types:
    • f1-micro: VMIMAGE-F1-MICRO
    • g1-small: VMIMAGE-G1-SMALL

Sustained use discounts apply to each of these resource types individually. Committed use discounts also apply to the vCPUs and memory from these instances as normal without any changes. Resources not covered by committed use discounts receive sustained use discounts using the new resource-based method.

Preemptible VM instances do not receive sustained use discounts or committed use discounts. However, they will also be billed by their individual vCPUs and memory.

  • Preemptible predefined machine types:
    • vCPUs: VMIMAGE_PREEMPTIBLE_PREDEFINED_CORE
    • Memory: VMIMAGE_PREEMPTIBLE_PREDEFINED_RAM
  • Preemptible custom machine types:
    • vCPUs: VMIMAGE_PREEMPTIBLE_CUSTOM_CORE
    • Memory: VMIMAGE_PREEMPTIBLE_CUSTOM_RAM
  • Preemptible memory-optimized machine types:
    • vCPUs: VMIMAGE_PREEMPTIBLE_LARGE_CORE
    • Memory: VMIMAGE_PREEMPTIBLE_LARGE_RAM
  • Preemptible shared-core machine types:
    • f1-micro: VMIMAGE-PREEMPTIBLE-F1-MICRO
    • g1-small: VMIMAGE-PREEMPTIBLE-G1-SMALL

Pricing

After the pricing change, Compute Engine machine type pricing is simplified to the following values:

Iowa Los Angeles Oregon Northern Virginia South Carolina Montréal São Paulo Belgium Finland Frankfurt London Netherlands Mumbai Singapore Sydney Taiwan Tokyo
Monthly
Hourly
Item Price (USD) Preemptible price (USD)
Predefined vCPU
Custom vCPU
Memory-optimized vCPU
Predefined Memory
Custom Memory
Memory-optimized Memory
If you pay in a currency other than USD, the prices listed in your currency on Cloud Platform SKUs apply.

Sustained use discounts

Sustained use discounts for predefined machine types will function the same way that they do for custom machine types and sole-tenant nodes. Consider a scenario where you have two instances or nodes that have different machine types and run at different times of the month. Compute Engine breaks down the number of vCPUs and amount of memory used across all instances that use predefined machine types and combines the resources to qualify for the largest sustained usage discounts possible.

Assume you run the following two instances in the us-central1 region during a month:

  • For the first half of the month, you run an n1-standard-4 instance with 4 vCPUs and 15 GB of system memory
  • For the second half of the month, you run a larger n1-standard-16 instance with 16 vCPUs and 60 GB of system memory

In this scenario, Compute Engine reorganizes these machine types into individual vCPU and memory resources and combines their usage to create the following resources:

  • 4 vCPUs for a full month
  • 12 vCPUs for half of the month
  • 15 GB of system memory for a full month
  • 45 GB of system memory for half of the month

For example, you can see how the sustained use discounts apply to the vCPUs for this scenario:

Diagram showing how vCPUs from instances are combined using resource-based sustained use discounts for predefined machine types

The monthly bill for these resources would be calculated using the following formulas:

(4 vCPUs x $0.031611 x 730 hours) x 0.7 for the 30% full-month discount = $64.612884

(12 vCPUs x $0.031611 x 365 hours) x 0.9 for the 10% half-month discount = $124.610562

(15 GB x $0.004237 x 730 hours) x 0.7 for the 30% full-month discount = $32.476605

(45 GB x $0.004237 x 365 hours) x 0.9 for the 10% half-month discount = $62.6334525

The total monthly cost of the combined resources is $284.3335035.

Compare this total to the previous way that sustained use discounts would have been calculated for these same predefined machine types. For example, you can see how the vCPUs are billed when they are inferred by machine type rather than combined by resource types:

Diagram showing how instances were previously inferred using machine-type sustained use discounts
(1 n1-standadrd-4 machine x $0.1900 x 365 hours) x 0.9 for the 10% half-month discount = $62.415

(1 n1-standard-16 machine x $0.7600 x 365 hours) x 0.9 for the 10% half-month discount = $249.66

The two instances are not inferred because they are different machine types, so their total monthly cost is $312.075.

With the new pricing changes, you save an additional $27.7414965 in this usage scenario. This same process applies separately to the resources for custom machine types.

Billing export

With this change, you will no longer be able to see the machine types that you are using in your invoice and Billing BigQuery export. However, you can still use the "key":"compute.googleapis.com/machine_spec” system label key in Billing BigQuery export to obtain the machine types for the VMs that you are using.

What's next

Was this page helpful? Let us know how we did:

Send feedback about...

Compute Engine Documentation