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.

4 min readSume
All posts

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.

Limits quoted from each source, read 2026-10-01.
QuestionGemini rate-limits pageSume docs
Per-file size2GB input file (Batch API)No number published in these pages
Stored files20GB file storage (Batch API)Not applicable: inputs are URLs
How media arrivesFiles referenced in batch inputPublic HTTPS URL
Oversize requestNot stated on this page413 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

All Developers posts

Written by Sume