Tigris vs Google Cloud Storage
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 to sync data, or the data migration guide 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.