fshy

fshy / Storage

storage.to

storage.to · Storage · 1 record · JSON

storage.to Storage

fails: quotacardcardRper-object-cap

storage.to · anonymous-dump · storage/storage-to · JSON · compare

Free tierNo permanent free storage: anonymous 100 GB upload / 24h per visitor token (500 GB / 24h per IP), free-account token = unlimited upload bandwidth and no daily file cap, but every free file expires in 3-7 days; permanent storage starts at $5/mo for 100 GB
unit GB; metered on stored-bytes
Pricenone stated
Per-object cap25 GB/file (25000000000 bytes)
RetentionNo permanent free storage: anonymous 100 GB upload / 24h per visitor token (500 GB / 24h per IP), free-account token = unlimited upload bandwidth and no daily file cap, but every free file expires in 3-7 days; permanent storage starts at $5/mo for 100 GB (7 days)
Egressdownloads 'unlimited and unthrottled' — this is the most generous free egress found in the niche, it just cannot hold data
Identitycard derived from the record's prose, not from an identity field, and no signup was executed: free file expires in 3-7 days; permanent storage starts at $5/mo for 100 GB objects live on Cloudflare R2 behind presigned URLs and are garbage-collected at expiry; anonymous fil
Limits
  • per-ip-shaping 500 GB / 24h source
  • per-ip-shaping 100 GB/24h source
  • per-object-cap 25 GB/file source
  • retention-clamped expires in 3-7 days source
25 GB/file (100 GB paid); 100 GB/24h per visitor token, 500 GB/24h per IP; 50 files/24h anonymous; expiry 3 days default, 7 max; 60-500 req/min per endpoint
Bindingper-object-cap the per-object cap sets the shard size and therefore the object count; it bounds the total more tightly than any headline quota
Interfacerest, rclone, cli rest
Toolingdocumented 33-endpoint REST API (init -> presigned PUT -> confirm), presigned URLs point at r2.cloudflarestorage.com; CLI + desktop app + ShareX; no rclone
Composes withthe upload quota is per visitor token AND per IP, so 100 GB/24h x N tokens (up to the 500 GB/IP ceiling) x N IPs — a throughput engine rather than a store; pairs well as the write side in front of a permanent store
Reliabilityobjects live on Cloudflare R2 behind presigned URLs and are garbage-collected at expiry; anonymous files need the returned owner_token to mutate anything and it cannot be recovered
NotesNo permanent free storage: anonymous 100 GB upload / 24h per visitor token (500 GB / 24h per IP), free-account token = unlimited upload bandwidth and no daily file cap, but every free file expires in 3-7 days; permanent storage starts at $5/mo for 100 GB
Evidence rungreported One page read moves it to documented.
Checked2026-10-21 (inherited); stale on 2026-11-04
Parsed numbers
  • $.limits[0].value limit:per-ip-shaping 500.0 GB
  • $.limits[1].value limit:per-ip-shaping 100.0 GB
  • $.limits[2].value limit:per-object-cap 25.0 GB
Evidence (3)
datesourcewhat it proved
2026-10-21storage.to/docs/api'No token: 100 GB / 24 hours (500 GB per IP), files expire after 3 days'; 'Free account token: Unlimited upload bandwidth, no daily file cap'; 'downloads are unlimited and unthrottled'
2026-10-21storage.to/premiumpermanence is paid: Personal $5/mo 100 GB, 'Files never expire'
2026-10-21storage.to/b9PYWolbjprobe: POST /api/upload/init -> 200 presigned URL at 7291236a05b5feaef8f8a13dc7957e8b.r2.cloudflarestorage.com; PUT -> 200; POST /api/upload/confirm -> 200 {"file":{"url":"","expires_at":"2026-10-24T14:49:29+00:00"}} (3-day expiry confirmed live)
More fields (1)
{
 "dead_end": {
  "failure_class": "retention",
  "why": "No permanent free storage: anonymous 100 GB upload / 24h per visitor token (500 GB / 24h per IP), free-account token = unlimited upload bandwidth and no daily file cap, but every free file expires in 3-7 days; permanent storage starts at $5/mo for 100 GB",
  "retry_when": null,
  "first_recorded": "2026-10-21"
 }
}
Unknown or withheld values (4)
  • $.extras.dead_end.retry_when process
  • $.free_tier.notes process
  • $.per_object_cap.notes not-extracted
  • $.retention.notes not-extracted