Meta sells one campaign across Facebook, Instagram, Messenger and the Audience Network. The placement list runs to dozens of entries, which makes the spec sheet look far more complicated than it is. In practice you are designing for four canvases. Everything else is derived from them, and once you have those four, every placement in the system has a native asset.
This guide covers all of them — the Instagram surfaces and the Facebook surfaces together, because they share one renderer and one set of rules. Treating them as separate spec sheets is the most common reason teams end up with half their placements running auto-cropped assets.
The four canvases
| Canvas | Ratio | Recommended size | Where it runs |
|---|---|---|---|
| Feed square | 1:1 | 1080 × 1080 px | IG Feed, FB Feed, Explore, Messenger inbox |
| Feed portrait | 4:5 | 1080 × 1350 px | IG Feed, FB Feed — mobile-optimised |
| Story / Reels | 9:16 | 1080 × 1920 px | IG + FB Stories, Reels, full-screen interstitials |
| Link landscape | 1.91:1 | 1200 × 628 px | Link ads, Right Column, Audience Network native |
Meta accepts larger uploads and normalises everything down to these render sizes. Supplying assets at exactly these dimensions means the file is re-encoded once instead of being scaled andre-encoded, which is the single biggest lever on how crisp your ad text looks in the feed.
Feed: why 4:5 usually beats 1:1
The square is the safe default and the one most teams ship first. But on a phone, a 4:5 creative occupies roughly 25% more vertical screen than a 1:1 at the same width. In a scrolling feed, screen height is attention: the taller asset stays in view longer and pushes competing posts further down.
The cost is that 4:5 is a worse starting point for nothing — it converts cleanly to 1:1 (crop the top and bottom margins) and reasonably to 9:16, whereas a square master has less vertical material to work with when you need a full-screen asset. If you only have budget to design one master, design it at 4:5.
Stories and Reels: the overlay map
The 9:16 canvas is 1080 × 1920, and it is the placement where creatives most often break — not because the ratio is hard, but because Meta draws its own interface on top of your pixels. On a Stories placement, keep text and logos clear of roughly the top 250 px (profile ring, timestamp, progress bars) and the bottom 340 px (CTA button, reply field, swipe affordance).
Reels reserves less at the top but more at the bottom, and adds a right-hand rail of roughly 120 px for like / comment / share / audio controls, plus a caption block in the bottom-left quadrant. The practical consequence is that a Reels-safe design has to sit further left than a Stories-safe one.
| Surface | Top clearance | Bottom clearance | Side clearance |
|---|---|---|---|
| Instagram Stories | ~250 px | ~340 px | minimal |
| Instagram / Facebook Reels | ~180 px | ~420 px | right ~120 px |
| Facebook Stories | ~250 px | ~340 px | "Sponsored" tag top-left |
These are minimum clearances, not exact borders — they shift with device aspect ratio, OS font size and app version. Treat them as the floor and you will not be caught out by a release.
The ratio-tolerance trap
Meta will accept anything from 9:16 to 16:9 in the feed and auto-crop it to fit. This tolerance is the single most expensive feature in the system, because the auto-crop is centre-weighted and entirely ignorant of your composition. It does not know your product is left of centre or that your price badge is anchored to the right edge.
Ship exact-ratio exports for each canvas and the auto-crop never runs. This is not a marginal quality argument — a centre crop of a wide creative routinely amputates the exact elements the ad was built around.

SOURCE · 1:1

REFORMATTED · 16:9
Surviving Meta's compression
Every upload is re-encoded. To keep text legible after that pass:
Export at exactly the render size rather than uploading a 4000 px master. Use JPG at quality 85 or above for photographic creatives, and PNG only for flat graphics with hard edges. Avoid thin fonts below about 28 px at 1080 width — the encoder's chroma subsampling degrades thin coloured strokes first, which is why cyan or magenta hairline type looks muddy while white text of the same weight survives intact.
Text density: the rule that replaced the 20% rule
Meta removed the hard 20%-text-area rejection years ago, but text-heavy creatives still lose auction delivery. The workable 2026 discipline is one headline, one supporting line, one CTA. Anything beyond that belongs in the caption, where it costs you nothing and is fully searchable.
Messenger and Audience Network: the placements nobody designs for
Meta's placement list includes surfaces most teams never look at — Messenger inbox ads, Audience Network native slots, in-article placements on third-party apps. They are usually left on by default and rarely reviewed, which means whatever asset the system picks for them is running unexamined.
These placements reuse the square and landscape canvases, so supplying those two well is enough to serve them properly. The failure mode is not missing assets but unreviewed ones: a creative designed for a full-bleed Instagram feed can look wrong in a Messenger inbox row, where it renders small and adjacent to conversation threads. If a meaningful share of your spend lands there, it is worth previewing before deciding whether to keep the placement enabled.
Placement coverage as a delivery lever
Attach 1:1, 4:5, 9:16 and 1.91:1 to the same ad set and Meta's delivery system selects the native canvas per placement. Campaigns with full coverage generally see lower CPMs than campaigns running a single asset everywhere, because the system stops paying the quality penalty for auto-cropped placements. Coverage is usually a cheaper win than another round of creative iteration.
Meta formats AutoAdfit exports
Instagram and Facebook creatives both run through the Meta Ads format set:
| Placement | Aspect ratio | Recommended size | AutoAdfit plan |
|---|---|---|---|
| Square | 1:1 | 1080 × 1080 px | Free & Pro |
| Portrait | 4:5 | 1080 × 1350 px | Free & Pro |
| Story | 9:16 | 1080 × 1920 px | Pro |
| Landscape | 1.91:1 | 1200 × 628 px | Pro |