How many files can you upload to ChatGPT? All 6 caps in one place
Limits by planLast checked
Short answer
Six different caps exist and people mix them up constantly. Per message: 20 files per message on web. Per day: 3 file uploads per day on Free. Overall: 80 files every 3 hours. Per Project: 5 files per project on Free, 25 files per project on Go and Plus, 40 files per project on Pro and Business. Per custom GPT: 10 files per GPT, for its whole lifetime. Then storage, 25 GB, which counts everything at once.
All of them, in one table
| Cap | Value | Scope |
|---|---|---|
| Per message | 20 files per message on web | One message. Mobile parity not stated |
| Per day, Free plan | 3 file uploads per day | Free accounts |
| Rolling rate | 80 files every 3 hours | Rolls over 3 hours |
| Per Project | 5 files per project Free, 25 files per project Go and Plus, 40 files per project Pro and Business | Each project separately |
| Per custom GPT | 10 files per GPT | Lifetime of the GPT |
| Storage | 25 GB | All chats, Projects and GPTs together |
They stack. Being inside the per-message limit does not exempt you from the daily one, and having daily allowance left does not help if you are out of storage.
The one that surprises people: custom GPTs
10 files per GPT, for the lifetime of that GPT.
Not per conversation, not per month. Ten files total, ever, for that GPT's knowledge. After that you are swapping files out rather than adding more.
Worth planning around before you build one. If your GPT needs to know about twenty documents, combine them into fewer, larger files before uploading rather than discovering the ceiling at document eleven.
The one that never resets: storage
25 GB per user, 100 GB per organisation.
Shared across chats, Projects and custom GPT knowledge, and cumulative. A file uploaded months ago still occupies it, and deleting the chat it arrived in no longer removes it: files saved to your Library outlive the conversation. Delete the file itself, from Settings then Storage or from the Library.
This is the cap behind most "upload limit reached" messages that appear when someone has barely uploaded anything. Check Settings, then Storage.
Failed attempts still count
OpenAI's documentation says failed uploads can count toward the rate cap. On Free, with only 3 file uploads per day, one stubborn file retried three times can spend your entire day and upload nothing at all.
Making your files go further
Bundle before uploading. The caps count files, not bytes. Six documents concatenated into one text file is one upload rather than six, and for code it also preserves the structure ChatGPT needs.
Paste instead of uploading. A paste under 10,000 characters is a message, not an upload, so it does not touch any of these caps. When you are out of uploads, this still works immediately. Go over that in a single paste and ChatGPT converts it into an attachment, which spends an upload after all, so send long text in parts.
Send only the relevant part. One chapter is one file and usually gets a better answer than the whole book.
Which one you are hitting
The message usually tells you, if you read it carefully.
- Mentions how many at a time → the per-message cap of 20 files per message on web. Send the rest in another message.
- Mentions a limit reached → daily or rolling cap. Check Settings then Storage to rule out storage, then wait about an hour.
- Happens inside a Project → the Project file cap, which is separate from everything else.
- Happens while editing a GPT → the ten-file lifetime cap for that GPT.
Common questions
How many files per message?
20 on the web version, doubled from 10 in February 2026. OpenAI has not said whether the mobile apps match. Exceed it and you are told you may only upload a certain number at a time, so send the rest in a second message. This cap is separate from every other one on this page.
How many per day?
Free accounts get 3 per day. Paid accounts fall under the general cap of 80 files every 3 hours, which rolls rather than resetting daily. OpenAI has never published when the Free daily allowance resets, so treat any specific reset time you read elsewhere as a guess.
How many files can a custom GPT hold?
10, and that is for the lifetime of the GPT rather than per conversation. Once you have used them you are replacing files, not adding more.
Why does the count seem lower than it should be?
Failed upload attempts count. OpenAI states this explicitly. A file you retried five times spent five slots regardless of whether any of them worked.
Keep reading
ChatGPT file upload limit, free plan: 3 a day in 2026
ChatGPT Free: 3 file uploads a day, 500 MB Library storage, 5 files per project. What still works when you are out, and what Go at $8 changes.
ChatGPT Plus raises 3 a day to 80 every 3 hours, and little else
Plus gives 80 files every 3 hours instead of 3 a day, plus 25 files per project. The 2M token cap is identical on every plan, so long files still get cut.
When does the ChatGPT upload limit reset? 3 hours, rolling
OpenAI publishes no reset time for the Free cap of 3 a day. The general cap of 80 files rolls over 3 hours, freeing slots gradually, so an hour gets you moving.
Can ChatGPT open a ZIP archive?
No. ChatGPT never unpacks archives, so a ZIP costs 1 upload slot and returns nothing readable. Extract it, then bundle the files into 1 text file instead.
Every ChatGPT attachment limit: 20 a message, 3 a day on Free
5 attachment caps stack: 20 per message, 3 a day on Free, 80 every 3 hours, per project, per GPT. A 30 second diagnosis for which one stopped you.
Can you upload files to ChatGPT on a phone?
Yes. The ChatGPT mobile apps use the same 512MB and 2 million token caps as the web, since limits belong to your account. What a phone cannot do, and the fix.