Trim and compress clips for WhatsApp and Telegram
Free, practical ways to cut a clip down and shrink it to send on WhatsApp or Telegram without it turning to mush, using your phone's built-in editor, HandBrake, or ffmpeg.
By Karim · Published
Here in Morocco, as in many places, WhatsApp is where videos actually get shared. Family groups, work chats, the neighbourhood group. Telegram is close behind for larger communities. So a lot of the clips people save end up being sent through one of the two, and the same problems keep coming up: the file is too big, it gets crushed into a blurry mess, or the interesting part is 20 seconds in the middle of a 3-minute video.
This guide shows you how to fix that with free tools, from tapping "Edit" on your phone to a one-line ffmpeg command. We'll use the word "your clip" throughout: these techniques are for videos you made or have permission to share. If it's someone else's video, send the link to the original post instead. It's smaller, it credits the creator, and it shows their caption.
How WhatsApp and Telegram treat video
Knowing what the apps do to your file helps you decide how much work to put in.
- When you send a video as media (from the gallery button), WhatsApp re-compresses it, often heavily, to save bandwidth. Recent versions offer an HD option for photos and videos, but it's still compressed.
- There's a size limit on videos sent as media. It has changed over the years and can differ by platform. If your clip is too large, WhatsApp will ask you to trim it or will refuse.
- Sending the video as a document (attach → Document) avoids re-compression and allows much larger files, but recipients have to download it before playing, and it won't preview inline in the chat.
Telegram
- Videos sent normally are usually compressed by default. On many clients you can turn compression off in the send dialog, or send as a file to keep the original.
- Telegram supports very large files (at the time of writing, around 2 GB for free accounts and more for Premium), so size is rarely the problem. Upload time and the recipients' data plans are.
The practical takeaway: if you control the compression yourself before sending, you get a better result than letting the app guess, and a smaller file that's kinder to everyone's mobile data.
Step 1: Trim first, compress second
Trimming is free quality. Every second you cut is bitrate the encoder can spend on the seconds you keep. Always cut before you compress.
On iPhone
- Open the video in Photos (if it's in Files, see our Files vs Photos guide to move it).
- Tap Edit.
- Drag the yellow handles on the timeline to the start and end you want.
- Tap Done → Save Video as New Clip to keep the original untouched.
On Android
Most gallery apps (Google Photos, Samsung Gallery and others) have a trim option:
- Open the video and tap Edit.
- Drag the handles on the timeline.
- Choose Save copy so you don't overwrite the original.
Inside WhatsApp itself
When you pick a video to send, WhatsApp shows a trim bar at the top. It's fine for quick cuts, but it then compresses the result its own way.
Step 2: Compress with HandBrake (desktop, free)
HandBrake is a free, open-source video converter for Windows, Mac and Linux. It's the friendliest way to control compression.
- Open HandBrake and drag your trimmed clip in.
- In Preset, choose something from General such as Fast 720p30. For chat apps, 720p is plenty; phones show these videos small.
- On the Video tab, keep H.264 (x264) as the encoder for maximum compatibility. Set Constant Quality between about 23 and 28. Higher numbers mean smaller files and lower quality.
- On the Audio tab, AAC at 96–128 kbps is fine for speech and most music.
- Tick Web Optimized (this moves the index to the start of the file so it can begin playing sooner).
- Click Start Encode, then check the output size and quality. Adjust and repeat if needed.
Step 3: Or compress with ffmpeg (precise and scriptable)
ffmpeg is the free command-line tool that powers most video software. If you're comfortable typing a command, it gives you exact control.
Trim without re-encoding (instant, no quality loss)
ffmpeg -ss 00:00:20 -to 00:00:45 -i input.mp4 -c copy clip.mp4This copies the streams as they are. It's very fast, but cuts can only start on a keyframe, so the start point may be off by a second or so. If you need a frame-accurate cut, re-encode instead (next command).
Trim and compress to a sensible 720p
ffmpeg -ss 00:00:20 -to 00:00:45 -i input.mp4 -vf "scale=-2:720" -c:v libx264 -preset slow -crf 26 -c:a aac -b:a 96k -movflags +faststart clip-720p.mp4What each part does:
-vf "scale=-2:720"resizes to 720 pixels tall and keeps the aspect ratio (-2keeps the width an even number, which H.264 needs). For a vertical video, usescale=720:-2to make it 720 wide instead.-crf 26sets constant quality. Use 23 for better quality and 28–30 for smaller files.-preset slowspends more time compressing for a smaller file at the same quality.-movflags +faststartlets the video start playing before it's fully downloaded.
Hit a target file size
If you need the file under a specific size, calculate the bitrate. For a 30-second clip that must stay under roughly 14 MB:
- 14 MB × 8 = 112 megabits, ÷ 30 s ≈ 3.7 Mbps in total.
- Leave about 0.1 Mbps for audio and some safety margin, so target video at around 3.2 Mbps.
Then use two-pass encoding, which is more accurate for a size target:
ffmpeg -y -i clip.mp4 -c:v libx264 -b:v 3200k -pass 1 -an -f mp4 /dev/null
ffmpeg -i clip.mp4 -c:v libx264 -b:v 3200k -pass 2 -c:a aac -b:a 96k -movflags +faststart clip-small.mp4On Windows, replace /dev/null with NUL.
Choosing settings: a quick reference
- Talking-head or screen recording: 720p, CRF 26–28, mono or low-bitrate audio is fine.
- Sport, dance, fast motion: keep the frame rate, use CRF 23–25, and consider 720p rather than 1080p so the bitrate goes further.
- Music performance: spend more on audio (128–160 kbps AAC); people notice bad audio before bad video.
- Very long clips: trim. Nobody in a family group watches 8 minutes.
Troubleshooting
WhatsApp still says the file is too large. Trim further, lower the resolution, or send it as a document. Remember the limit is checked on the final file size, not the length.
The video arrives sideways. Some phone videos store rotation as metadata. Most tools handle it, but if not, re-encode with ffmpeg (which applies rotation automatically in recent versions) or rotate in your gallery editor before sending.
The colours look washed out. That's often an HDR video from a recent iPhone or Android, converted to standard range badly. Turn HDR off when recording clips you'll share, or export as SDR. See our export settings guide.
No sound after compressing. Check that the source has an audio track at all. GIF-style X posts never have audio. Also make sure you didn't leave -an (no audio) in a command meant for the final output.
The output won't play on an older phone. Stick with H.264 and AAC in MP4. Avoid H.265/HEVC for maximum compatibility.
Responsible sharing
Messaging apps make forwarding effortless, which is exactly why it's worth a second's thought. If the clip shows other people, especially children or people in a vulnerable moment, consider whether they'd want it passed around. If it's someone else's creative work, sharing the link to their original post keeps the credit with them. Our responsible use page has more on this.
Step by step on your device
Related guides
- X video formats explained: HLS, bitrates, and why 1080p isn't always there
- Convert X GIFs (MP4) to real animated GIFs with ffmpeg
- iPhone downloads: Files vs Photos, and how to move videos between them