Hide
Google Cloud Storage

Storage Classes

Google Cloud Storage offers three types of storage: Standard Storage, Nearline Storage, and Durable Reduced Availability (DRA) Storage with different availability, latency, and throughput characteristics. All storage classes offer the same high level of durability. Use the table below to match your data storage needs with a storage class.

Comparison of storage classes

Storage Class Characteristics Use Cases Bucket Locations1
Standard Storage High availability, low latency (time to first byte is typically tens of milliseconds). Storing data that requires low latency access or data that is frequently accessed ("hot" objects), such as serving website content, interactive workloads, or gaming and mobile applications. Continental locations
Durable Reduced Availability (DRA) Lower availability than Standard Storage and lower cost per GB stored. Applications that are particularly cost-sensitive, or for which some unavailability is acceptable such as batch jobs and some types of data backup. Continental locations and regional locations
Nearline Storage Slightly lower availability and slightly higher latency (time to first byte is typically 2 - 5 seconds) than Standard Storage but with a lower cost. Data you do not expect to access frequently (i.e., no more than once per month). Typically this is backup data for disaster recovery, or so called "cold" storage that is archived and may or may not be needed at some future time. Continental locations

All storage classes support:

Storage class pricing

The pricing for storage classes is as follows:

Standard Storage
(GB/Month)
Durable Reduced Availability (DRA) Storage
(GB/Month)
Nearline Storage
(GB/Month)
$0.026 $0.02 $0.01

For more information about storage pricing, including Nearline Storage retrieval pricing, see the pricing page.

Changing storage class

If you want to move data from one storage class to another, you can do it by copying your data from a source bucket with one class to a destination bucket with a different storage class. Changing storage class incurs one or more of the following costs:

  • $0.00 * per GB if transfer is between different regions in the same continent.
  • $0.00 * per GB if transfer is between a region and the larger containing continent.
  • $0.00 * per GB if transfer is between continents.
  • $0.01 per GB if transfer is out of Nearline class. An early deletion cost might also apply.
*  Promotional pricing until June 11, 2015.

If your source and destination buckets are in the same location and you are not transferring out of the Nearline class, then the transfer does not incur any cost. For more information and examples, see pricing.

Copy in the cloud

First, create a new bucket with the new storage class. For example, to create a Standard bucket, see Creating a Standard Bucket. Then copy the data using one of the following approaches.

gsutil

Use the gsutil cp command to copy from the source bucket to the destination bucket.

For example, to copy foo from the source bucket to the destination bucket, you can use:

gsutil cp gs://<source-bucket>/foo gs://<destination-bucket>

See the gsutil cp command for more information about copy options such as copying directories, buckets, and bucket subdirectories to recursively with the -r flag.

JSON API

Copy local

To copy data to another bucket you can also download the data from the original bucket to your computer and then upload it to the bucket with the new storage class. Standard data egress/ingress fees apply as well a retrieval fee if copying Nearline data.

You can copy locally, for example, by using the gsutil cp command's "daisy chain" copy mode. For example, to copy foo from the source bucket to the destination bucket, you can use:

$ gsutil cp -D -R gs://<source-bucket>/foo gs://<destination-bucket>

The daisy chain copy mode downloads the data from the source bucket and uploads it to the destination bucket. No copy of the data is saved locally to the machine where you run gsutil. When you perform a daisy chain copy, you may incur network and operation costs for moving the data because the data are downloaded and re-uploaded.

To preserve ACLs during a daisy chain copy, use the -p option of the gsutil cp command. You may want to set a default bucket ACL on the destination bucket before uploading the data.