Discover tools
All tools

Video compressor

Make videos smaller, to fit under 8, 10 or 25 MB or a size of your own, with the quality checked, on your device. Free, with no account or uploads.

Drop videos to make smaller

Fit each under a size (8, 10, 25 MB, half…) or choose a quality: the bitrate, frame rate and size are chosen for it, and every result is checked.

  • MP4
  • MOV
  • WebM
  • MKV
  • MPEG-TS

Stays on your device · up to 20 videos at once · any length

This page is the Video editor, opened for making videos smaller.

Settings

The usual settings

Size limit
None8 MB10 MB25 MB50 MB100 MBHalfA quarterCustom

Each file is written to fit under this: its bitrate is chosen for it, and its frame rate and size lowered if need be. A file already under it is copied as it is.

Format
MP4WebMMOVMKVSame as the file

Plays everywhere: phones, computers, TVs and every site. H.264 unless you choose another.

Video codec
AutomaticH.264HEVCVP9AV1

The most widely played codec the format holds, when the picture has to be encoded.

Bitrates follow YouTube's recommended upload settings; Balanced and Small are KeepSimp's own shares of them. Writing to MP4 happens on this device.

A little help along the way

Follow the steps below. Every option is explained underneath.

  1. Add your videosDrop them or choose them: MP4, MOV, WebM, MKV or MPEG-TS, of any length. Up to 20 at once.
  2. Choose a size limit8, 10, 25, 50 or 100 MB, half or a quarter of each file, or your own. Or leave it and choose a quality.
  3. Read what will be doneThe sentence under the player says the bitrate, and the frame rate and size if they must come down.
  4. DownloadEach video is checked against its limit and opened again before it is offered.
