gcppersistent-diskstoragecost-optimization

GCP Persistent Disk snapshot cost: what incremental backups really cost

Persistent Disk snapshots are incremental and billed per gigabyte of stored data, so their cost depends on how much changes between snapshots, not the disk size. Here is how snapshot billing works and how to stop snapshots creeping up your bill.

The C3X Team··6 min read

Quick answer

Persistent Disk snapshots are incremental: the first snapshot stores the used data, and later snapshots store only the blocks that changed since the previous one, all billed per gigabyte of snapshot storage at roughly 0.026 dollars per GB per month for standard snapshots or about 0.012 dollars per GB per month for archive snapshots. So snapshot cost depends on change rate, not disk size, and a rarely-changing 500 GB disk snapshotted daily costs far less than the naive 500 GB times 30 estimate. Snapshot cost creeps up from keeping too many snapshots for too long, so a schedule with sensible retention and archive snapshots for long-term copies keeps backup cost proportional to what actually changes.

Persistent Disk snapshots are one of the most misunderstood line items on a GCP bill. People assume a snapshot of a 500 GB disk costs 500 GB of storage, and that 30 daily snapshots cost 30 times that. In reality snapshots are incremental and deduplicated, so the cost tracks how much data changes, not the disk size times the snapshot count. Understanding this stops both over-estimation and unpleasant creep.

How incremental snapshots bill

Snapshot typeApproximate costUse
Standard snapshotAbout 0.026 dollars per GB per monthFrequent, quick restore
Archive snapshotAbout 0.012 dollars per GB per monthLong-term retention

The first snapshot of a disk stores the used blocks. Each later snapshot stores only the blocks that changed since the previous snapshot, and blocks shared across snapshots are stored once. You are billed per gigabyte of total snapshot storage, at roughly 0.026 dollars per GB per month for standard snapshots. Archive snapshots cost about half that, near 0.012 dollars per GB per month, in exchange for slower restore, which suits long-term backups you rarely need to read.

Why change rate is what matters

Because snapshots are incremental, the cost driver is how much data changes between them. A 500 GB disk holding mostly static data might change only a few gigabytes a day, so daily snapshots add just those few gigabytes each, not 500. A write-heavy database disk that churns most of its blocks daily generates much larger increments and costs far more to snapshot at the same frequency. So the same snapshot schedule can cost very differently depending on the workload's write pattern, which the naive disk-size estimate completely misses.

Where snapshot cost creeps

The classic snapshot cost creep comes from retention, not from any single snapshot. Keeping every daily snapshot forever means the total stored data grows without bound, and old snapshots you will never restore keep billing. Automated snapshot schedules without a retention policy are the usual culprit: they diligently create snapshots but never delete them, so the line item climbs month after month even though the disk is not growing.

Keeping snapshot cost proportional

Use a snapshot schedule with a retention policy so old snapshots are deleted automatically, keeping, say, daily snapshots for a week, weekly for a month, and monthly for a year rather than everything forever. Move long-term retention copies to archive snapshots to halve their storage rate. Match snapshot frequency to how much the data changes and how much loss you can tolerate, since snapshotting a static disk hourly wastes money. Consolidate or delete snapshots of decommissioned disks. Price your snapshot schedule against the resource catalog so backup cost is planned rather than discovered creeping upward.

FAQ

How are Persistent Disk snapshots priced?

Snapshots are incremental and billed per gigabyte of snapshot storage. The first snapshot stores the used blocks, and later snapshots store only the blocks that changed since the previous one, with shared blocks stored once. Standard snapshots cost roughly 0.026 dollars per GB per month, and archive snapshots cost about 0.012 dollars per GB per month with slower restore.

Does a snapshot cost the same as the disk size?

No. Because snapshots are incremental and deduplicated, cost tracks how much data changes between snapshots, not the disk size. A 500 GB disk holding mostly static data that changes a few gigabytes a day adds just those few gigabytes per daily snapshot, not 500. This is why the naive disk-size-times-snapshot-count estimate greatly overstates the cost.

Why does snapshot cost creep up over time?

From retention, not from any single snapshot. Automated snapshot schedules without a retention policy create snapshots diligently but never delete them, so the total stored data grows without bound and old snapshots you will never restore keep billing. The line item climbs month after month even though the disk is not growing, which is the classic snapshot cost creep.

What is an archive snapshot and when should I use it?

An archive snapshot costs about half the standard snapshot rate, near 0.012 dollars per GB per month, in exchange for slower restore. Use it for long-term retention copies you rarely need to read, such as monthly or yearly backups kept for compliance. Keep frequent, quick-restore backups as standard snapshots and move long-term copies to archive to cut their storage cost.

How does C3X help with Persistent Disk snapshot cost?

C3X prices your Persistent Disk and snapshot configuration from Terraform before you deploy, so the storage cost of a snapshot schedule is visible in the pull request. That lets you plan retention and choose archive snapshots for long-term copies at design time, keeping backup cost proportional to what actually changes rather than discovering snapshot creep on the monthly bill.

What to do next

Plan snapshot retention and cost before it creeps. C3X reads your Terraform and prices your resources against a live catalog. Start with the quickstart.

Try C3X on your own Terraform

Free and open source. No API key required. One command to install, one command to estimate.