Zero-egress and zero-action-cost S3 storage: what is actually included
Two different meters get called "free" in object-storage marketing, and they are not the same promise. Free egress means the traffic line stays at $0.00 however much you serve. Free actions mean the request line stays at $0.00 however many objects you write and read. A provider can give you one and meter the other, and the wording rarely tells you which. This page splits the catalogue's rows by that distinction: 6 of 28 providers meet the egress half, and 4 of those also meet the request half. Every row is computed by the same cost engine that backs the calculator at one stated workload: 5 TB stored, 25 TB of egress per month, global region, 0.2 million class-A writes and 10 million class-B reads per month.
What "included" means in this catalogue #
The egress test is the catalog's own per-GB egress field together with its fair-use condition, and the action test is the Class A and Class B per-1,000 request rates. All three are per-row values captured from the vendor's pricing page, all are shown in the table below, and none is inferred from marketing copy. A zero egress rate is not the same as unlimited egress. A row qualifies here only when its $0 egress rate carries no fair-use condition, so the traffic line stays at $0.00 however much you serve; a row whose $0 rate is bounded by a ratio or an allowance is listed in the last section instead, because its traffic stops being free once the ceiling is reached. Where a row's action fees are not published at all, it is not counted as zero-action here: the catalogue records the gap rather than assuming a zero.
The 6 zero-egress rows, cheapest first #
| Provider | Protocol | Monthly total | Egress line | Action-fee line | Action fees | Storage rate | Base plan |
|---|---|---|---|---|---|---|---|
| Telnyx Cloud Storage | S3 | $31.20 | $0.00 | $0.50 | $0.50/M writes, $0.04/M reads | $0.00614/GB/mo | none |
| STRG | S3 | $33.93 | $0.00 | $0.00 | none | $0.0068/GB/mo | none |
| Synology C2 OneStorage | S3 | $39.95 | $0.00 | $0.00 | none | $0.00799/GB/mo | $7.99/mo |
| OVHcloud Object Storage (Standard) | S3 | $40.55 | $0.00 | $0.00 | none | $0.0081103/GB/mo | none |
| R2 | S3 | $74.85 | $0.00 | $0.00 | $4.50/M writes, $0.36/M reads | $0.015/GB/mo | none |
| rsync.net (ZFS Backup) | NAS/file | $75.00 | $0.00 | $0.00 | none | $0.015/GB/mo | $3.00/mo |
The cheapest row on this slice is Telnyx Cloud Storage at $31.20, and the cheapest row of the WHOLE catalogue at this workload is Hetzner Storage Box at $14.46, a NAS/file box with no S3 API rather than a zero-egress object store. That is why the protocol column is second: a fixed-capacity box competes on $/TB and belongs in a price comparison, but it cannot be an S3 origin, so it should not be counted as one.
The 3 S3 rows that also charge nothing per request #
Every row in this set is an S3 object store, which is the part the headline is about: 3 S3-compatible providers charge nothing for egress OR requests (STRG, Synology C2 OneStorage, OVHcloud Object Storage (Standard)), and one NAS/file box, rsync.net (ZFS Backup), also reach a $0.00 request line without speaking S3 at all. The cheapest of the S3 set is STRG at $33.93 for this workload, with an action-fee line of exactly $0.00. Against that, 2 of the zero-egress rows still bill requests: Telnyx Cloud Storage, R2. At this workload the request line is small, which is exactly why the distinction is easy to miss.
Put the same rows on a request-heavy workload and the split stops being theoretical. For 300 million writes and 100 million reads a month on 10 TB, STRG still bills $0.00 in action fees and totals $67.93. Telnyx Cloud Storage, which is also zero-egress, pays $154.00 in action fees and totals $215.40. Free bandwidth is not free ingestion, and the difference is only visible once you price the operations separately.
A flat rate buys more than predictable billing when the row also ships an agent surface. STRG bills $6.80/TB for storage, egress and standard requests together, and its own row carries the AI-access detail the other $0 rows do not: S3-compatible API with $0 standard request fees; MCP server at mcp.strg.com/mcp (Streamable HTTP) for AI agents, authenticated through OAuth with customer-scoped, revocable access keys (probe-verified: the endpoint answers 401 with WWW-Authenticate: Bearer realm="OAuth", and strg.com/ai documents the OAuth connection flow); per-bucket region choice with optional cross-region replication. Cloudflare R2 at $15.00/TB charges $4.50 per million writes on top, and Wasabi's $7.99/TB sits behind a 90-day minimum storage duration, so neither can quote a request-included, no-retention rate for an agent that writes objects constantly. That comparison is the part of "included" a per-operation price list cannot express.
What a $0 line does not include #
- A minimum storage duration. Wasabi Hot Storage (90 days), S3 Glacier Instant Retrieval (90 days), Storj (30 days) all bill objects for a fixed window even if you delete them the next day, so short-lived objects cost more than the storage line suggests.
- A base plan. Bunny Storage at $1.00/mo, Storj at $5.00/mo, Hetzner Object Storage at €6.49/mo, Vultr Object Storage at $18.00/mo, Akamai Object Storage (Linode) at $5.00/mo, DigitalOcean Spaces at $5.00/mo, Contabo Object Storage at $2.49/mo, MEGA S4 Object Storage at €15.00/mo, rsync.net (ZFS Backup) at $3.00/mo, Synology C2 OneStorage at $7.99/mo charge a monthly floor whether or not you fill it, which is payable alongside the $0 egress and action lines.
- Free retrieval. A cheaper storage class that bills to read data back is a different product: the egress row on a hot class and on an archive class are not interchangeable, and the catalogue keeps those rows separate.
- A fair-use ceiling on the traffic itself. Wasabi Hot Storage (1:1 egress-to-storage ratio (overage throttled/suspended)), Contabo Object Storage (Unspecified fair-use egress policy (throttling possible)) publish a $0 egress rate, but the rate holds only inside a stated ceiling: past it, sustained transfer can be throttled or curtailed rather than simply billed. That is a $0 line with a condition on it, not the unconditional rate the rows above carry, which is why they sit here rather than in the table.
The reciprocal is also true: 19 catalogued rows charge something for egress and are absent from this board, not because they are expensive but because they are answering a different question. A further 2 rows publish a $0 egress rate with a fair-use condition and are named above rather than dropped, because a bounded $0 rate answers a different question than an unconditional one. Their validation is the metered-egress case in the generic cheapest-storage board, which prices the same catalogue at a lighter egress ratio and produces a different order. The zero-egress guide applies the same ranking to buying advice; this page is the technical split behind it.
How these numbers stay true #
Every figure above is computed from storage-catalog.json, not typed by hand: the $0 tests read the catalogue's own rate and fair-use fields, the totals are the tool's cost model at the zero-egress guide's preset, and the request-heavy figures are that same model at a second stated workload. A drift test fails the site build when a row stops being zero-egress, when an action fee appears on a row this page calls free, or when the preset changes, so the page is regenerated instead of rotting. The figures describe the catalogue snapshot of 2026-09-01.