Troubleshooting
Why an Upload Sticks at 99 Percent
The bar reaches the end and stops, and the file is not broken. What the platform is doing in that gap, and when the wait is genuinely a failure.
2 min read · Published 14 September 2026
The progress bar hits ninety nine percent and sits there. Nothing is obviously wrong, nothing is obviously happening, and the instinct is to cancel and start again. That instinct is usually wrong.
The bar measures the transfer, which really has finished. What happens next is the platform accepting the file, and that part has no honest progress to report.
What the platform is doing
Receiving the bytes is the quick part. Once they arrive the service has to check the file is valid, read it, and produce its own versions at every resolution it intends to serve.
- Verify the upload is complete and not corrupt
- Read the container and confirm the streams are what they claim
- Re-encode into each delivery resolution, which is the slow step
- Generate thumbnails, run automated checks, index the audio
- Publish, or hold it for review
Step three scales with length and resolution rather than file size, which is why a short 4K clip can take longer than a long 720p one. A ten minute 4K upload doing several resolutions is doing real work for several minutes.
Cancelling at ninety nine percent and restarting throws away the completed transfer and begins the whole thing again, including the wait you were impatient about. It is the one action guaranteed to make it take longer.
When the wait is normal
| Upload | Typical processing | Worth worrying at |
|---|---|---|
| Under 2 minutes, 1080p | Under a minute | 10 minutes |
| 10 minutes, 1080p | A few minutes | 30 minutes |
| 10 minutes, 4K | Ten minutes or more | An hour |
| Over an hour, any resolution | Substantial | Several hours |
Most platforms let you close the tab once the transfer is done. The processing continues on their side, and you are notified when it finishes. Sitting and watching the bar is optional, which the interface does not always make clear.
When it is genuinely stuck
Three signs, and they are reasonably distinct from a normal wait.
- The bar stopped well before the end and has not moved for several minutes, which is a connection problem rather than a processing one
- The page shows an error, a retry, or a status that changed from processing to failed
- The same file has failed at the same point more than once, which points at the file rather than the service
For the third case, read the file before uploading it a fourth time. A truncated recording, a variable frame rate that the platform rejects, or an audio codec it will not accept all present as a repeated failure that no amount of retrying resolves.
Making uploads easier on everyone
Uploading a format the platform already uses lets it skip work. H.264 video with AAC audio in an MP4, at a resolution you actually need, is the least surprising thing you can hand a service, and it processes faster than something exotic for exactly that reason.
Uploading 4K when the content was shot at 1080p is the opposite: it takes longer to transfer, longer to process, and adds no detail that was not there.
Common questions
Why does my upload stop at 99 percent?
Because the transfer has finished and the platform is now processing the file, which the progress bar does not represent. It is verifying the upload and re-encoding it into each resolution it will serve, and that step has no meaningful progress to display.
Should I cancel and re-upload?
No. Cancelling discards a transfer that completed successfully and restarts everything, including the processing wait. If the bar reached the end, the file is there.
How long should processing take?
Minutes for a typical 1080p video, longer for 4K and for anything over ten minutes, since the platform re-encodes into several resolutions. An hour with no change on a short upload is worth investigating; ten minutes is not.
Can I close the tab while it processes?
On the major platforms, yes, once the transfer itself is complete. Processing happens on their servers and continues without the page open, and you are notified when it is done.