TTrimpx

Export settings

Vertical Video Settings for YouTube Shorts

Export 9:16 vertical video at 1080×1920: YouTube's official Shorts specs, three tested FFmpeg commands to turn horizontal footage vertical, and pitfalls.

Vertical video is everywhere now, but most cameras, screen recorders and editing timelines still default to horizontal 16:9. So two questions come up again and again: what settings should a vertical video have, and how do you turn horizontal footage into a vertical one without it looking squashed?

This guide covers both. The platform specs come from YouTube's own help pages. The FFmpeg commands were run and checked before we published them.

The basic shape: 9:16 at 1080 × 1920

A vertical video is usually 9:16, the same shape as a phone held upright. At full HD that's 1080 pixels wide by 1920 pixels tall.

If you're not sure what size a different ratio works out to, our aspect ratio calculator will do the maths.

What YouTube says about Shorts

YouTube is the one platform whose official specs we could confirm for this guide (checked 30 October 2026):

  • Length: YouTube's Shorts help page says you can upload Shorts "Up to 3 minutes."
  • Shape: the same page says Shorts are videos "With a square or vertical aspect ratio."
  • Resolution: a separate help page says: "You can upload Short videos with a maximum resolution of 1080p."

For the encoding itself, YouTube's recommended upload settings page applies to uploads in general:

SettingYouTube's recommendation
ContainerMP4
Video codecH.264
Audio codecAAC-LC, Opus or Eclipsa Audio
Audio sample rate48 kHz
Frame rateThe same frame rate the video was recorded in
Bitrate, 1080p SDR8 Mbps at 24–30 fps; 12 Mbps at 48–60 fps
Table of YouTube Shorts specifications: up to 3 minutes, square or vertical, up to 1080p, MP4 with H.264 and AAC

For a deeper look at quality settings, see CRF vs bitrate. Our YouTube upload guide covers the rest of the upload process.

What about Instagram Reels and TikTok?

Both platforms are built around vertical video, but their limits (maximum length, file size and so on) change from time to time, and we couldn't confirm the current figures from their official help pages for this guide. Rather than repeat numbers we can't source, here's the safe approach:

  • Export at 9:16, 1080 × 1920, as an MP4 with H.264 video and AAC audio. That's a widely used combination and matches YouTube's recommendations above.
  • Before you upload, check the upload screen in the app and the platform's own help centre for the current length and size limits.
  • Keep important text and faces away from the very top and bottom of the frame, where app buttons and captions are drawn over the video.

Turning horizontal video vertical with FFmpeg

There are three common ways to fit a 16:9 clip into a 9:16 frame. We tested each command below with FFmpeg 8.1.2 on a 10-second, 1920 × 1080, 30 fps test clip with AAC audio. Every command finished without errors, and we checked each output with ffprobe: 1080 × 1920, square pixels, 9:16 display ratio, 30 fps, audio unchanged.

The file sizes in each section are from our test clip only. Real footage will be different. If you're new to FFmpeg filters, our FFmpeg filter guide explains how -vf and -filter_complex work.

Diagram of a 16:9 frame converted to 9:16 three ways: centre crop, black bars and a blurred background

Option 1: Crop the centre

This cuts a vertical slice out of the middle of the frame and scales it to full size. It fills the screen, but anything at the left and right edges is lost.

ffmpeg -i input.mp4 -vf "crop=ih*9/16:ih,scale=1080:1920,setsar=1" -c:v libx264 -crf 20 -preset medium -c:a copy vertical_crop.mp4
  • crop=ih*9/16:ih takes a 9:16 slice using the full height (from a 1080-pixel-tall clip, about 607 pixels wide, centred).
  • scale=1080:1920 scales the slice up to 1080 × 1920.
  • setsar=1 makes the pixels square (see the pitfall below).
  • -c:a copy keeps the original audio without re-encoding it.

Best for: talking heads and clips where the action stays in the middle. Our test output was 4.1 MB.

Option 2: Fit the whole frame with bars

This keeps the full horizontal picture and adds black bars above and below.

