Instagram Video Requirements in 2026
Instagram supports several video placements, each with specific dimension, duration, and file size requirements. Uploading at the exact recommended resolution avoids Instagram's automatic cropping and re-scaling, which degrades quality. Here is a complete reference:
| Placement | Aspect Ratio | Resolution | Max Duration | Max File Size |
|---|---|---|---|---|
| Feed (Square) | 1:1 | 1080 × 1080 | 60 minutes | 4 GB |
| Feed (Portrait 4:5) | 4:5 | 1080 × 1350 | 60 minutes | 4 GB |
| Feed (Portrait 3:4) | 3:4 | 1080 × 1440 | 60 minutes | 4 GB |
| Feed (Landscape) | 1.91:1 | 1080 × 566 | 60 minutes | 4 GB |
| Reels | 9:16 | 1080 × 1920 | 3 minutes | 4 GB |
| Stories | 9:16 | 1080 × 1920 | 60 seconds per clip | 4 GB |
Format requirement: Instagram accepts MP4 and MOV. The recommended spec is MP4 with H.264 video and AAC audio at 128 kbps or higher. Use 30fps frame rate and YUV 4:2:0 color space (pix_fmt yuv420p) for maximum compatibility.
Which aspect ratio should you use? For Feed posts, 4:5 portrait (1080×1350) takes up the most screen space on mobile and consistently outperforms square and landscape in engagement. Instagram also introduced the 3:4 (1080×1440) format with its new tall grid layout. For Reels and Stories, use 9:16 vertical (1080×1920) — this is the full-screen format that Instagram prioritizes in its algorithm.
Method 1: Resize Online with Convertio
The fastest way to resize video for Instagram — no software installation needed. Our Resize Video tool handles the resolution change and re-encodes to Instagram-compatible MP4 automatically.
- Upload your video — drag and drop or click to browse. Supports MP4, MOV, MKV, AVI, WebM, and more (up to 100 MB).
- Choose resolution — select one of the Instagram presets above (e.g., 1080×1920 for Reels, 1080×1350 for Feed portrait) or enter custom dimensions.
- Download — click Resize Video and download the resized MP4. Upload it directly to Instagram.
The output is always MP4 with H.264 + AAC — exactly what Instagram expects. No additional conversion needed.
Method 2: Instagram Built-in Cropping
Instagram's app has a basic crop tool, but it comes with limitations:
- Pinch to zoom/crop — you can reposition the frame when uploading, but you cannot change the aspect ratio precisely. Instagram snaps to 1:1, 4:5, or 1.91:1 for Feed and forces 9:16 for Reels and Stories.
- No resolution control — Instagram downscales your video to 1080 px width regardless. If your source is lower resolution, it upscales (which looks blurry).
- Re-encoding twice — if your video is the wrong size, Instagram first resizes it, then compresses it. That is two quality-reducing passes. Resizing before upload means Instagram only compresses once.
When to use it: Only when your video is already close to the target aspect ratio and you just need a minor crop adjustment. For anything else, resize before uploading.
Method 3: Resize with FFmpeg
FFmpeg gives you full control over resolution, cropping, and padding. Here are ready-to-use commands for each Instagram placement.
Reels / Stories (9:16 vertical from landscape source)
This command center-crops a landscape video to vertical 9:16 and scales to 1080×1920:
ffmpeg -i input.mp4 -vf "crop=ih*9/16:ih,scale=1080:1920" \
-c:v libx264 -crf 20 -preset slow -pix_fmt yuv420p \
-c:a aac -b:a 192k -r 30 -movflags +faststart reel.mp4
The crop=ih*9/16:ih filter calculates the crop width based on the input height, ensuring a 9:16 ratio regardless of the source resolution. The center of the frame is kept by default.
Feed Portrait (4:5 from landscape source)
Crops and scales to 1080×1350 for the highest-engagement Feed format:
ffmpeg -i input.mp4 -vf "crop=ih*4/5:ih,scale=1080:1350" \
-c:v libx264 -crf 20 -preset slow -pix_fmt yuv420p \
-c:a aac -b:a 192k -r 30 -movflags +faststart feed_portrait.mp4
Feed Square (1:1)
Center-crops to a perfect square and scales to 1080×1080:
ffmpeg -i input.mp4 -vf "crop=min(iw\,ih):min(iw\,ih),scale=1080:1080" \
-c:v libx264 -crf 20 -preset slow -pix_fmt yuv420p \
-c:a aac -b:a 192k -r 30 -movflags +faststart feed_square.mp4
Letterbox (add black bars instead of cropping)
If you do not want to lose any part of the frame, you can pad with black bars instead. This command fits a landscape video into a 9:16 frame:
ffmpeg -i input.mp4 -vf "scale=1080:-2,pad=1080:1920:(ow-iw)/2:(oh-ih)/2:black" \
-c:v libx264 -crf 20 -preset slow -pix_fmt yuv420p \
-c:a aac -b:a 192k -r 30 -movflags +faststart reel_letterbox.mp4
The scale=1080:-2 scales width to 1080 and calculates height automatically (keeping aspect ratio). The pad filter then adds black bars to fill the 1080×1920 frame, centering the video.
Instagram Aspect Ratio Guide
Choosing the right aspect ratio is the most important step when resizing for Instagram. Here is a comparison to help you decide:
| Aspect Ratio | Resolution | Best For | Engagement |
|---|---|---|---|
| 9:16 vertical | 1080 × 1920 | Reels, Stories | Highest (full screen) |
| 4:5 portrait | 1080 × 1350 | Feed posts, Carousel | High (max Feed space) |
| 3:4 portrait | 1080 × 1440 | Feed posts (new grid) | High (new default grid) |
| 1:1 square | 1080 × 1080 | Feed posts, Carousel | Medium |
| 1.91:1 landscape | 1080 × 566 | Feed posts | Lowest (letterboxed on mobile) |
Why 4:5 and 9:16 win: Instagram is a mobile-first platform. Over 95% of users access it on phones held vertically. Vertical and portrait formats fill more of the screen, which means more attention and higher engagement. Landscape video wastes over 40% of the screen space on mobile because Instagram adds black bars above and below.
Tips to Minimize Quality Loss
Instagram re-encodes every uploaded video. You cannot avoid this, but you can minimize the damage:
- Match the exact resolution. Uploading at 1080×1920 for Reels means Instagram only compresses — it does not resize. Mismatched dimensions cause an additional scaling step before compression, reducing quality further.
- Use CRF 18–20 (lower = higher quality). Instagram re-encodes at a fixed bitrate, so the better your source, the more detail survives their compression pass. CRF 20 is a good balance between quality and file size.
- Keep file size under 4 GB. If your file exceeds the limit, Instagram rejects it silently or compresses it even more aggressively. The maximum is 4 GB for all video types.
- Use 30fps. Instagram displays most content at 30fps. Uploading at 60fps doubles the data with no visible benefit for typical content, and the extra data may be discarded during re-encoding.
- Add
-movflags +faststartto your FFmpeg command. This moves the MP4 metadata to the beginning of the file, enabling faster upload processing on Instagram's servers.