Instagram Stories vs Reels API limits, side by side with Sume caps

Meta lists Reels at 3 s to 15 min and 300MB, Stories at 3 to 60 s and 100MB. Sume video-trim can cut either from a longer clip, up to 900 s of output.

4 min readSume
All posts

Reels allow 3 seconds to 15 minutes and 300MB; Stories allow 3 to 60 seconds and 100MB, per Meta's IG User media reference. Both list 23-60 FPS and recommend 9:16, so the same Sume trim settings work for both and only duration and the file check change.

What are the numbers?

Everything in the first two columns is quoted from Meta's reference page; the third column is from Sume's trim docs.

Instagram video limits (read 2026-09-30). Sume rows: https://docs.sume.com/models/video-trim
ItemReelsStoriesSume trim
Duration3 s to 15 min3 to 60 sOutput 0.2 to 900 s
File size300MB maximum100MB maximumNot stated
Frame rate23-60 FPS23-60 FPS24, 25, 30 or 60
Aspect ratio0.01:1 to 10:10.1:1 to 10:1Width and height 256 to 2160

Where do the two meet Sume's caps?

A 15 minute Reel is exactly 900 seconds, the largest output a single trim can write, and a source can be up to 1800 seconds. So a trim can produce the longest Reel Meta lists, and a Story cut is a much shorter duration.

How do I make one of each from the same clip?

Submit two trims from one source with different Idempotency-Key values. The source is untouched, and each job returns its own video_url.

# Reel: up to 900 s
curl -X POST https://api.sume.com/v1/video-trim \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: reel-cut-001" \
  -d '{"video_url": "https://media.sume.com/artifacts/artf_demo/long.mp4", "start": 0, "duration": 90}'

# Story: up to 60 s
curl -X POST https://api.sume.com/v1/video-trim \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: story-cut-001" \
  -d '{"video_url": "https://media.sume.com/artifacts/artf_demo/long.mp4", "start": 0, "duration": 45}'

What stays with you at upload?

Sume does not publish to Instagram, so container creation and publishing stay in your Graph API calls. Re-read Meta's page before shipping.

How do I choose between them?

Choose by intent and by the numbers, not by the file. A clip of 60 seconds or less can go to either surface, so the decision is a product one. A clip between 60 seconds and 15 minutes is a Reel only, and a clip under 3 seconds is neither, so both formats need at least 3 seconds.

Because trim's minimum is 0.2 seconds, Sume will not stop you writing a clip too short for Instagram. Check duration_seconds on the result against Meta's minimum before you publish.

  • Under 3 seconds: too short for both surfaces.
  • 3 to 60 seconds: either surface.
  • 60 seconds to 15 minutes: Reels only.
  • Over 15 minutes: cut it further; Sume's trim tops out at 900 seconds anyway.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume