Gemini upload limits

Gemini file upload limits in 2026: size, count and file types

As of October 2026, the Gemini app caps uploads at 10 files per prompt, 2 GB per video and 100 MB per other file, with context windows from 32,000 to 1 million tokens. If a CSV, JSON or Parquet file is too big, filter and export a smaller slice in rows.page, free in your browser.

.csv.json
Drop a file here
Stays in your browserUp to 1.5 GB

No file handy? Open CO2 emissions by country and year (50k rows, 14 MB).

Gemini upload limits at a glance

These are the Gemini app limits from Google's Gemini Apps Help, checked in October 2026. Google notes that the 10-file limit is subject to availability.

Gemini upload limits (checked October 2026)
LimitValue
Files per promptUp to 10, and each file in an uploaded folder counts
Video file sizeUp to 2 GB
All other filesUp to 100 MB
Video length5 minutes total, 1 hour on Google AI Pro and Ultra
Audio length10 minutes total, 3 hours on Google AI Pro and Ultra
ZIP filesUp to 10 files and 100 MB, no video or audio
Code folder or GitHub repositoryOne per chat, up to 5,000 files and 100 MB
Context window32K tokens without a plan, 128K on Google AI Plus, 1M on Google AI Pro and Ultra
File typesMost types, no per-extension list published
Daily file capRolling limit, no number published

How many files can you upload to Gemini at once?

You can attach up to 10 files to one prompt, and when you upload a folder, each file inside counts toward those 10. Two bundle types have their own caps:

  • Code folder or GitHub repository: one per chat, up to 5,000 files and 100 MB in total.
  • ZIP file: up to 10 files and 100 MB, with no video or audio inside.

Google publishes no numeric daily file cap. Instead, a rolling limit on chats with files resets after some time, and Google AI Pro and Ultra raise it.

Context windows by plan and what they mean for CSV and JSON

Passing the 100 MB check does not mean Gemini reads your whole file. The content has to fit in your plan's context window, and Google warns that going over it can lead to answers that miss details:

  • Without a Google AI plan: 32K tokens
  • Google AI Plus: 128K tokens
  • Google AI Pro and Ultra: 1 million tokens, which Google puts at about 1,500 pages of text or 30,000 lines of code
  • Deep Think: 192K tokens

For CSV and JSON, the token window is almost always the real bottleneck. A file far below 100 MB can exceed 32K or 128K tokens, and JSON costs more than CSV because every key name repeats on every record.

How to shrink CSV, JSON, and Parquet files in rows.page before uploading

rows.page runs DuckDB-WASM in your browser tab, so opening a file needs no account and nothing is uploaded unless you press Share.

  1. Drop your file on rows.page, or click Paste data to paste cells copied from Excel or Google Sheets. It opens .csv, .txt, .tsv, .tab, .json, .jsonl, .ndjson, .ldjson, .parquet and .pq files.
  2. Check the Columns panel for each column's type, empty values, min and max, and a histogram or top 10 values. Hide columns your prompt doesn't need.
  3. Narrow rows with the filter box, for example country:NL, price:>20 or -name:* (empty), or click a histogram bar.
  4. Export the view as CSV, JSON, JSONL, Parquet or Markdown (first 1,000 rows) and attach that file to Gemini.

A tab holds up to 1.5 GB of CSV, TSV, JSON or JSONL. Bigger CSV, TSV and JSONL files load partially, a bigger .json file is refused, and Parquet skips that check. rows.page does not read Excel files, so save them as CSV or paste the cells.

How to aggregate a dataset with SQL before uploading it to Gemini

Instead of sending raw rows, aggregate the dataset and upload only the summary. Type SQL that starts with SELECT, WITH or FROM into the filter box; the table is called data.

sql
SELECT
  "user.address.city" AS city,
  count(*) AS records,
  avg(price) AS avg_price,
  median(price) AS median_price
FROM data
WHERE price IS NOT NULL
GROUP BY 1
ORDER BY records DESC
  • Nested JSON flattens into dot-path columns, up to 8 levels deep and 200 child fields per object. Quote names that contain dots, such as "user.address.city".
  • FROM (SUMMARIZE data) returns a statistical profile of every column, a compact summary to hand to Gemini.
  • Remove duplicates with SELECT DISTINCT * EXCLUDE (__rid) FROM data, since the hidden __rid row number makes every row unique.
  • SQL results export up to 1,000,000 rows, while filtered views export every matching row.

Sharing a dataset link instead of uploading it to Gemini

To send a dataset to a teammate or another tool, press Share or push it from your terminal:

bash
curl -T data.csv https://rows.page

Without an account, a push can be up to 100 MB, you get 50 pushes and 1 GB per IP address per UTC day, and links expire after 7 days. Each hosted dataset also gets a raw URL at https://rows.page/<id>/raw.<ext>, and MCP clients such as Claude Code or Cursor can read it through https://rows.page/mcp.

rows.page limits and prices

WhatLimit or price
Open a file in your browserFiles up to 1.5 GB, $0, no account, nothing uploaded
Share a link without an account$0, files up to 100 MB, link deleted 7 days after creation
Free account$0, 10 datasets kept, last 3 versions
Pro$12/month, 100 datasets, files up to 500 MB, private links
Max$39/month, 1,000 datasets, files up to 2 GB, private links

Questions

Does Gemini have a daily file upload limit?

Google publishes no numeric daily file cap for the Gemini app. There is a rolling limit on chats with files that resets after some time, plus the count limits of 10 files per prompt and 5,000 files per code folder or GitHub repository.

Can I upload a Parquet file to Gemini?

Google says Gemini supports most file types but publishes no per-extension list. If Gemini rejects a .parquet or .pq file, open it in rows.page and export it, or a filtered slice, as CSV, JSON or JSONL.

Why does Gemini miss data from a CSV that is under 100 MB?

The file passed the size check, but its content must also fit in your plan's context window: 32K tokens without a plan, 128K on Google AI Plus or 1 million on Google AI Pro and Ultra. Beyond that, Google says answers can miss details, so aggregate or filter the CSV first.

How big can a video upload be in Gemini?

Up to 2 GB per video, compared with 100 MB for other files. Total video length is capped at 5 minutes, or 1 hour on Google AI Pro and Ultra.

Can I open an Excel file in rows.page to shrink it for Gemini?

No, rows.page does not read .xlsx or .xls files, and a pushed one returns "This looks like an Excel or zip file. Export it as CSV and push again." Save the sheet as CSV, or copy the cells and click Paste data on rows.page.