Upload Limits Across Major Services
A reference of file upload limits across web services and cloud storage. Useful for validation design and boundary-value testing.
Email & messaging services
Email and chat services impose attachment size limits. The 25 MB cap is standard for Gmail/Outlook, though Base64 encoding overhead reduces the practical limit slightly.
| Service | Limit | Notes | Test files |
|---|---|---|---|
| Gmail | 25 MB | Files over 25 MB auto-convert to a Google Drive link | 24.9 MB / 25 MB / 25.1 MB |
| Outlook | 25 MB | Up to 150 MB on Microsoft 365 (admin-configurable) | 24.9 MB / 25 MB / 25.1 MB |
| LINE | 50 MB | Videos limited to 5 minutes; images are auto-compressed on send | 49.9 MB / 50 MB |
| Discord (free) | 25 MB | Up to 500 MB with Nitro | 24.9 MB / 25 MB / 25.1 MB |
| Discord Nitro | 500 MB | Nitro Basic is limited to 50 MB | - |
| Slack | 1 GB | 1 GB upload limit on all plans | - |
Social & media platforms
Social platforms impose format and size limits on images and videos. Images are commonly resized and compressed, so the original file size is rarely preserved.
| Service | Limit | Notes |
|---|---|---|
| Twitter / X (image) | 5 MB (PNG/JPG) | GIF: 15 MB; video: 512 MB via browser |
| 8 MB (image) | Video: 4 GB; Reels: 4 GB | |
| 10 MB (image) | Video: 10 GB |
CMS & web applications
CMSs like WordPress have default upload limits determined by PHP and server configuration. See how to change the WordPress upload limit for details.
| Service / CMS | Default limit | Notes | Test files |
|---|---|---|---|
| WordPress | 2–10 MB | Depends on PHP and server config; configurable | 9.9 MB / 10 MB / 10.1 MB |
| Shopify | 20 MB | Same for images, videos, and files | - |
Cloud storage & developer services
Cloud storage and developer services typically support large uploads, but the single-request limit and multipart upload limit can differ.
| Service | Limit | Notes |
|---|---|---|
| AWS S3 | 5 GB (single) / 5 TB (multipart) | Multipart recommended above 100 MB |
| Google Drive | 5 TB | Subject to your storage plan capacity |
| Dropbox | 2 GB (web) / 50 GB (desktop app) | API supports up to 350 GB |
| GitHub | 100 MB per file | Up to 5 GB with Git LFS; 5 GB recommended for the entire repo |
| Cloudflare (Free) | 100 MB | Pro: 500 MB; Business: 500 MB; Enterprise: unlimited |
How to test upload limits
To accurately test a service's upload limit, use boundary-value testing: try a file just under, exactly at, and just over the limit. This validates your server's enforcement logic precisely.
DevLab provides threshold test files at byte-precise sizes for the most common limits, with MD5 and SHA-256 hashes for integrity verification.
Notes
- Limits above are accurate as of 2024. Check each service's latest documentation for current values.
- Base64-encoded uploads have ~33% overhead, so the actual file size you can send is about 75% of the limit.
- Limits can differ between plans and between API vs. browser uploads.
- Network conditions and timeout settings can cause uploads to fail even below the limit.