0
0
GcpHow-ToBeginner · 4 min read

How to Reduce GCP Cost: Practical Tips and Examples

To reduce GCP costs, monitor your resource usage regularly and use Committed Use Discounts or Preemptible VMs for cheaper compute options. Also, right-size your resources and delete unused assets to avoid unnecessary charges.
📐

Syntax

Here are key GCP cost-saving features and their usage patterns:

  • Committed Use Discounts: Buy discounted compute resources by committing to usage for 1 or 3 years.
  • Preemptible VMs: Use short-lived, low-cost virtual machines for batch jobs.
  • Resource Right-Sizing: Adjust machine types and storage sizes to fit actual needs.
  • Idle Resource Cleanup: Delete unused disks, snapshots, and IP addresses.
bash
gcloud compute instances create INSTANCE_NAME \
  --machine-type=e2-medium \
  --preemptible

# To purchase committed use discount:
gcloud compute commitments create COMMITMENT_NAME \
  --resources=CPUS=4,MEMORY=15GB \
  --plan=ONE_YEAR
💻

Example

This example shows how to create a low-cost preemptible VM and how to list idle disks for cleanup.

bash
gcloud compute instances create cheap-vm \
  --machine-type=e2-small \
  --zone=us-central1-a \
  --preemptible

# List unattached disks
 gcloud compute disks list --filter='-users:*' --format='table(name,zone,sizeGb)'

# Delete an unused disk
 gcloud compute disks delete DISK_NAME --zone=ZONE --quiet
Output
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/instances/cheap-vm]. NAME ZONE SIZE_GB unused-disk us-central1-a 10 Deleted [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/disks/unused-disk].
⚠️

Common Pitfalls

Many users forget to delete unused resources, leading to unexpected charges. Another mistake is not using committed use discounts or preemptible VMs when suitable. Overprovisioning resources also wastes money.

bash
## Wrong: Creating standard VM without cost optimization
 gcloud compute instances create standard-vm --machine-type=n1-standard-4

## Right: Use preemptible VM for batch jobs
 gcloud compute instances create batch-vm --machine-type=e2-small --preemptible
📊

Quick Reference

  • Monitor usage: Use Cloud Billing Reports and Budgets & alerts.
  • Use discounts: Apply Committed Use Discounts and Sustained Use Discounts.
  • Choose cheaper options: Use Preemptible VMs and Custom Machine Types.
  • Clean up: Remove unused disks, snapshots, and IPs.
  • Right-size: Match resource size to workload needs.

Key Takeaways

Regularly monitor and analyze your GCP resource usage to spot waste.
Use committed use discounts and preemptible VMs to lower compute costs.
Right-size your resources to avoid paying for unused capacity.
Delete unused resources like disks and IP addresses promptly.
Set budgets and alerts to control unexpected spending.