TikTok, Reels and Shorts video specs: length, size, file weight, safe zones
Published · By the Reeladay team
Each app has two sets of numbers, and people mix them up: what you can do by hand in the app or website, and what a connected tool can do through the API. Below are both, as the platforms publish them. Where we couldn't find an official number, the table says so.
If you only want the answer: one export that fits all three is further down.
The specs table
| TikTok | Instagram Reels | YouTube Shorts | |
|---|---|---|---|
| Longest video | Studio upload: 30 minutes API: 10 minutes, and each account's own limit comes from TikTok at posting time | App: 20 minutes API: 15 minutes Over 3 minutes won't be recommended to new audiences | 3 minutes. A longer upload is a regular video. |
| Shortest video | Not stated on the pages we read | API: 3 seconds | Not stated on the pages we read |
| Shape | Not stated for regular posts. TikTok's ad specs recommend 9:16. | Help page: 1.91:1 to 9:16 API: 0.01:1 to 10:1, 9:16 recommended | Square or vertical |
| Frame size | Studio upload: 720×1280 or higher API: 360 to 4096 pixels per side | Help page: at least 720 pixels API: up to 1920 pixels wide | Not stated for Shorts |
| File size | Studio upload: under 10 GB API: 4 GB | API: 300 MB No limit stated for the app | 256 GB or 12 hours, whichever is less (all YouTube uploads) |
| File type | Studio upload: MP4, WebM API: MP4, WebM, MOV | MP4, MOV | MP4 recommended |
| Video codec | API: H.264 recommended, H.265, VP8, VP9 | API: H.264 or HEVC, progressive, closed GOP, 4:2:0 | H.264 recommended, progressive, closed GOP, 4:2:0 |
| Frame rate | API: 23 to 60 FPS | Help page: at least 30 FPS API: 23 to 60 FPS | Upload at the rate you recorded. Common rates are 24, 25, 30, 48, 50, 60. |
| Bitrate | Not stated | API: up to 25 Mbps | Recommended for 1080p SDR: 8 Mbps at 24 to 30 FPS, 12 Mbps at 48 to 60 FPS |
| Audio | Not stated | API: AAC, up to 48 kHz, mono or stereo, 128 kbps | AAC-LC or Opus, 48 kHz recommended |
| Text | API: 2,200 characters | 2,200 characters, 30 hashtags, 20 @ tags | Title 100 characters, description 5,000 bytes |
| Cover | Selected at upload, no size stated | 420×654 recommended, can't be changed after upload | Not stated for Shorts |
Each number comes from the pages listed at the end, read on November 5, 2026.
Where the official pages disagree
We kept these visible because you will run into them.
- Reels shape. Instagram's help page says 1.91:1 to 9:16, and the API reference says 0.01:1 to 10:1. The API range describes what it will accept, and either way 9:16 is the shape Instagram recommends.
- Reels frame rate. The help page says a minimum of 30 FPS, the API says 23 to 60. A 24 FPS film export may pass through the API and still miss the help page's minimum. Using 30 satisfies both.
- Reels length. 20 minutes in the app and 15 through the API. Instagram's advice for reach is shorter than either: its creator FAQ says it recommends videos to new audiences at 3 minutes or less.
- TikTok length and size. The Studio help page says 30 minutes and under 10 GB. The API guide says 10 minutes and 4 GB. They describe different routes, so both can be right. You may also see larger numbers quoted elsewhere that we couldn't confirm.
- TikTok caption length. The API says 2,200. Creators report other limits in the app, and we didn't find an official help page that states one, so treat anything above 2,200 as unconfirmed.
Safe zones
The app's buttons, your username and the caption sit on top of the video. Anything important underneath gets covered. This is the part with the least official data, so here is exactly what we could and couldn't find.
- Instagram. Meta publishes numbers for Reels ads: leave 14% at the top, 35% at the bottom and 6% on each side free of text and logos. On a 1080×1920 frame that is about 269 pixels at the top, 672 at the bottom and 65 on each side. Those are ad figures. We didn't find a separate number for regular reels.
- TikTok. TikTok's ad specs publish safe zones as downloadable template files with no numbers in the text, and the area changes with caption length. A longer caption leaves less safe space. We didn't find numbers for regular posts.
- YouTube. Google Ads documentation refers to safe zones for vertical video ads, but the YouTube help pages we read give no percentages for regular Shorts.
A practical approach is to design to Meta's numbers on all three, since they're the only published percentages we found and they're generous. Then look at the real thing on a phone: upload as "Only you" on TikTok or as private on YouTube, and check that nothing important is hidden. One warning about that test: TikTok keeps your last privacy setting for the next post, so switch it back afterwards.
The preview on our home page lets you drop a clip and see where the buttons land in each app. Those overlays are our own approximation, not platform numbers.
One export that fits all three
Take the strictest value from each row and you get:
- 1080×1920, 9:16
- MP4 with the index at the front of the file. Instagram and YouTube both ask for that.
- H.264, progressive, 4:2:0
- 30 FPS, if that's what you shot or edited at
- AAC stereo, 48 kHz
- Three minutes or less
- Under 300 MB, which at three minutes works out to about 13 Mbps in total
If your editor doesn't offer all of this, ffmpeg does. This command turns a vertical master into that file:
ffmpeg -i master.mov \
-vf "scale=1080:1920:force_original_aspect_ratio=decrease,pad=1080:1920:(ow-iw)/2:(oh-ih)/2,fps=30" \
-c:v libx264 -profile:v high -crf 20 -maxrate 10M -bufsize 20M -pix_fmt yuv420p \
-c:a aac -b:a 128k -ar 48000 -ac 2 \
-movflags +faststart output.mp4
We ran it on a test clip and read the result back with ffprobe: H.264, 1080×1920, 30 FPS, yuv420p, AAC at 48 kHz, with the index at the front of the file. It adds black bars if your video isn't 9:16, so crop first if you'd rather fill the frame.
What Reeladay checks before posting
We build Reeladay, and it runs these checks when you upload your own video. They follow the documentation above and are stricter or looser in a few places for practical reasons.
- Any upload. MP4 or MOV, judged by what's in the file and not by its name, with a video track and a real duration. Up to 1 GB, because the server's disk is shared. Captions up to 1,024 characters, which is less than the apps allow.
- Reels: won't post. Under 3 seconds or over 15 minutes, over 300 MB, a codec other than H.264 or HEVC, outside 23 to 60 FPS, wider than 1920 pixels, or a shape outside 0.01:1 to 10:1.
- Reels: warns. Not 9:16, over 25 Mbps, audio other than AAC, or color other than 4:2:0.
- TikTok: won't post. Over 10 minutes, a codec other than H.264, H.265, VP8 or VP9, outside 23 to 60 FPS, or a side outside 360 to 4096 pixels.
- TikTok: warns. Over 3 minutes, because the limit for each account comes from TikTok and the publishing screen shows it.
- Shorts: warns. Over 3 minutes or horizontal, because it would go out as a regular video. A caption is required, since its first line becomes the title.
These checks say whether the file should be accepted. They say nothing about how many people will watch it.
Sources
All pages were opened on November 5, 2026. Limits change without notice, so check the original if a number matters for you.
- TikTok: Creator tools (Studio upload limits), Media transfer guide, Direct Post reference, Content sharing guidelines, In-feed ad specs, Making a post
- Instagram and Meta: IG User Media reference, Reel size and aspect ratios, Record a reel, Instagram for Creators FAQ, Reels ad specs
- YouTube and Google: Understand three-minute Shorts, Upload YouTube Shorts, Upload videos longer than 15 minutes, Recommended upload encoding settings, Data API videos resource, Demand Gen asset specs