What the Supabase storage object size limit is, what happens when you exceed it, and how to check or raise it — verified 2026-08-19.
Check file.size <= 52428800 bytes before calling upload()
| Plan | Limit |
|---|---|
| All plans | 50 MB per object |
Each individual file uploaded to Supabase Storage can be at most 50 MB (52,428,800 bytes). The per-object cap applies across all plans.
Storage is served through a shared object store; the per-object cap keeps upload and egress predictable and prevents a single upload from exhausting bandwidth or disk on shared infrastructure.
const MAX_BYTES = 50 * 1024 * 1024 // 50 MB
if (file.size > MAX_BYTES) {
alert('File must be under 50 MB')
} else {
await supabase.storage.from('uploads').upload(file.name, file)
}
Fail fast client-side instead of relying on the server-side 413.
Enforce the cap in the client so uploads fail fast with a clear message.
const MAX = 50 * 1024 * 1024
if (file.size > MAX) {
throw new Error('File exceeds the 50 MB storage limit')
}
Recommendations are editorial — DB Error Reference takes no payment or affiliate fees for tool listings.
This page is based on the official Supabase documentation linked below and adds practical guidance on top.