File storage
Cloudflare R2
Keep uploaded files in object storage using an S3-compatible API.
Sources checked
Our recommendation
When to choose it
Choose R2 when you want object storage separate from your database and can implement the upload and access boundary.
A good fit for
- An independent object storage service
- Files accessed through a backend or Workers
Choose something else when
Choose Supabase Storage when you want bucket access tied directly to an existing Supabase Auth setup.
Watch out for
- Buckets hold objects, not relational rows. Store file metadata and ownership deliberately.
- An S3-compatible API is not an authorization policy. Restrict uploads and use scoped access.
How costs work
Storage and request-operation usage
Review storage class, operation volume and the current transfer policy. No egress fee does not mean every operation is free.
Check current official terms and pricing ↗This is a pricing model, not a monthly quote. Check your region, intended usage and current plan before buying.
What connects to it
- S3-compatible SDKs
- Cloudflare Workers
These are technical connections you can configure. Selecting a card creates no accounts or resources.
Compare the alternatives
Learn the boundary before you connect it
Lessons open through your account and the kits you own.
Check the evidence
Feature sources were reviewed on 4 Oct 2026. Plans and availability can change.
- Object storage ↗
S3-compatible storage and Workers integrations.
- Billing dimensions ↗
Storage classes, request operations and transfer policy.