Instagram story ad size: 9:16 specs, plus Facebook Stories
Meta recommends 9:16 at 1440×2560 for Instagram and Facebook Stories ads. Lengths that play in full, safe zones, and how to make one with Sume.

An Instagram Story video ad is full-screen 9:16, and Meta recommends 1440×2560 pixels; Facebook Stories video ads use the same ratio and resolution. Instagram plays Story ads shorter than 16 seconds in full and Facebook plays ads of 15 seconds or less in full, so a 15-second ad plays whole on both. Meta suggests leaving roughly the top 14% and the bottom 35% (Instagram) or 20% (Facebook) free of text and logos. With Sume, render 9:16 at 1080×1920, Timeline 1.0's default size.
Meta's specs are quoted from two Meta Ads Guide pages, the Awareness video specs for Instagram Stories and Facebook Stories, read on 2026-09-27; Meta can change them. Sume facts come from Timeline 1.0, Video captions, and the Sume API reference.
What are the Instagram and Facebook Stories ad specs?
Meta labels file type, ratio, resolution, and video settings as design recommendations, and duration, file size, minimum width, and ratio tolerance as technical requirements.
| Spec | Instagram Stories | Facebook Stories |
|---|---|---|
| Ratio | 9:16 | 9:16 |
| Resolution | 1440×2560 | 1440×2560 |
| File type | MP4, MOV, or GIF | MP4, MOV, or GIF |
| Duration | 1 second to 60 minutes | 1 second to 3 minutes |
| Plays in full | Under 16 seconds | 15 seconds or less |
| Maximum file size | 4 GB | 4 GB |
| Minimum width | 250 pixels | 250 pixels |
| Aspect ratio tolerance | 1% | 1% |
| Keep free of text and logos | About 14% top, 35% bottom, 6% each side | About 14% top (250 px), 20% bottom (340 px) |
| Captions and sound | Optional, but recommended | Optional, but recommended |
How long should a Story ad be?
15 seconds or less if you want the whole ad to play without being split. Longer ads are split into Stories cards on Facebook and may be on Instagram:
- Instagram: an ad of 16 seconds or longer may be split into separate cards, and Instagram shows one, two, or three of them automatically, tailored to each viewer. With a ThruPlay, 2-second video views, or Reach performance goal, viewers may be shown a Keep Watching option to see the rest.
- Facebook: an ad longer than 15 seconds is split into cards. Facebook shows 1, 2, or 3 automatically, a number tailored to each viewer by default, before offering Play Full for the remainder.
How do I make a Story ad that plays in full?
Make it 15 seconds or less at 9:16. On Sume, render it on Timeline 1.0: audio.duration_seconds sets the length (1–1800 seconds) and the output always runs exactly that long, so 15 gives a 15-second master at the default 1080×1920, which is exactly 9:16 by our arithmetic. One generated clip is capped at 15 seconds on most models. Timeline reads only your workspace's media.sume.com files, such as earlier Sume outputs, and needs an Idempotency-Key:
curl -X POST https://api.sume.com/v1/timeline-1.0/render \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: story-ad-001" \
-d '{
"audio": {
"url": "https://media.sume.com/artifacts/artf_demo/voice.wav",
"duration_seconds": 15
},
"video": [
{ "source_url": "https://media.sume.com/artifacts/artf_demo/hook.mp4", "start": 0, "duration": 6 },
{ "source_url": "https://media.sume.com/artifacts/artf_demo/product.mp4", "start": 6, "duration": 9 }
]
}'Where should text and captions go in a Story ad?
Inside Meta's safe zones. On Instagram, the margins keep key elements from being cropped or covered by the profile icon or the call-to-action; on Facebook, they keep UI elements such as the call-to-action off your text and logos. By our arithmetic, text can sit between 14% and 65% of the frame height and inside the middle 88% of its width on Instagram Stories, and between 14% and 80% of the height on Facebook Stories, so an ad that runs on both fits both inside the Instagram band.
For burned-in captions, design.placement.anchor_ratio on POST /v1/video-captions sets the line's center as a fraction of frame height (0.05–0.95); keep it inside the band by at least half the line's height. Today the caption job refuses a source longer than 60 seconds or without an audio stream. Meta gives Reels ads the same 14%, 35%, and 6% margins as Instagram Stories, and Meta video ad specs works through the caption tokens for them.
Can a Sume render match Meta's recommended size and settings?
Not the 1440×2560 size on Timeline, which caps each output edge at 2,160 pixels, and model outputs publish no pixel sizes (supported_sizes is null). 1440×2560 is a design recommendation, not a technical requirement, and 1080×1920 sits inside the 1% tolerance and well above the 250-pixel minimum width.
Meta also recommends H.264, square pixels, a fixed frame rate, progressive scan, and stereo AAC at 128 kbps or more. Meta video ad specs covers which of those a Sume render meets, what to check yourself, and the same 1440×2560 question for Reels.
Sources
Related posts
More in Media tools
- Korean speech to text API: transcribe Korean audio
Transcribe Korean speech to text by API: send the audio URL with language_code ko, or let it auto-detect, and get the transcript with word timings.
- Translate video subtitles by API: English to Korean captions
Translate an English video's subtitles into Korean with Sume: get timed sentences, translate each line, then burn the lines as cues in a Hangul style.
- LinkedIn video ad specs: under 30 fps, 4:5, and SRT captions
LinkedIn video ads take MP4 in H.264 or VP8 below 30 fps, 3 s to 30 min, up to 500 MB, with SRT captions. Set 24 or 25 fps and crop to 4:5 with Sume.
- Lip sync AI for long videos: past the 5-minute clip limit
To lip sync a long video with AI, split the audio, sync each part to the same face, and join the clips. One Sume job takes up to 300 s of audio.
Written by Sume