Skip to content

When does the ChatGPT upload limit reset? 3 hours, rolling

Limits by planLast checked

Short answer

It depends which limit you hit. The Free plan allows 3 file uploads per day, and that is a daily reset. The general cap is 80 files every 3 hours, and that one rolls: slots free up gradually as older uploads age past three hours, rather than everything clearing at once. So waiting an hour usually gets you some capacity back without waiting for any particular moment.

Rolling is not the same as resetting

This is the part that makes the limit feel unpredictable.

A daily reset is simple. Everything clears at a fixed time and you start again. The Free plan works this way, with 3 file uploads per day.

The general cap of 80 files every 3 hours works differently. It looks backwards over the last three hours and counts what happened in that window. There is no moment when the counter zeroes. An upload you made two hours and fifty minutes ago drops out of the window ten minutes from now, and that one slot comes back.

Practically, that means you rarely have to wait the full three hours. If you hit the cap because of a burst of uploads twenty minutes ago, you will be waiting a while. If you have been uploading steadily, some capacity returns within minutes.

What to actually do

Wait an hour and try again, rather than waiting three. Most people who hit this hit it from a burst, and a burst ages out of the window together.

You cannot check how much is left

Worth knowing before you go looking, because the place people look is the wrong one.

ChatGPT shows Library storage usage under Settings, then Storage. Library storage is its own allowance, separate from the 25 GB per-user cap and much smaller: 500 MB on Free, 4 GB on Go, 20 GB on Plus and 100 GB on Pro. OpenAI does not explain how the two relate. Either way, both are about how much you are keeping, not how fast you are uploading.

OpenAI states plainly that ChatGPT does not show how much of the rolling upload-rate quota has been used or how much remains. There is no counter, no timer, and no indicator anywhere in the interface.

So if storage looks fine and you are still blocked, you are being held by the rate cap, and the only signal you will get is that it starts working again.

Failed attempts still count

The single most useful thing on this page.

OpenAI's documentation says failed upload attempts can count toward the rate cap. So a file that keeps failing, that you keep retrying, is spending your allowance every time even though nothing ever uploaded.

That is why people hit the limit having, from their point of view, uploaded almost nothing. They uploaded one file eleven times.

If a file keeps failing, stop retrying it

Work out why it failed first. A file that is too large will be too large the twelfth time. Retrying is the one response guaranteed not to help, and guaranteed to cost you.

The three limits people confuse

LimitValueHow it clears
Free plan daily3 file uploads per dayDaily
Rolling rate80 files every 3 hoursGradually, as uploads age past 3 hours
Storage25 GB per user, plus a smaller Library capOnly when you delete the files themselves

The third one never resets on its own. It is cumulative, shared across your chats, Projects and custom GPT knowledge, and a file you uploaded in March is still occupying it today. If you are blocked and storage is the reason, waiting will not help at any point, ever. You have to delete something.

And delete the right thing. The standard advice to clear out old chats no longer frees storage: since Library launched, deleting a chat that contained files does not delete the files, which stay saved to Library. Go to Settings, then Storage, or to the Library trash, and remove the files themselves.

Peak hours

OpenAI's documentation adds that these limits may be lowered during peak hours.

That means the number you hit today is not necessarily the number you will hit tomorrow, and a cap that felt generous last week can feel tight now without anything having changed on your side. It also means "I got 80 yesterday" is not a reason to expect 80 today.

If you keep hitting it

Uploading fewer, larger things beats uploading many small ones, because the cap counts files rather than bytes. Six files concatenated into one text document is one upload instead of six, and it counts once.

That is also the reason splitting a document by hand can work against you: forty pasted chunks are forty messages, not forty uploads, so pasting does not consume the upload cap at all. If you are rate-limited, pasting text is the way through. Keep each paste under 10,000 characters though. Above that, ChatGPT converts the paste into a file attachment, and it starts counting against the very cap you were dodging.

Common questions

Does the upload limit reset at midnight?

Nobody outside OpenAI can say. The Free cap is published as 3 uploads per day with no reset time attached, so a specific hour quoted elsewhere is a guess. The general cap of 80 files every 3 hours does not clear at a moment at all, because it rolls: slots free up gradually as individual uploads pass the three hour mark.

Can I see how long is left?

No. OpenAI confirms ChatGPT does not display how much of the rolling upload quota you have used or have remaining. Settings then Storage shows your Library storage, which is a different limit entirely.

Does deleting chats free up my upload allowance?

No, and since Library launched it no longer frees storage either. OpenAI states that deleting a chat containing files does not delete those files saved to Library, so you have to delete the files themselves under Settings then Storage. Neither action touches the rolling rate cap, which is purely about how many uploads happened recently.

Do failed uploads count against the limit?

Yes, and this catches people constantly. OpenAI states that failed upload attempts can count toward the rate cap. Retrying a stubborn file ten times can spend ten slots and produce nothing.

Keep reading