Comparison: Cloudflare R2 | Tigris Object Storage Documentation

Summary

For small object workloads (1 KB objects), Tigris achieves approximately 20x the throughput of Cloudflare R2 for both read and write operations. R2 exhibits extremely high latency for small objects, making Tigris the clear winner for this use case.

Load Phase Results

Loading 10 million 1 KB objects into each system.

Metric Tigris Cloudflare R2
P50 Latency 16.799ms 197.119ms
(11.73x Tigris)
P90 Latency 35.871ms 340.223ms
(9.48x Tigris)
Runtime 6710.7sec 72063sec
(10.74x Tigris)
Throughput 1490.2ops/sec 138.8ops/sec
(0.09x Tigris)

R2's p90 PUT latency tops 340ms whereas Tigris stays below 36ms. This extreme latency difference means Tigris finishes the load in 6711 seconds while R2 requires 72063 seconds (over 20 hours).

Total load time for loading 10M 1 KB objects

Mixed Workload Results

1 million operations with 80% reads and 20% writes.

Read Performance

Metric Tigris Cloudflare R2
P50 Latency 5.399ms 605.695ms
(112.19x Tigris)
P90 Latency 7.867ms 680.959ms
(86.56x Tigris)
Runtime 241.7sec 4705.3sec
(19.47x Tigris)
Throughput 3309.8ops/sec 42.6ops/sec
(0.01x Tigris)

Tigris sustains ≈3.3k ops/s, approximately 78x R2 (≈43 ops/s) for read operations.

Read throughput during mixed workload

Read p90 latency during mixed workload

Write Performance

Metric Tigris Cloudflare R2
P50 Latency 12.855ms 605.695ms
(47.12x Tigris)
P90 Latency 16.543ms 680.959ms
(41.16x Tigris)
Runtime 241.6sec 4705.3sec
(19.48x Tigris)
Throughput 828.1ops/sec 42.6ops/sec
(0.05x Tigris)

Tigris delivers ≈828 ops/s, approximately 20x R2 (≈43 ops/s) for write operations.

Write throughput during mixed workload

Write p90 latency during mixed workload

Key Takeaways