Twilio MMS 5 MB video limit: shrink a clip with Sume video trim
Twilio's MMS limit is 5 MB overall. Shorten, drop audio and downsize a clip with Sume video trim, then check the file size yourself.

Twilio's accepted-content page gives an overall 5 MB limit for MMS media (read 2026-10-02). Sume's video trim can make a clip smaller by cutting its length, dropping the audio and conforming to a smaller frame size and a lower frame rate. It does not accept a bitrate or file-size target, so Sume cannot promise a clip under 5 MB; check the finished file's size before you send.
What Twilio says
Twilio lists the video types it accepts and says the overall MMS size limit is 5 MB. For non-image files it points to carrier-specific limits in a separate help article, which I did not read, so confirm your destination carriers there.
| Item | What the page says |
|---|---|
| Overall MMS limit | 5 MB |
| Accepted video types | video/mp4, video/mpeg, video/webm, video/quicktime, video/3gpp, video/3gpp2, video/H264, video/H265 and related types |
| Carrier-specific limits | Listed in a separate Twilio Help Center article |
The levers video trim gives you
Size follows duration, pixels, frame rate and audio. Video trim exposes each of those without exposing codec settings.
duration(orend): 0.2 to 900 seconds. A shorter clip is the biggest saving.audio: "drop": removes the audio track if the message works silent.output { width, height, fps }: width and height from 256 to 2160, fps 24, 25, 30 or 60. Exact precision only.- The conform is a plain scale plus frame rate, so a different aspect ratio stretches the picture. Keep the source ratio.
Request shape
Import the source into your workspace first, because trim only reads this workspace's media.sume.com URLs. Then send POST /v1/video-trim with an Idempotency-Key. The default mode is async; poll GET /v1/jobs/:id/status, then read /result for the output video_url.
A short message clip might use start: 0, duration: 6, audio: "drop" and output: { width: 480, height: 270, fps: 24 } for a 16:9 source. Those numbers are an example, not a promise about bytes.
Close the loop yourself
Sume's docs reject client codec fields such as crf, so there is no way to ask for a size. After the job finishes, download the result and measure the bytes. If it is still above 5 MB, shorten the duration or pick a smaller output and run again, using a new Idempotency-Key. At $0.02 per trim job in the public docs, a retry is cheap, but confirm the live price in GET /v1/catalog.
Sume does not send MMS. Twilio does the delivery; this step only prepares the file.
Sources
Related posts
More in Use cases
- Uber Eats menu photo size: 5:4, one item, no text, no logos
Uber Eats menu photos should be 5:4 to 6:4, one item, no people, no text. Here is the rule list and how to prepare a crop with Sume's 5:4 aspect ratio.
- Upload 15 YouTube Shorts at a time: prepare the batch with Sume
YouTube's upload page lets you pick up to 15 Shorts at once. Prepare 15 correctly sized clips with Sume trim jobs, one idempotency key each.
- Vinted bans edited and stock photos: what AI can still do
Vinted's rules say photos must show the item as it is with no image editing, and ban stock and watermarked pictures. Keep AI out of listings; use it for promos.
- Vrbo photo rules: 6 photos, 1024x683, no overlays
Vrbo requires at least 6 published photos at 1024 x 683 or larger, with no text or watermark overlays. Plan a compliant gallery and use AI only for promos.
Written by Sume