X Xerobit

Aspect Ratio in Photography and Video — 4:3, 16:9, 1:1, 2.39:1

Common aspect ratios in photography and video: 4:3 for traditional cameras, 16:9 for widescreen, 1:1 for Instagram, 2.39:1 for cinema. Learn what each ratio means and how to...

Mian Ali Khalid · · 4 min read
Use the tool
Aspect Ratio Calculator
Calculate aspect ratios (16:9, 4:3, 21:9, etc.). Given W:H and one dimension, get the other. Responsive padding-top % for CSS aspect-ratio containers.
Open Aspect Ratio Calculator →

Aspect ratio is the proportional relationship between an image’s width and height. Understanding common ratios helps when cropping photos, exporting for specific platforms, or designing for different screens.

Use the Aspect Ratio Calculator to calculate dimensions for any ratio.

Common photography aspect ratios

3:2 — the standard camera ratio

Most DSLRs and mirrorless cameras capture at 3:2, inherited from 35mm film:

3:2 examples:
- 3000 × 2000 px
- 6000 × 4000 px (24MP)
- 4:6 inch print
- Ideal crop: landscape

4:3 — compact cameras and micro 4/3

4:3 examples:
- 4032 × 3024 px (iPhone sensor)
- 2048 × 1536 px
- Traditional 4×6 print (slightly cropped)
- iPad screen ratio

1:1 — square

1:1 examples:
- Instagram square post
- Facebook profile photo
- 1000 × 1000 px

16:9 — widescreen and video

16:9 examples:
- 1920 × 1080 px (1080p)
- 3840 × 2160 px (4K)
- YouTube thumbnails
- Most modern monitors

9:16 — vertical video / stories

9:16 examples:
- 1080 × 1920 px
- Instagram/TikTok Stories
- YouTube Shorts
- Portrait smartphone video

Cinema aspect ratios

RatioNameUse case
1.33:1 (4:3)AcademyClassic Hollywood films
1.78:1 (16:9)HDTVModern TV, streaming
1.85:1FlatMost Hollywood films today
2.39:1Anamorphic scopeBlockbusters (Christopher Nolan, etc.)
2.35:1CinemaScopeOlder widescreen films

Platform-specific requirements

Instagram:
- Square: 1:1 (1080×1080)
- Portrait: 4:5 (1080×1350) — maximum allowed
- Landscape: 1.91:1 (1080×566)
- Stories/Reels: 9:16 (1080×1920)

YouTube:
- Standard: 16:9 (1280×720 minimum)
- Shorts: 9:16 (1080×1920)
- Thumbnail: 16:9 (1280×720)

Twitter/X:
- In-stream photo: 2:1 to 1:1 (16:9 recommended)
- Header: 3:1 (1500×500)

Facebook:
- Timeline photo: 1.91:1
- Stories: 9:16

LinkedIn:
- Shared image: 1.91:1 (1200×628)
- Profile photo: 1:1

Calculating dimensions from ratio

function getDimensions(ratio, knownDimension, knownValue) {
  const [w, h] = ratio.split(':').map(Number);
  
  if (knownDimension === 'width') {
    return {
      width: knownValue,
      height: Math.round(knownValue * (h / w)),
    };
  } else {
    return {
      width: Math.round(knownValue * (w / h)),
      height: knownValue,
    };
  }
}

// Get height for 16:9 image that's 1920px wide:
getDimensions('16:9', 'width', 1920)
// { width: 1920, height: 1080 }

// Get width for 4:5 image that's 1350px tall:
getDimensions('4:5', 'height', 1350)
// { width: 1080, height: 1350 }

Cropping to a target ratio (Python/Pillow)

from PIL import Image

def crop_to_ratio(image_path: str, target_width: int, target_height: int) -> Image.Image:
    """Center-crop image to a specific aspect ratio."""
    img = Image.open(image_path)
    orig_w, orig_h = img.size
    
    target_ratio = target_width / target_height
    orig_ratio = orig_w / orig_h
    
    if orig_ratio > target_ratio:
        # Image is wider than target — crop sides
        new_w = int(orig_h * target_ratio)
        left = (orig_w - new_w) // 2
        img = img.crop((left, 0, left + new_w, orig_h))
    else:
        # Image is taller than target — crop top/bottom
        new_h = int(orig_w / target_ratio)
        top = (orig_h - new_h) // 2
        img = img.crop((0, top, orig_w, top + new_h))
    
    return img.resize((target_width, target_height), Image.LANCZOS)

# Crop to Instagram square (1:1):
result = crop_to_ratio('photo.jpg', 1080, 1080)
result.save('photo_square.jpg')

# Crop to Instagram portrait (4:5):
result = crop_to_ratio('photo.jpg', 1080, 1350)
result.save('photo_portrait.jpg')

CSS: display image at specific ratio

/* Display any image at 16:9: */
.video-container {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.video-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;  /* Crop to fill, maintain ratio */
}

/* object-fit options:
   cover   → fills container, crops excess (most common)
   contain → shows full image, letterbox if needed
   fill    → stretches to fill (distorts)
   none    → original size, crop excess */

Related posts

Related tool

Aspect Ratio Calculator

Calculate aspect ratios (16:9, 4:3, 21:9, etc.). Given W:H and one dimension, get the other. Responsive padding-top % for CSS aspect-ratio containers.

Written by Mian Ali Khalid. Part of the Frontend & Design pillar.