ffmpeg -i input.mp4 -vf "scale=1080:-2,pad=1080:1920:(ow-iw)/2:(oh-ih)/2:black,setsar=1" -c:v libx264 -crf 20 -preset medium -c:a copy vertical_pad.mp4
  • scale=1080:-2 makes the video 1080 pixels wide and works out the height automatically (608 pixels for our test clip), keeping it an even number.
  • pad=1080:1920:(ow-iw)/2:(oh-ih)/2:black places it in the middle of a 1080 × 1920 black frame.

Best for: screen recordings and wide shots where nothing can be cut off. The picture is small, though: on our test clip it filled only 608 of the 1,920 pixels of height. Test output: 2.1 MB.

Option 3: Fit the frame over a blurred background

This is the same idea as Option 2, but instead of black bars, the background is a blurred, zoomed-in copy of the same video.

ffmpeg -i input.mp4 -filter_complex "[0:v]split=2[bg][fg];[bg]scale=1080:1920:force_original_aspect_ratio=increase,crop=1080:1920,boxblur=20:2[bgb];[fg]scale=1080:-2[fgs];[bgb][fgs]overlay=(W-w)/2:(H-h)/2,setsar=1" -c:v libx264 -crf 20 -preset medium -c:a copy vertical_blur.mp4
  • split=2[bg][fg] makes two copies of the video.
  • The background copy is scaled up to cover 1080 × 1920, cropped to fit, then blurred with boxblur=20:2.
  • The foreground copy is scaled to 1080 wide, as in Option 2.
  • overlay=(W-w)/2:(H-h)/2 places the sharp copy in the centre of the blurred one.

Best for: when you want the full frame but bars look too plain. Test output: 2.6 MB.

How to check your output

Run ffprobe on the file you made:

ffprobe -v error -select_streams v:0 -show_entries stream=width,height,sample_aspect_ratio,display_aspect_ratio,r_frame_rate -of default=noprint_wrappers=1 vertical_crop.mp4

You want to see width=1080, height=1920, sample_aspect_ratio=1:1 and display_aspect_ratio=9:16.

The pitfall: forgetting setsar=1

This is the mistake we'd most like you to avoid, because it's easy to miss. The commands above all end with setsar=1. Here's what happened in our test when we left it off:

  • Options 1 and 2 still produced 1080 × 1920 files, but ffprobe reported a display ratio of 76:135 instead of 9:16.
  • Option 3 reported a display ratio of 1920:3413.

The pixel count is right, but the file says its pixels aren't square, so a player can show the video slightly stretched. Adding setsar=1 at the end of the filter chain sets square pixels, and all three outputs then reported 9:16.

Other things to get right

  • Keep the original frame rate. YouTube recommends uploading at the same frame rate the video was recorded in. The commands above don't change it.
  • Don't upscale too far. Cropping a 1080p clip to vertical (Option 1) means scaling a slice about 607 pixels wide up to 1080. If you can, record in 4K or record vertically in the first place.
  • Check the result on a phone. Play the exported file on a phone before uploading to see what viewers will see.

FAQ

What resolution should a vertical video be?

9:16 at 1080 × 1920 is the usual full-HD choice. YouTube says Shorts can be uploaded at a maximum of 1080p.

How long can a YouTube Short be?

YouTube's help page says Shorts can be up to 3 minutes, with a square or vertical aspect ratio (checked 30 October 2026).

What are the Reels and TikTok video specs?

Check the upload screen in each app and the platform's official help centre, since limits change. A 9:16, 1080 × 1920 MP4 with H.264 video and AAC audio is a widely used starting point.

How do I convert a horizontal video to vertical with FFmpeg?

Crop the centre, fit the whole frame with bars, or fit it over a blurred copy of itself. The three tested commands are above. End the filter chain with setsar=1 and check the output with ffprobe.

Why does my vertical video look stretched?

A common cause is a non-square pixel (SAR) setting in the file. Check it with ffprobe; if sample_aspect_ratio isn't 1:1, add setsar=1 to your filter chain and export again.

Sources

SourceURLChecked
YouTube Help, Get started with YouTube Shortshttps://support.google.com/youtube/answer/1277964920261030
YouTube Help, Shorts upload (maximum 1080p)https://support.google.com/youtube/answer/1005907020261030
YouTube Help, Recommended upload encoding settingshttps://support.google.com/youtube/answer/172217120261030
FFmpeg commands and ffprobe checks: our own test (FFmpeg 8.1.2)—20261030

Related tools and guides