Tutorial8 days ago

5. Giving It Your Files

512MB per file, 2 million tokens per document, and 3 uploads a day on the free plan. The limit that actually bites is not the one you would guess.

The WJS Desk

Sep 16, 2026 · updated 8 days ago · 5 min read

Photo by Jsme MILA on Pexels

The app will accept almost anything you drag into it. Its bundle declares a document type of "all files", which is exactly as broad as it sounds. Accepting a file and doing something useful with it are different things, and the limits are real, specific, and mostly undocumented where you would look for them.

The numbers

These come from OpenAI's own file uploads documentation rather than from our testing:

LimitValue
Any single file512 MB
Text in one document2 million tokens
Spreadsheets and CSVAbout 50 MB
Images20 MB each
Uploads per 3 hours80 files
Free plan3 files per day

Two of these matter more than the others. The 2 million token cap is the one that actually bites, because it is a limit on content rather than file size: a 4 MB text file can exceed it while a 300 MB video does not. Roughly, a token is three quarters of a word, so two million tokens is somewhere around a million and a half words. You will rarely hit it, and when you do the file is a database export rather than a document.

The 3 per day free limit is the one that surprises people. If you are evaluating whether this is useful for your documents, you get three attempts a day to find out.

What works well, and what quietly does not

The format matters more than the size, and the failures are not obvious because nothing errors.

TypeHow it goes
Plain text, markdown, codeReliable. Nothing to misread
Word documentsReliable for prose
PDFs of real documentsGood for text, poor for tables
PDFs that are scansVaries a lot. It is reading an image
SpreadsheetsStructure often survives badly
Images of textUsually fine, fails silently when not

The failure that costs people money. A table inside a PDF frequently arrives as a stream of cells with the rows and columns lost. The answer you get back is confident and maps the wrong number to the wrong label. Nothing errors, nothing looks wrong, and the figure is simply not the figure in your document. If your question depends on a table, make it reproduce the table first and check it read it correctly before you ask anything about the contents.

The instruction to put above every file

The same one from our Super Beginner lesson on your own documents, and it matters more here because you are not looking at the text you handed over:

Answer only from the file I attached. Quote the exact
sentence each answer comes from and give its page or
section. If something is not stated, say "not stated
in this document" rather than inferring it.

Without that you get a blend of your document and its general knowledge of how documents like yours usually read, with no marker showing where one ends and the other begins. With it, every answer becomes a thirty second spot check.

Several files at once

This is where the desktop app genuinely beats working by hand, because comparing documents is the thing humans are worst at.

I have attached two versions of the same contract.
List only the substantive differences. Ignore
formatting and rewording. For each real change, say
what someone is now obliged to do that they were not
before, or no longer has to do.

That last sentence is what makes it useful rather than a diff. A change from "may" to "shall" is invisible in a list of textual differences and is the entire reason you are reading the document.

Five questions worth asking any file

Paste these under almost any document and you will learn more than reading it front to back:

1. Summarize this in 5 bullets, with a page reference
   for each.
2. What in here would cost me money, and when?
3. What are my obligations, as a list with deadlines?
4. What is unusual compared to a standard version of
   this document?
5. What is NOT covered that I might assume is?

Four and five are the ones nobody thinks of and the ones that pay. Question four finds the clause somebody inserted. Question five finds the assumption that ruins your year, and it works because you have asked for absences rather than contents, which is a shape it can search for and your own proofreading cannot.

Making the free limit go further

Three uploads a day is tight if you are evaluating whether this is useful. Two things that help:

Ask everything in one message. Each upload costs one of your three whether you ask one question or nine. Write the questions first, attach once, send once.

Paste text instead of attaching a file. Pasting the contents of a short document into the message does not consume an upload. For anything under a few pages this is strictly better on a free plan, and the answer is identical because the model receives the same characters either way.

What not to upload

Lesson 2 covered permissions; this is the equivalent for content. Before you drag something in, remember it leaves your machine.

  • Anything with other people's personal data. Their information, and not yours to send.
  • Credentials, keys, environment files. Obvious, and it still happens, usually because the secret was in a config file you attached for a different reason.
  • Anything an employer or client contract restricts. Check before, not after.

The practical middle ground: delete the identifying lines before you upload. It does not need the account number to explain the fee, or the names to summarise the complaint.

If you handle sensitive material regularly, find the training toggle once and decide deliberately. Most consumer plans let you turn off training on your conversations, and business tiers generally do not train on your data at all.

Before the next lesson

Take one document you have been avoiding. Attach it with the citation instruction, ask what it would cost you and what your obligations are, then go and check one cited line against the document.

Next: getting it to stop asking who you are every single time.

Share

ChatGPT file limits: 512MB per file, 2M tokens of text, 20MB per image, 3 uploads a day on free. And the PDF table failure nobody warns about. #ChatGPT #AI #Productivity

Never miss a ship

The best stuff that shipped this week, delivered every Thursday. Free, no spam. We read all the boring stuff so you get the fun parts.

Keep reading