On this page
If you export one vertical MP4 at 1080×1920, H.264 with AAC audio, 30 frames per second, under 90 seconds and under 300 MB, every network in this guide accepts it when it is posted through a scheduler. The limits below come from each network's own developer documentation, which is what applies when a post goes out through an API rather than the phone app.
The cheat sheet: what each network accepts through its API
These are the limits for posting through each platform's official API, which is how scheduling tools publish. The in-app upload sometimes allows more (TikTok's app, for example, can post longer videos than its API sends), so a file that uploads fine on your phone can still be rejected by a scheduler.
Network | Length | File size | Resolution and aspect | Format |
|---|---|---|---|---|
YouTube (long-form) | Up to 12 hours (over 15 minutes needs a verified account) | 256 GB | 16:9 recommended | MPEG-4 (MP4) preferred |
YouTube Shorts | Up to 3 minutes | 256 GB | Vertical or square — this is what makes it a Short | MPEG-4 (MP4) preferred |
TikTok | Up to 10 minutes via API; the account's own limit applies | 4 GB | 360–4096 px on each side, 9:16 recommended | MP4, MOV, WebM; H.264, H.265, VP8, VP9; 23–60 fps |
Instagram Reels | 3 seconds – 15 minutes | 300 MB | Max 1920 px wide; 9:16 recommended | MP4 or MOV; H.264 or HEVC; AAC up to 48 kHz; 23–60 fps; max 25 Mbps |
Facebook Reels | 3–90 seconds | Not stated | 9:16, min 540×960, 1080×1920 recommended | MP4; H.264 or H.265; 24–60 fps, fixed frame rate |
3 seconds – 30 minutes | 75 KB – 500 MB | Not restricted | MP4 |
Each network has its own deep dive with the details that don't fit in a table: TikTok video specs, Instagram Reels specs, YouTube Shorts length and size, Facebook Reels specs and LinkedIn video specs.
One master file that fits everywhere
Most people don't need six exports. They need one file that every network accepts, and then different text per network. Work backwards from the tightest limits in the table:
1080×1920, 9:16. Vertical is what Reels, TikTok and Shorts are built around, it is the resolution Facebook recommends, and it stays under Instagram's 1920-pixel width limit.
H.264 video, AAC audio at 48 kHz, stereo. Every network here lists H.264; Instagram caps audio at 48 kHz.
30 fps, constant. Inside every network's frame-rate window (TikTok and Instagram start at 23, Facebook at 24), and Facebook asks for a fixed frame rate.
Under 90 seconds if the same clip should run as a Facebook Reel. Under 60 seconds also keeps a Short out of YouTube's rule for longer Shorts with copyright claims (see below).
Under 300 MB. Instagram's cap. A 60-second 1080p H.264 file is normally far below it.
Fast start. Instagram requires the "moov atom at the front of the file" — the index that tells a player where the frames are. Many editors put it at the end by default.
If your editor doesn't expose these settings, this ffmpeg command converts any source into that master file. It scales and pads to 9:16 without stretching, sets square pixels, forces 30 fps with a keyframe every 2 seconds (Facebook asks for a closed GOP of 2–5 seconds), caps the bitrate below Instagram's 25 Mbps, and moves the index to the front:
ffmpeg -i input.mov \
-vf "scale=1080:1920:force_original_aspect_ratio=decrease,pad=1080:1920:(ow-iw)/2:(oh-ih)/2,setsar=1,fps=30" \
-c:v libx264 -profile:v high -pix_fmt yuv420p -crf 20 -maxrate 20M -bufsize 40M -g 60 \
-c:a aac -b:a 128k -ar 48000 -ac 2 \
-movflags +faststart output.mp4
We ran it on a 1920×1080, 60 fps test source with ffmpeg 6.1.1. The output was H.264 High, 1080×1920 with a 1:1 pixel aspect ratio, 30 fps, AAC at 48 kHz stereo, with a keyframe every 2.0 seconds and the index at the start of the file. A landscape source gets black bars above and below. If you'd rather crop to fill the frame, reframe in your editor first — the command doesn't guess where the action is.
Tip: Keep the master file clean — no platform stickers, watermarks or captions that only make sense on one network. TikTok's developer guidelines also ask apps not to add watermarks or promotional branding to posted content. Everything that differs per network belongs in the post text, not the video.
Where the networks really differ
TikTok: the account sets the length, not the API
TikTok's media transfer guide says developers can send videos up to 10 minutes, but that creators can post 3-minute videos and only some have access to 5 or 10 minutes. Before every post, a scheduler has to ask TikTok for the creator's current settings, including max_video_post_duration_sec, the longest video that account can post. A 4-minute video is fine for one account and rejected for another.
YouTube: Shorts are a classification, not an upload type
Since October 15, 2024, a video uploaded to a standard channel becomes a Short if it is square or vertical and up to three minutes long. There is no separate Shorts upload. One rule matters for longer Shorts: YouTube blocks a Short over one minute globally while it has an active copyright claim of any type; Shorts under one minute aren't affected.
Instagram: the cover is a separate decision
If you don't send a cover image, Instagram uses the first frame of the Reel. If your video opens with a fade or a dark frame, that's what appears on your profile grid. The API accepts a JPEG cover (up to 8 MB, 9:16), and crops the middle square for the feed.
Facebook and LinkedIn: page-level posting
Facebook Reels can only be published to Pages through the API, not to personal profiles, and the API allows 30 published Reels per Page in a rolling 24 hours. LinkedIn's Videos API takes up to 30 minutes and 500 MB in MP4 only.
The text has its own limits
A video that passes every check above can still fail on its caption. Threads rejects a post over 500 characters, YouTube measures its description in bytes rather than characters, and YouTube ignores every hashtag on a video that has more than 60. The full list is in social media character limits and how many hashtags each platform allows.
Vertical video has one more limit that no spec sheet lists: the parts of the frame covered by the app's own buttons and captions. Text or a product placed there is uploaded fine and then hidden on screen. Safe zones for TikTok, Reels and Shorts shows where those areas are.
Check a file before you schedule it
Our free video spec checker reads a file in your browser — length, resolution, aspect ratio, size and container — and checks it against every network in the table above, without uploading it anywhere. Frame rate and codec aren't visible to a browser, so the checker lists them as things to confirm in your export settings rather than marking them green.
When you publish through Uplonic, the TikTok checks run again at publishing time against the account's current limits, and each network gets its own text, trimmed to that network's length limit with the hashtags kept. You see that final text before anything goes out.
Sources & methodology
How we got these numbers: every limit comes from the network's own developer documentation or help center, re-checked on October 17, 2026. Where a network documents nothing (Facebook Reels file size, LinkedIn aspect ratio), the table says so instead of using third-party lists, which disagree with each other. The ffmpeg command was run locally with ffmpeg 6.1.1 and the output inspected with ffprobe.
Upload videos longer than 15 minutes — YouTube Help, accessed October 2026
Upload YouTube Shorts — YouTube Help, accessed October 2026
Supported file formats — YouTube Help, accessed October 2026
Content Posting API — Media Transfer Guide — TikTok for Developers, accessed October 2026
Query Creator Info — TikTok for Developers, accessed October 2026
Content Sharing Guidelines — TikTok for Developers, accessed October 2026
IG User Media — Reel specifications — Meta for Developers, accessed October 2026
Reels Publishing API — Meta for Developers, accessed October 2026
Videos API — LinkedIn (Microsoft Learn), updated March 2026




