Stuck on "uploading", a failed post, or a video you can't even attach? Most Threads upload problems come down to the file (too long, too big, the wrong format or frame rate), the connection, or app permissions. Pick what you see and get the exact fix.
Pick the closest match. Work through the fixes in order and tick them off as you go.
Choose the video that won't upload. It's read only in your browser - nothing is sent anywhere.
Browsers can't read frame rate, codec or bitrate. If your file passes but still won't upload, it's probably one of those - use the export settings below.
Re-exporting fixes most stubborn uploads. These settings stay well inside every Threads limit.
ffmpeg -i input.mov -t 300 -vf "scale='min(1080,iw)':-2,format=yuv420p" -r 30 -c:v libx264 -profile:v high -preset medium -b:v 8M -maxrate 10M -bufsize 16M -c:a aac -b:a 128k -ar 48000 -ac 2 -movflags +faststart output.mp4Replace input.mov with your file name. It trims to 5 minutes, scales to 1080 px wide, converts to 30 fps H.264 + AAC and puts the index at the start of the file, as Threads requires.
Device settings: iPhone settings finder · Android settings helper
Switching tabs or letting the computer sleep can pause uploads.
Use a current Chrome, Edge, Safari or Firefox.
Ad and script blockers can block the upload. Try a private window.
Ctrl+Shift+R (Windows) or Cmd+Shift+R (Mac), then try again.
Must be MP4 or MOV, 1 GB or less, 5 minutes or less.
If it uploads from the app, it's a browser problem.
Run through this before you post an important video.