Instagram Reels cover photo spec and crop
Instagram caps Reels covers at 8MB and centre-crops anything not supplied at 9:16. Here is the crop arithmetic and a cover template that survives it.
Two numbers govern every Reels cover, and only one of them is the one people check. Instagram's Graph API Reel specifications put the cover photo ceiling at 8MB (JPEG, sRGB), recommend 9:16, and state that a cover not supplied at 9:16 is cropped to the middle-most 9:16 rectangle. Share that Reel to Feed and the same file is cropped again, this time to the middle-most 1:1 square.
The 8MB cap announces itself — the upload fails or the file gets rejected and you go and re-export. The centre crop does not announce anything. It takes your carefully placed headline, removes the left and right thirds of it, and shows you the result as though that was what you designed.
The consumer Help Center article on Reel size and aspect ratios still recommends 420 x 654 (about 1:1.55) and says you cannot edit the cover after upload. Treat that as a consumer-facing recommendation, not as a replacement for the ingest spec. Design to the Graph API crop, then check the result on a phone.
The crop is centre-anchored, and centre is not where designers put things
The Reels-tab rule is mechanically simple. Instagram takes the tallest 9:16 rectangle it can fit inside your image, anchors it in the middle, and discards what falls outside. Nothing clever, nothing content-aware.
Here is what that removes from the ratios people actually hand it:
| Cover supplied as | Pixels | Centre 9:16 kept | Width lost |
|---|---|---|---|
| 9:16 | 1080 x 1920 | 1080 x 1920 | none |
| 3:4 | 1080 x 1440 | 810 x 1440 | 25% |
| 4:5 | 1080 x 1350 | 759 x 1350 | ~30% |
| 1:1 | 1080 x 1080 | 608 x 1080 | ~44% |
| 16:9 | 1920 x 1080 | 608 x 1080 | ~68% |
The 1:1 row causes most of the damage, because a square is the default canvas in most design tools and feels like a safe neutral choice for a social image. It is not neutral here. A square cover loses close to half its width, and design convention puts a lot near the left edge — a logo, the start of a headline, a name.
The 16:9 row is worse in magnitude and rarer in practice. It happens when a still gets pulled from a horizontal source and used as-is.
A correctly sized 9:16 cover is not done. Shared to Feed, the same spec crops to a centred 1:1 square — on 1080 x 1920 that is a 1080 x 1080 window starting 420px from the top. Headlines parked at the extreme top or bottom of a tall cover vanish on the profile grid even when they look perfect in the Reels player. The aspect ratio definition covers the arithmetic.
What that specifically destroys: left-aligned headline text on a square (the first characters go first, which reads as a typo); a brand mark parked bottom-left or top-right; and rule-of-thirds framing, which is the one composition centre-cropping is guaranteed to wreck. A face a third from the left on a square ends up half out of frame. On a 9:16 cover, a face in the top fifth disappears from the Feed square. The crop does not punish bad design. It punishes design that assumed a different frame.
The template
Build the cover at 1080 x 1920. That is the whole trick, and it removes the 9:16 crop from the equation rather than trying to survive it.
Everything else follows from that:
- Canvas: 1080 x 1920. Supplied at 9:16, so the Reels-tab crop has nothing to take.
- Text block: centred horizontally, inside a 608px-wide column. That is x = 236 to x = 844. You do not strictly need this if you are already at 9:16, and you absolutely need it the day someone in the team hands you a square version.
- Vertical placement: the middle 1080px. Keep the headline out of the top and bottom 420px so the Feed 1:1 crop still has it. The cover is shown at different sizes on different surfaces; the vertical extremes are the least predictable part of any tall frame.
- One line of text, four words or fewer. A cover is read at thumbnail scale. Any headline that needs a second line has already lost the argument.
- Contrast against the underlying image, not against your intentions. A dark scrim behind the text block, or a solid panel. Photographic backgrounds move; text over them at small sizes disappears in whichever region happens to be light.
- Export as JPEG at high quality. This is the 8MB half, below.
The same discipline that keeps captions clear of platform interface applies here in a different direction — safe zones is about the interface eating your frame, this is about the crop eating it before the interface gets a turn. Both end with the same instruction: verify on the finished file, not on the design.
The 8MB half
8MB is generous for a still image and easy to exceed by accident, which is a specific combination.
The usual culprit is PNG. A 1080 x 1920 PNG with a photographic background is storing a lossless encoding of a lot of noisy pixel data, and lossless plus photographic is exactly the case PNG is bad at. Flat graphic covers — solid panels, text, simple shapes — stay small in PNG comfortably. Photographic ones do not reliably. The Graph API asks for JPEG anyway.
JPEG at high quality is the safe container for a Reels cover. You are not going to see the difference at the size a cover renders, and the file lands nowhere near the ceiling.
The other quiet inflator is exporting at more than 1080 wide. A 4K cover is not a better cover, it is the same cover with a bigger file. 1080 x 1920 is the target; going above it buys nothing at the display sizes involved.
If your cover is a still from a low-resolution source and looks soft rather than heavy, that is the opposite problem. Frame quality is capped by the source video, so a soft still pulled from a 480p preview cannot be sharpened into a 1080p cover by wishing.
Two ways to make the cover, and when each is right
Pull a frame from the Reel. Best when the video contains a genuinely strong single moment and you want the cover to promise exactly what the video delivers. Generating a video thumbnail is the narrow version of frame extraction: pick a timestamp, ask for one frame, get an image URL back.
The catch is resolution. An extracted frame inherits the source video's resolution, so this path assumes you are pulling from the full-quality export rather than a preview.
Design the cover as an image. Best when the video's best frame is not a good still, which is most of the time for talking-head and screen-recording content. Generate the background from the text-to-image tool, or build the whole thing through the thumbnail generator.
A hybrid that works well: extract the frame, then use it as a reference for a generated background that has room for text where the frame did not. That keeps the promise honest and gives you a composition designed for a headline.
Get the spec right first. A perfectly persuasive cover with its headline cropped in half persuades nobody. If the cover belongs to a set meant to read as a group on a profile, that check happens at grid scale too — grid strategy for video brands covers how covers behave as a set.
Then look at the cover in the picker before you publish, at the size it renders, on a phone. Two minutes there catches the cropped logo, the headline that ran to two lines on a small screen, and the text sitting on a light patch of background.
FAQ
What happens if I upload a square cover anyway?
Instagram keeps the centre 9:16 rectangle and discards the rest, which for a 1080 x 1080 image means keeping a 608 x 1080 strip and losing roughly 44% of the width. Nothing is rescaled or letterboxed — the sides are simply gone. If your composition is centred and your text sits inside that middle column, a square cover survives the Reels-tab crop. If anything important is near an edge, it does not. Shared to Feed, a 9:16 cover is then cropped to a centred square, so top and bottom go next.
Is 8MB the limit for the cover or the video?
The 8MB figure in the Graph API Reel specifications is the cover photo cap (JPEG). The video file is governed by a separate container, codec, frame rate, bitrate and duration envelope in the same document.
Can I change the cover after publishing?
The Help Center size article currently says you cannot edit the cover after you have uploaded it. Treat the cover as a publish-time decision and get it right at upload.
Should the cover be a frame from the video or a designed image?
Frame extraction if the video has one genuinely strong still and you want the cover to promise exactly what plays. Designed image if it does not, which is most talking-head and screen-capture content. The tiebreaker is whether the best frame has empty space for a headline — most action frames do not, and text pasted over a busy frame at thumbnail size is unreadable regardless of how good the frame is.