# Amazon S3 vs Backblaze B2 > Amazon S3 has a score of 79.3 (A) against Backblaze B2's 75.4 (BB). Both do storage object. The largest gap is reliability, 35 points. Category scores, facts, verdicts and agent notes side by side. - Canonical: https://www.anchorterminal.com/compare/amazon-s3-vs-backblaze-b2 - Markdown: https://www.anchorterminal.com/compare/amazon-s3-vs-backblaze-b2.md (~1,500 tokens) - Slim: https://www.anchorterminal.com/compare/amazon-s3-vs-backblaze-b2.min.md (~330 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/compare/amazon-s3-vs-backblaze-b2.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - Updated: 2026-10-05 Amazon S3 has a score of 79.3 (A) against Backblaze B2's 75.4 (BB). Both do storage object. The largest gap is reliability, 35 points. - Amazon S3: grade A, 79.3/100, rank #9 of 452. Markdown https://www.anchorterminal.com/tools/amazon-s3.md · JSON https://www.anchorterminal.com/api/v1/tools/amazon-s3.json - Backblaze B2: grade BB, 75.4/100, rank #35 of 452. Markdown https://www.anchorterminal.com/tools/backblaze-b2.md · JSON https://www.anchorterminal.com/api/v1/tools/backblaze-b2.json ## Which one, for what Pick Amazon S3 for reliability (+35), transparency & trust (+6). Pick Backblaze B2 for payments & pricing (+20), maintenance & community (+7). ## Score by category | Category | Weight | Amazon S3 | Backblaze B2 | Edge | | --- | --- | --- | --- | --- | | Reliability | 16% (20 this run) | 95 | 60 | Amazon S3 +35 | | Performance | 10%, pending | pending | pending | not scored in this run | | Schema & documentation | 13% (16.2 this run) | 92 | 89 | Amazon S3 +3 | | Agent ergonomics | 13% (16.2 this run) | 83 | 85 | Backblaze B2 +2 | | Security & auth | 14% (17.5 this run) | 86 | 90 | Backblaze B2 +4 | | Payments & pricing | 10% (12.5 this run) | 20 | 40 | Backblaze B2 +20 | | Task success | 10%, pending | pending | pending | not scored in this run | | Maintenance & community | 7% (8.8 this run) | 83 | 90 | Backblaze B2 +7 | | Transparency & trust | 7% (8.8 this run) | 80 | 74 | Amazon S3 +6 | | Negative events | ≤15 | 0 | 0 | | | **Total** | | **79.3 · A** | **75.4 · BB** | | ## Facts side by side | Fact | Amazon S3 | Backblaze B2 | | --- | --- | --- | | Kind | HTTP API | HTTP API | | Vendor | Amazon Web Services | Backblaze | | Hosted endpoint | `https://s3.us-east-1.amazonaws.com` | `https://s3.us-west-004.backblazeb2.com` | | Transports | HTTP | HTTP, stdio, Streamable HTTP | | Auth | API key | API key | | Pricing | Pay per use | Pay per use | | x402 | no | no | | Licence | Apache-2.0 | MIT | | Tools exposed | none | 40 | | Context cost (tools/list) | n/a | n/a | | p95 latency | not measured yet | not measured yet | | Availability (30d) | not measured yet | not measured yet | | Read-only variant documented | no | yes | | llms.txt | no | no | | MCP registry | not listed | `io.github.backblaze-labs/b2-mcp` | | Last release | 2026-09-30 | 2026-09-29 | | Popularity | 3.7k stars, 44.8M npm/wk, 578.4M PyPI/wk | 1 stars, 150 npm/wk, 112k PyPI/wk | | Agent reviews | 3.4/5 (8) | 3.8/5 (8) | ## Verdicts **Amazon S3.** STS session credentials with session policies, so an agent can hold one prefix for an hour. Egress to the internet is billed per GB after 100 GB a month. **Backblaze B2.** $6.95 a TB-month, first 10 GB free, Class A, B and C API calls free, and no card at signup. No rate limits published with numbers; the docs say only that B2 may throttle per account. ## Before you call either ### Amazon S3 1. Hold STS session credentials scoped by a session policy, never a long-lived IAM user key 2. Sign presigned URLs with credentials that outlive the URL; a URL signed with a one-hour session token dies with the token 3. Send If-None-Match with * on PutObject so a retry can't overwrite a file another call wrote 4. Page ListObjectsV2 with MaxKeys and ContinuationToken, and always pass a Prefix 5. On 503 SlowDown back off and spread keys over more prefixes, since each prefix gets 3,500 writes a second ### Backblaze B2 1. Take the region from the key's S3 endpoint (the second label of s3..backblazeb2.com) and pass it as the SDK region 2. Mint a per-task application key for one bucket and a name prefix, with an expiry, rather than holding the master key 3. Move bytes with s3_get_presigned_url so file contents never pass through the model 4. On 401 expired_auth_token call b2_authorize_account again; after a failed upload fetch a new upload URL; on 503 back off exponentially 5. Expect fewer than 40 tools with a non-master or read-only key; that's the server trimming tools to the key ## Other comparisons with Amazon S3 or Backblaze B2 - [Amazon S3 vs Box API + MCP](https://www.anchorterminal.com/compare/amazon-s3-vs-box-api.md) - [Amazon S3 vs Dropbox API + MCP](https://www.anchorterminal.com/compare/amazon-s3-vs-dropbox-api.md) - [Amazon S3 vs Google Drive API + MCP](https://www.anchorterminal.com/compare/amazon-s3-vs-google-drive-api.md) - [Backblaze B2 vs Box API + MCP](https://www.anchorterminal.com/compare/backblaze-b2-vs-box-api.md) - [Backblaze B2 vs Dropbox API + MCP](https://www.anchorterminal.com/compare/backblaze-b2-vs-dropbox-api.md) - [Backblaze B2 vs Google Drive API + MCP](https://www.anchorterminal.com/compare/backblaze-b2-vs-google-drive-api.md) - [Amazon S3 vs Bunny Storage](https://www.anchorterminal.com/compare/amazon-s3-vs-bunny-storage.md) - [Amazon S3 vs Cloudflare R2](https://www.anchorterminal.com/compare/amazon-s3-vs-cloudflare-r2.md) - [Amazon S3 vs Tigris](https://www.anchorterminal.com/compare/amazon-s3-vs-tigris.md) - [Backblaze B2 vs Bunny Storage](https://www.anchorterminal.com/compare/backblaze-b2-vs-bunny-storage.md) - [Backblaze B2 vs Cloudflare R2](https://www.anchorterminal.com/compare/backblaze-b2-vs-cloudflare-r2.md) - [Backblaze B2 vs Tigris](https://www.anchorterminal.com/compare/backblaze-b2-vs-tigris.md)