Every option explained
Copied or encoded again
When the picture already has a codec the new format holds and plays everywhere, and nothing about it is to change, it is copied as it is: nothing is lost, and an hour of video takes seconds. Choosing a quality, a smaller size, a lower frame rate or another codec means it is encoded again by your browser's own encoder (WebCodecs). The page says which, and why, under the player.
MP4
Plays everywhere. The picture is H.264 unless you choose HEVC, AV1 or VP9; VP9 and AV1 in an MP4 are only copied when you choose them, as some players lack them. Sound is AAC or MP3. The file's index is put at its start (fast start), as YouTube asks, so it can play before it has all loaded.
WebM
The web's own format: VP9, AV1 or VP8 with Opus sound. It plays in every browser and on Android, but not in QuickTime or older Apple software.
MOV and MKV
MOV is Apple's own, for Final Cut, iMovie and QuickTime: H.264 or HEVC. MKV holds almost any picture and sound as it is, so it is the format to choose when a file must not be encoded again. MPEG-TS files are read and written as MP4.
Quality
High is YouTube's recommended upload bitrate for the size and frame rate: for H.264, 360p 1 Mbit/s (1.5 over 30 fps), 480p 2.5 Mbit/s (4 over 30 fps), 720p 5 Mbit/s (7.5 over 30 fps), 1080p 8 Mbit/s (12 over 30 fps), 1440p 16 Mbit/s (24 over 30 fps), 2160p 40 Mbit/s (60 over 30 fps). Balanced is 50% of that and Small 25%, KeepSimp's own choices. HEVC and VP9 get 60% of H.264's bitrate and AV1 40%, for the same look. A file is never given more than it holds. Custom takes a bitrate of your own. A keyframe is written every 2 seconds.
Size limit
Each file is written to fit under the size chosen (8, 10, 25, 50, 100 MB, half or a quarter of its own size, or a size of your own). The sound gets its share first (converted smaller when it would take more than a fifth), then the picture gets the rest as its bitrate. When that leaves fewer than 0.05 bits for each pixel of each frame in H.264 (the share HandBrake's presets for sharing work to), more than 30 frames a second become 30, then the size steps down (2160p, 1440p, 1080p, 720p, 540p, 480p, 360p, 240p). Browser encoders do not always keep to a bitrate, so each pass is watched as it is written, and a file that misses is written again with a corrected bitrate, 3 passes at most. Some encoders will not go below a certain bitrate whatever they are asked (Firefox's H.264 on Linux, for one); when a pass comes out far over what it was asked for, the next is made smaller instead, with the bits for each pixel kept, and the page says so; a result is never offered as fitting when it does not. A file already under its limit is copied as it is. If a limit is too small even at the smallest size, the page says how small the video can be made.
Size and frame rate
Size sets the shorter side at most (720p is 1280 × 720 for a wide video, 720 × 1280 for an upright one), keeping the shape. Frame rate sets the most frames a second. Neither is ever raised: a smaller video is not made larger, and a 24 fps film stays 24.
Turn and mirror
MP4 and MOV carry a turn as a setting that players follow, so turning a copied video is instant and loses nothing. In WebM and MKV, and whenever the picture is encoded again, it is turned as it is drawn, so every player shows it upright.
Shape
Cuts each picture to 16:9, 9:16, 1:1, 4:5, 4:3 around its middle, after any turn: 9:16 for Reels, Shorts and TikTok, 1:1 for square posts, 4:5 for portrait posts. A picture already within a hundredth of the shape is left whole. Cropping means the picture is encoded again.
Crop by hand
Crop by hand draws a box over the picture: drag it, drag its corners, or focus it and use the arrow keys (Shift resizes). Lock it to a shape or leave it free, then Use this crop. Each video keeps its own box, which takes the place of the shape setting for it; the turn chosen is applied first.
Speed
From 0.5 to 2 times. Faster keeps the frame rate, so frames are left out; slower plays every frame for longer, so a 30 fps video at half speed has 15 frames a second. The sound is stretched by the audio editor's own engine (WSOLA), which keeps its pitch. Both are encoded again.
Loudness
Makes the sound −14 LUFS (Spotify, streaming), −16 LUFS (Apple Podcasts), −23 LUFS (Broadcast (EBU R 128)), −24 LUFS (US TV (ATSC A/85)) as BS.1770 measures it, with the audio editor's own meter. Each sound is measured as it will be written (after trims, speed and fades), made louder or quieter, and its true peaks held under −1 dBTP by the audio editor's limiter; the result is measured again and held to the target within 1 LU, unless the limiter had to keep it quieter, which the page says. The picture is not touched by it.
Text and logo
Text along the top and the bottom of the picture is written with the animation converter's own captions: the site's Outfit, wrapped to fit, small, medium or large, white or black with an outline of the other colour, for the whole video or between two times of the result. A logo (PNG, JPEG, WebP, GIF or AVIF) sits in a corner or the middle, 10, 15, 20, 30% of the picture's width in its own shape, solid or see-through. Both are drawn on every frame, so the picture is encoded again. A logo marks a video; it does not stop it being copied.
Subtitles
Add subtitles, under a video's player, reads an SRT or WebVTT file for that video and writes its subtitles on the picture: white with a black outline, centred along the bottom, wrapped to fit, small, medium or large. Their times are the video's own seconds; with a trim or a speed change they move with it, and those in parts cut out are left out. Tags such as italics are taken out. Written on the picture, they show in every player and on every site, but cannot be turned off; the file's own subtitle tracks are not kept.
Join into one video
With two or more videos written, Join puts them end to end in one file, in the order shown (move each earlier or later). It joins the results, so each video's own trims, crops and edits are kept. When every video was written alike (the same codec, size, turn and decoder setup, as videos from one camera usually are), the pictures are copied packet for packet; otherwise they are encoded again at the first video's size, others fitted inside it with black bars. The sound is written again in one piece, each video's sound for exactly as long as its picture, silent where a video has none, so it never drifts. The joined file is the first video's kind, and is opened again and checked.
Make a GIF
Make a GIF of the result hands the video, as written with every edit, to the animation converter's own engine: a GIF (plays everywhere), an animated WebP (far smaller, plays in every browser) or an APNG (full colour), 320, 480, 640 pixels on its longest side or as the video, at 10, 15, 20, 25 frames a second, played for ever. An animation holds every frame as a picture, so keep it short: trim to the moment first. The sound is left out.
Soundtrack
Add a soundtrack puts the sound of another file (music, a voice-over, or a video's sound) under every video: in place of its own sound, or mixed under it at a volume (-6, -12, -18, -24 dB, or as it is). A shorter soundtrack plays again from its start until the video ends, unless that is turned off, and one still playing at the end fades out over 1 s. It starts with the video, after any trim, and takes the fades and loudness chosen. The picture is copied as it is when nothing else changes it; only the sound is encoded.
Fades
Fade in from black and silence at the start, and out to them at the end, over the seconds chosen, after any trim and speed change. Both picture and sound are encoded again.
Sound
Keep copies the sound as it is when the format plays it everywhere, and converts it otherwise (to AAC for MP4 and MOV, to Opus for WebM and MKV). Convert always converts it. Converted sound starts exactly with the picture: an encoder puts a short run of samples before the sound, and the file says to skip it (an edit list in MP4 and MOV, Opus's own header in WebM and MKV). Leave out writes the picture alone. To keep only the sound, use the Audio extractor.
The check
Every video written is opened again: its format, its picture's codec and size, its frame rate and its sound are held to what was asked, its length to the original's within 0.15 s at 30 fps, and its first and last frames and its sound are decoded. If something is not as asked, the page says what.
Codecs your browser cannot write
Browsers differ: HEVC is written only on some hardware and in Safari, AV1 not in Safari, and Firefox on Android writes none. KeepSimp asks your browser what it can write at each size and offers what it can; copying never needs an encoder. HDR video is written without tone mapping, and a file's own subtitles and chapters are not kept.
Long videos and privacy
Files are read a piece at a time and results written to your browser's private storage on this device, not held in memory, so videos of any length work; up to 20 at once. Nothing is uploaded. The results are removed from that storage when you close the page, or, if the browser stops before it can, the next time the workspace opens.
Keep and cut
Choose a stretch with Start and End (type a time such as 1:07.25, drag, or press I and O at the playhead). Keep the selection keeps only that stretch of what is kept now; Cut it out takes it away. Do either as often as you like: the parts kept are shown on the timeline and listed under it, and Undo and Redo go back and forth. Play what is kept plays the parts one after another, stepping over what is cut.
Lossless
The picture is copied as it is, so nothing is lost and an hour of video is cut in seconds. A video holds a whole picture only now and then (a keyframe, marked under the timeline); the frames between are written as changes from it, so a copy can begin and end only at a keyframe. An MP4 or MOV with one part kept still starts exactly where you asked: the file says where to start playing, and its earlier frames are kept only to be decoded. Otherwise each part is moved out to the keyframes around it, and the page says how much more is kept. Several parts are joined one after another into one file.
Exact
Cuts to the frame, and the sound to the sample, by encoding the picture again (with the quality chosen in the settings; Original keeps its bitrate). Where parts are joined, the sound fades over 4 ms on each side, so a cut does not click. Lossless becomes exact by itself when something else means the picture is encoded anyway, such as a new size or format.
Split into files
Mark where to split with Split here (or S at the playhead), or split every so many seconds, then Make files: each piece becomes a file of its own in the list, named -part-1, -part-2 and so on, holding what is kept in it, and is written and checked like any trimmed video, lossless or exact as chosen. Download them one by one or as a ZIP.
Save a frame
Saves the frame at the playhead as a PNG, read from the file itself at the video's full size, not from the player.
Keys: watching
Space or K: Play or pause. ←: Back one frame. →: On one frame. Shift + ←: Back 1 s. Shift + →: On 1 s. J: Back 5 s. L: On 5 s. HOME: Go to the start. END: Go to the end. The keys work while the trim panel has the focus.
Keys: choosing a part
I: Start the selection at the playhead. O: End the selection at the playhead. Esc: Clear the selection. The keys work while the trim panel has the focus.
Keys: editing
ENTER: Keep only the selection. DELETE or BACKSPACE: Cut the selection out. Ctrl or ⌘ + Z: Undo. Ctrl or ⌘ + Shift + Z or Ctrl or ⌘ + Y: Redo. S: Mark a split at the playhead. Shift + S: Save the frame at the playhead as a picture. The keys work while the trim panel has the focus.
Read the step-by-step guide