Both Tigris and Google Cloud Storage (GCS) are object storage services with strong consistency and multiple storage tiers. The main differences are in API compatibility, global distribution, and pricing.

## API compatibility

### Google Cloud Storage

GCS has its own native API and offers an S3-compatible XML API as an alternative. The S3 compatibility layer doesn't support all S3 features, so migrating from AWS or other S3-compatible services can require code changes.

### Tigris

Tigris is S3-native. Your existing boto3, @aws-sdk, AWS CLI, and Terraform configurations work without translation layers or compatibility caveats.

## Global distribution

### Google Cloud Storage

GCS makes you choose between single-region (cheapest), dual-region (two specific locations), or multi-region (continent-wide). Each tier has different pricing, availability guarantees, and replication semantics. Choosing wrong means paying more or re-creating buckets.

### Tigris

Every Tigris bucket is globally distributed automatically. Data moves to where it's accessed through Dynamic Data Placement — no region selection, no replication configuration, no trade-offs to evaluate.

## Pricing

### Google Cloud Storage

GCS charges $0.12/GB for internet egress (standard pricing). Even inter-region transfer within Google Cloud costs money. Dual-region and multi-region storage classes cost more per GB stored than single-region.

### Tigris

Tigris has no egress fees regardless of where data is read from. There are no inter-region transfer charges because there are no regions to transfer between.

## Snapshots and forks

### Google Cloud Storage

GCS has Object Versioning for tracking changes to individual objects, but no snapshot or fork concept for entire buckets.

### Tigris

Tigris lets you snapshot a bucket's state and create independent copy-on-write forks — instant, no data copying. Useful for ML experiments, staging environments, and safe rollbacks.

## Where Google Cloud Storage fits better

- **Google Cloud ecosystem** — tight integration with BigQuery, Dataflow, Vertex AI, Cloud CDN, and other GCP services
- **Dual-region and turbo replication** — if you need data in exactly two specific Google regions with RPO guarantees
- **Autoclass** — automatic tier management that moves objects between storage classes based on access patterns
- **Compliance** — broader set of compliance certifications for regulated workloads within the Google Cloud ecosystem

## Summary

|  | **Tigris** | **Google Cloud Storage** |
| --- | --- | --- |
| **Global distribution** | Automatic — data moves to where it's accessed | Manual — choose region, dual-region, or multi-region |
| **Egress fees** | Free | $0.12/GB (varies by destination) |
| **Region selection** | Not required — single global endpoint | Required — region, dual-region, or multi-region per bucket |
| **S3 API compatibility** | Full — standard S3 SDKs work | Partial — S3-compatible XML API, but native API is different |
| **Consistency** | Strong read-after-write | Strong read-after-write |
| **Storage tiers** | Standard, IA, Archive, Archive Instant Retrieval | Standard, Nearline, Coldline, Archive |
| **Snapshots & forks** | Native — zero-copy clones | No equivalent |
| **Custom domains** | Supported | Supported (via load balancer or CNAME) |
| **IAM** | IAM policies, bucket policies, ACLs | IAM policies, ACLs, signed URLs |

## Migration

Moving from GCS to Tigris is straightforward. Use [rclone](/content/docs/quickstarts/rclone/index.html) to sync data, or the [data migration guide](/content/docs/migration/gcs/index.html) for a zero-downtime cutover. Since Tigris uses the S3 API, any code using the GCS S3-compatible XML API already works — just change the endpoint and credentials.
