Design on a 1080 x 1920 frame and keep text out of the top and bottom bands and away from the right-hand action rail. With every mask enabled, the rectangle that survives all four device presets on both Reels and Stories is about 367 x 1223 px at x 356, y 275 — a narrow middle column, because the Stories tap thirds count. Turn those off and it widens to about 821 x 1223 px from x 108. These insets are measured approximations, not published Meta values.
What a safe zone actually is
Your Reel or Story is not displayed in a clean rectangle. It is displayed underneath Instagram’s interface. The video fills the screen edge to edge, and the app paints on top of it: a status bar and clock, a username and audio strip, the like, comment, share and menu buttons down the right edge, the caption, a call-to-action button, progress bars, a reply field. Everything under those elements is hidden or unreadable.
So a safe zone is not a technical constraint like an aspect ratio — nothing gets cropped. It is a layout constraint: a map of where the chrome sits, so you can put your words somewhere else. This tool draws that map over your own frame across Reels, Stories and the 4:5 feed post side by side.
Why the surfaces differ
Reels and Stories share the same 9:16 canvas and almost nothing else. Reels put a column of action buttons down the right edge and a deep caption block across the bottom, because a Reel is content people react to. Stories put progress bars and a header across the top and a reply field along the bottom, because a Story is a sequence people tap through. The feed is different again — a 4:5 post at 1080 x 1350 with almost no chrome, but a guaranteed loss to the square grid thumbnail. Post the same asset everywhere and your text has to clear the union of all three.
Measured insets on the standard preset
| Surface | Interface element | Region (% of frame) | Pixels |
|---|---|---|---|
| Reels | Status bar and top row | Top 7% of the height | y 0 to 134 |
| Reels | Caption, audio strip and CTA | Bottom 20% of the height | y 1536 to 1920 |
| Reels | Action rail (like, comment, share, menu) | Right 14% wide, from 20% to 82% down | x 929 to 1080, y 384 to 1574 |
| Reels | Profile row on the left edge | Left 10% wide, bottom 34% tall | x 0 to 108, y 1267 to 1920 |
| Stories | Progress bars and header | Top 11% of the height | y 0 to 211 |
| Stories | Reply bar | Bottom 13% of the height | y 1670 to 1920 |
| Stories | Tap-back dead zone (left third) | Left 33% wide, 11% to 87% down | x 0 to 356, y 211 to 1670 |
| Stories | Tap-forward dead zone (right third) | Right 33% wide, 11% to 87% down | x 724 to 1080, y 211 to 1670 |
| Feed 4:5 | Lost to the 1:1 grid thumbnail, top — exact | Top 10% of the height | y 0 to 135 |
| Feed 4:5 | Lost to the 1:1 grid thumbnail, bottom — exact | Bottom 10% of the height | y 1215 to 1350 |
| Feed 4:5 | Carousel counter chip | x 63% to 98%, y 2% to 9% | x 680 to 1058, y 27 to 122 |
| Feed 4:5 | Product or people tag icon | Left 14% wide, bottom 14% tall | x 0 to 151, y 1161 to 1350 |
The 9:16 rows are at 1080 x 1920, the feed rows at 1080 x 1350. Only the two bands marked exact are geometric certainties: a 4:5 image is 1080 x 1350, its square grid thumbnail 1080 x 1080, and the leftover 270 px is exactly 10% off the top and 10% off the bottom. Everything else is measured from the app and rounded.
The two Stories thirds are a different kind of obstruction. Nothing is drawn over them — they are gesture targets. A tap on the left third jumps back, a tap on the right jumps forward. Content there is perfectly visible; it just cannot be tapped. Never put a link sticker, a poll, a question box or a “tap here” prompt inside a tap third. If your frame carries nothing interactive, switching those two masks off is legitimate and roughly doubles the width of your safe box.
Device presets: the same layout on four screen shapes
Instagram’s chrome does not sit at fixed proportions. A taller phone with a Dynamic Island pushes the top row down and the caption block up; an older 16:9 phone and a tablet give the bands proportionally less room. The device selector applies a multiplier to each edge-anchored mask so you can see the same design under four representative shapes.
| Preset | Reels top | Reels bottom | Reels rail width | Stories top | Stories bottom |
|---|---|---|---|---|---|
| Tall phone, notch or Dynamic Island | 9.1% | 22.0% | 14.0% | 14.3% | 14.3% |
| Standard modern phone (default) | 7.0% | 20.0% | 14.0% | 11.0% | 13.0% |
| Older 16:9 phone | 5.6% | 18.4% | 13.4% | 8.8% | 12.0% |
| Tablet or large screen | 4.9% | 16.8% | 12.0% | 7.7% | 10.9% |
Every one of those figures is an approximation and the tool labels each preset that way. The Stories tap thirds do not scale — a third is a third on any screen. Read the table as a range: the top band is somewhere between roughly 5% and 14% of the height depending on the phone in your reader’s hand, which is why the advice is always to leave a visible margin rather than hugging an edge.
Worst-case mode
Worst-case mode unions every enabled mask across all four presets, shrinks the frame to the largest rectangle that misses all of them, and intersects that across every surface switched on. The result is drawn as a green dashed rectangle on each preview, with pixel coordinates, percentage dimensions and share of the frame underneath.
With everything enabled — Reels, Stories and Feed, every mask on — the surviving rectangle is about 367 x 1223 px at x 356, y 275, roughly 22% of the frame. That is narrow, and the reason is entirely the Stories tap thirds: they claim two-thirds of the width between them and leave only the middle column. Turn those two masks off, because your frame has nothing tappable in it, and the same calculation returns about 821 x 1223 px from x 108 — just under half the frame. Both answers are correct; they answer different questions.
Next to the toggle is a snap button that moves the box you are editing to exactly that rectangle. A mask sitting away from every screen edge cannot be excluded by any rectangle, so those are listed separately underneath rather than silently folded in.
Pessimistic on purpose, still not a guarantee
The worst-case rectangle stretches every mask to its largest size across all four presets before shrinking the frame, so text inside it should survive a notch, a short phone and a tablet. But it is built from approximations — a margin of safety rather than a promise. The only exact figures on this page are the two 10% feed bands, and they are exact because they are arithmetic on your own image, not a guess about Instagram’s interface.
Six boxes, opacity and the composite export
Real title cards are not one rectangle: there is a headline, a subtitle, a call to action, a logo, sometimes a sticker. The tool holds up to six independently positioned boxes, each with its own name and colour, each judged separately. The breakdown gives every box a PASS or FAIL per surface and names each element it collides with, with the percentage of the box covered. A 6% overlap on the caption block is a nudge; 60% means start again.
The overlay opacity slider runs from 5% to 85%, defaulting to 34%. Turn it down to judge the artwork underneath; turn it up when presenting the check to someone else.
That second case is what the composite export is for. Pick a surface and the tool renders your own frame at that surface’s full size with the masks, their labels, your box outlines, each box’s verdict and the worst-case rectangle burned into the pixels, plus a footer naming the device preset and stating that the insets are approximations. It is the file to hand a designer or a client so everyone is arguing about the same margins. The separate template PNG is the clean version: 1080 x 1920, a faint 10-column by 20-row guide grid, centre lines, every Reels and Stories mask labelled, and the worst-case box in green. Drop it on a locked top layer, design underneath, hide it before export.
Designing so this never becomes a problem
The pattern that survives every layout change is the one that works in print: keep the message in the optical centre and let the edges be texture. A text block between roughly 15% and 65% of the frame height, horizontally centred, with generous padding. It means not running a caption along the very bottom, where the Reels caption block and the Stories reply bar both live, and not tucking a logo into the bottom-left corner, where the Reels profile row sits.
Design once for the tighter layout: a frame that passes the combined check cross-posts without re-laying out, while a Stories-only design gets the Reels action rail straight through the right of its text. Set the type larger than feels necessary — the frame is 1080 px wide in your design tool and roughly 400 to 500 points wide in the hand. Caption length matters too, since a long caption pushes the Reels bottom block higher; the captions guide covers where captions truncate.
The honest limits
These insets are approximations, not official Meta values. Meta does not publish a safe-zone specification for organic Reels and Stories. The numbers here are measured from the app’s behaviour and rounded into clean proportional bands. They are a guide, not a guarantee. The one exception, stated again because it matters: the two 10% feed bands are exact.
They shift, and here is what shifts them. Device height and aspect ratio, notch or Dynamic Island size, caption length — a three-line Reel caption pushes the bottom block considerably higher, and an expanded caption more again — app version, language and the reader’s text-size settings. Instagram redesigns this interface regularly, and a button that was not there last quarter is a new mask.
Always check on a real phone before you publish. Put the asset in a draft, open it in the app on the device your audience actually uses, and look. That takes thirty seconds and is the only authoritative test. A tool drawing rectangles cannot know what your build of the app will render.
What the tool does not do. It does not read video — export a still frame from the moment your text appears. It does not render fonts or lay out your type; each box is a proxy for where your text will sit, so give it real dimensions rather than a guess. Sources are capped at 80 MB and roughly 80 megapixels. Pixel dimensions for every surface are in the sizes guide, and the analytics guide covers what is worth watching once the asset is live.
This runs in your browser
No sign-in, no Instagram password, no account connection. Images you open here are read by your own browser with the Canvas API from a local object URL. There is no upload endpoint on this site, so there is nowhere for the file to go. Open your browser’s network tab and watch: after the page loads, there are no further requests.
Frequently asked questions
What is the Instagram Reels safe zone?
On a 1080 x 1920 frame at the standard phone preset, keep text clear of roughly the top 7%, the bottom 20%, a 14%-wide action rail down the right edge between 20% and 82% of the height, and a 10%-wide profile strip bottom-left. These are measured approximations, not published values.
What is the Stories safe zone?
Clear the top 11% for progress bars and the header, and the bottom 13% for the reply bar. The left and right thirds between those bands are tap targets rather than covered pixels — visible, but anything interactive placed there gets tapped past.
Are these official Meta safe-zone numbers?
No. Meta does not publish a safe-zone specification for organic Reels and Stories. These insets are measured from the app’s observed layout and rounded to clean proportions. Treat them as a design guide and verify on a real device. The only exact figures here are the 10% bands a 4:5 post loses to its square grid thumbnail, which are arithmetic rather than observation.
What does worst-case mode calculate?
It stretches every enabled mask to its largest size across all four device presets, then finds the biggest rectangle that misses all of them on every surface switched on. With everything enabled it returns about 367 x 1223 px at x 356, y 275 — narrow, because the Stories tap thirds claim two-thirds of the width. Switch those off and it widens to about 821 x 1223 px from x 108.
Why do the device presets change the numbers?
Because the chrome does not sit at fixed proportions. A tall phone with a Dynamic Island pushes the Reels top band to about 9.1% and the bottom block to 22%, while a tablet brings them down to 4.9% and 16.8%. The presets are approximations of representative shapes, not device-specific measurements.
How many text boxes can I check at once?
Six. Each has its own name, position and size, and gets its own PASS or FAIL per surface with the offending elements named and the percentage of the box they cover. A snap button moves the selected box to the worst-case safe rectangle.
Why does the checker show a feed preview as well?
Because a 4:5 feed post loses an exact 10% band off the top and bottom to its square grid thumbnail, and carries a carousel counter chip and a product-tag icon. Those are layout constraints in the same sense as the Reels rail.
What is in the composite export?
Your own frame at the chosen surface’s full size, with the masks, their labels, every text box, its verdict and the worst-case rectangle burned into the pixels, plus a footer naming the device preset and repeating that the insets are approximations. The separate template PNG is the clean 1080 x 1920 guide layer.
Why does my text pass here but get covered on my phone?
Because the real insets move. A longer caption pushes the Reels bottom block up, a taller phone changes where your pixels land, a bigger Dynamic Island grows the top band, and app updates redraw the interface. Leave a visible margin and check a draft on the device before publishing.
What size should a Story or Reel template be?
1080 x 1920 px, a 9:16 ratio. That is what the tool previews and what the downloadable template PNG is exported at, so guides drawn against it line up with your design canvas exactly. The feed preview is 1080 x 1350.
Can I check a video with this tool?
Not directly. Export a still frame from the moment your text appears and drop that in. The tool reads images only, and the layout question is about a single frame anyway.