Design File Size and Format Limits
Forms & Inputs · uploads, errors, microcopy
Updated 2026-07-28
- State the limits before the picker opens. Learning that a file is too large after waiting for it to upload is the most avoidable failure in any upload flow.
- Say the accepted formats in words, not only as extensions in a technical string, and filter the file picker to match.
- Check size and type locally before sending anything. The browser knows immediately, so there is no reason to spend the user's bandwidth first.
- Explain a rejection in terms of the file the user chose. "This image is 12 MB, the limit is 5 MB" is actionable, and "File too large" is not.
- Offer the fix where you can. Resizing an oversized image, converting a format you can read, or compressing on the user's behalf turns a dead end into a step.
- Handle multiple selections individually. One invalid file in a batch of twenty should not reject the other nineteen.
- Validate the actual content, not just the extension. A renamed file will pass a name check and fail later in processing, where the error is much harder to explain.
- Say what happens after upload. Processing time, quality changes, and where the file will appear are all things users expect to be told once the transfer finishes.
Limits are reasonable, and discovering them by failing is not, so the interface should always say the rule before enforcing it.
Related guides