16:9 vs 21:9
16:9 is 1.778:1, 21:9 is 2.333:1. Below are both frames at the same width and same height so you can see which is wider, how much letterboxing or pillarboxing each needs inside the other, and which to master for.
16:9 calculator -> · 21:9 calculator ->
Visual - same width (1920px)
16:9 - 1920x1080 - padding-top 56.25%
Scaled preview - 100.0% of max height at this width
21:9 - 1920x823 - padding-top 42.86%
Scaled preview - 76.2% of max height at this width
At 1920 wide the height difference is 257px. Fitting the shorter inside the taller at this width leaves 128.5px bars top and bottom (letterbox). Fitting the taller inside the shorter leaves pillar bars on sides.
Same width table (1920px)
| Ratio | Height | Pair | Bar if fitted |
|---|---|---|---|
| 16:9 | 1080px | 1920x1080 | reference |
| 21:9 | 823px | 1920x823 | 257px total (129 top/bottom) |
Visual - same height (1080px)
16:9
16:9 76.2% of max width
21:9
21:9 100.0% of max width
Same height table (1080px)
| Ratio | Width | Pair |
|---|---|---|
| 16:9 | 1920px | 1920x1080 |
| 21:9 | 2520px | 2520x1080 |
At 1080 tall the width difference is 600px - that is the pillarbox when fitting the narrower inside the wider at this height.
CSS to hold either frame
16:9:
.frame-a { aspect-ratio: 16 / 9; }
.frame-a img { object-fit: cover; } /* or contain to letterbox */ 21:9:
.frame-b { aspect-ratio: 21 / 9; }
.frame-b img { object-fit: cover; } Use object-fit: contain to preserve both frames with bars, cover to fill and crop.
When to use which
- 16:9 - use for 16:9 native content and displays. Master at 1920x1080 scaled variant.
- 21:9 - use for 21:9 native. Master at 1920x823.
- If you must show both in the same player, letterbox/pillar to the larger frame - never stretch.
Other comparisons
Calculator -> · What ratio is 1920x1080? ->