Gemini API file size limit: 2GB per file, 20GB storage
Gemini's rate-limits page lists a 2GB input file limit and 20GB file storage under Batch API limits. Sume takes public HTTPS URLs instead of uploaded files.

Google's Gemini API rate-limits page lists an input file size limit of 2GB and a file storage limit of 20GB. Both appear in the Batch API rate limits section, so they describe batch jobs rather than every Gemini call. Sume publishes no per-file size number in the pages read here; its media inputs are public HTTPS URLs, and the one size error documented is a 413 on the request body.
Numbers are as written on the Gemini page and in Sume's API reference, read 2026-10-01.
Where do the Gemini 2GB and 20GB limits apply?
On the rate-limits page they sit under the Batch API heading, alongside "Concurrent batch requests: 100". The page lists them as "Input file size limit: 2GB" and "File storage limit: 20GB". It also says limits vary by model and are tied to the project's usage tier. If you came here for a single-request upload cap, check the Gemini Files documentation directly; this page does not state one.
How does Sume take media instead?
Generation requests accept fetchable public HTTPS media URLs in the fields the OpenAPI schema documents, for example input.image_url for Avatar photos. The docs say localhost, private-network, non-HTTPS and non-image responses are rejected before generation submission. So the size question moves to wherever the file is hosted, and the request body itself stays small JSON.
| Question | Gemini rate-limits page | Sume docs |
|---|---|---|
| Per-file size | 2GB input file (Batch API) | No number published in these pages |
| Stored files | 20GB file storage (Batch API) | Not applicable: inputs are URLs |
| How media arrives | Files referenced in batch input | Public HTTPS URL |
| Oversize request | Not stated on this page | 413 payload_too_large on the request body |
What does a 413 mean on Sume?
The error table lists 413 payload_too_large as "Request body exceeds the configured API limit." Because media goes in as a URL, a large video should not cause it. A 413 usually means a very large JSON body, for example a long script or cue list. Shorten or split the body and resubmit.
What should I do with a large source file?
Host it at a public HTTPS URL and pass the URL. If the platform you publish to has its own cap, check that separately, as in Bluesky's 300 MB limit. For audio inside a video, see extracting audio from a URL.
Sources
Related posts
More in Developers
- Gemini Batch API rate limits vs Sume's 100-run bulk queue
Gemini Batch API allows 100 concurrent batch requests and a 2GB input file. Sume bulk runs queue up to 100 Format runs with concurrency 1 to 16.
- Gemini image_size 1k rejected: use 1K, and Sume resolution tiers
Gemini rejects a lowercase image_size such as 1k; use an uppercase K. Sume's images API takes a resolution tier, and only values the model lists.
- Omni 1.1 Flash start and end frame API on Sume
Omni 1.1 Flash can render between two keyframes, including looping clips. On Sume, Omni takes image_url plus end_image_url; frame_images covers other models.
- Gemini Omni previous_interaction_id vs a Sume job per request
Google chains Omni 1.1 Flash extensions with previous_interaction_id. Sume has no such field: each request is its own job, and an edit takes a video_url.
Written by Sume