Vertical video specs for TikTok, Reels, Shorts and six more platforms
Updated Oct 8, 2026
Nine platforms, nine slightly different rulebooks. The good news is that one export — MP4, H.264, AAC audio, 1080 × 1920, under 60 seconds — is accepted by all of them. The rest of this page is the detail for when you need it: what each platform accepts, where the hard limits are, and how long a caption can be.
The one export that works everywhere
If you remember nothing else: MP4 container, H.264 video, AAC audio, 1080 × 1920 pixels (9:16), 30 frames per second, between 5 and 60 seconds, well under 50 MB. That file is accepted by every platform on this list, including the strict ones (Snapchat and Bluesky). Everything below is about how much room you have beyond that.
Clips made with PostingClips are MP4 files. Clips generated with AI are vertical 9:16, and their length and resolution depend on the model you pick. The editor exports 1080 × 1920 for 9:16, and also 1:1, 4:5 and 16:9. If Snapchat is a target, keep the clip at 5 seconds or more.
TikTok
MP4, MOV and WebM are accepted; MP4 is the safe choice. Vertical 9:16 is the native format. Uploads through the API can run to 10 minutes, but short clips are what the feed is built around. Captions can be up to 2,200 characters including hashtags. TikTok has an AI-generated content flag, set per post.
Instagram Reels
MP4 or MOV, 9:16, 1080 × 1920 recommended. A single video published through the API becomes a Reel and can be shared to the feed. Captions up to 2,200 characters. Instagram exposes a "made with AI" flag through its API.
Facebook Reels
MP4 or MOV, 9:16, and Reels are capped at 90 seconds. Publishing goes to a Page. Captions can be very long; keep them focused anyway. There is no AI flag in Facebook's Page publishing API, so disclosure lives in the caption.
YouTube Shorts
MP4, MOV, WebM and several others. A vertical video under three minutes is classified as a Short automatically — no special flag. The title is limited to 100 characters and the description to 5,000. YouTube's API has a synthetic-media disclosure boolean.
X (Twitter)
MP4 or MOV, one video per post, up to 2 minutes 20 seconds on standard accounts. The caption limit is 280 characters on free accounts — the tightest on this list — so hashtags cost real space. No AI flag in the API.
MP4 or MOV, from 3 seconds to 10 minutes on personal profiles (30 on Pages), aspect ratios anywhere from 1:2.4 to 2.4:1 — vertical 9:16 fits. Captions up to 3,000 characters. No AI flag in the API.
Threads
MP4 only (H.264 / AAC), up to 5 minutes and 1 GB, 9:16, 1:1 or 16:9. Captions up to 500 characters. No AI flag in the API.
Snapchat
The strictest of the nine: MP4 only, 9:16, at least 540 × 960, between 5 and 60 seconds, up to 500 MB. Snapchat rejects anything outside those limits rather than converting it. Clips post to a Public Profile's Story. No AI flag in the API.
Bluesky
MP4 only, up to 60 seconds, up to 50 MB, up to 1920 × 1080 in either orientation. Captions up to 300 characters including links. No AI flag in the API; the account connects with an app password rather than OAuth.
Caption limits side by side
Because the limits vary so much, a caption written once and pasted everywhere will either be too long for X and Bluesky or too thin for LinkedIn and YouTube. The workable approach is one caption per platform, each written to its own limit. PostingClips does this automatically and trims to the limit before posting.
- X: 280 · Bluesky: 300 · Snapchat: ~250 · Threads: 500
- TikTok: 2,200 · Instagram: 2,200 · LinkedIn: 3,000
- YouTube description: 5,000 · Facebook: effectively unlimited
