Free converters · Run in your browser
Free video converters
Short answer
49 video converters, free and with no upload: 9 of them are container swaps that copy the streams, and the rest re-encode. A swap such as MOV to MP4 changed the file size by 0.0% and took 0.10 seconds in the browser engine on a 3 second 1080p clip; MP4 to WebM, which re-encodes, took 30.6 seconds for the same clip, and MOV to GIF made a 44.18 MB file from 9.18 MB.
Container swaps (nothing re-encoded)
Re-encoding conversions
GIF
Every video converter
49 pairs. Each page has a working converter, the facts about both formats and, where we measured it, what the conversion does to the size.
MP4 to WebM
WebM to MP4
MP4 to MOV
MOV to MP4
MP4 to MKV
MKV to MP4
MP4 to AVI
AVI to MP4
MP4 to GIF
GIF to MP4
WebM to MOV
MOV to WebM
WebM to MKV
MKV to WebM
WebM to AVI
AVI to WebM
WebM to GIF
GIF to WebM
MOV to MKV
MKV to MOV
MOV to AVI
AVI to MOV
MOV to GIF
GIF to MOV
MKV to AVI
AVI to MKV
MKV to GIF
GIF to MKV
AVI to GIF
GIF to AVI
M4V to MP4
M4V to WebM
M4V to MOV
WMV to MP4
WMV to WebM
WMV to MOV
FLV to MP4
FLV to WebM
FLV to MOV
TS to MP4
TS to WebM
TS to MOV
TS to GIF
TS to MKV
WMV to MKV
WMV to GIF
M4V to MKV
M4V to AVI
M4V to GIF
Key takeaways
- Check whether a conversion is a copy: MOV to MP4, MKV to MP4 and MP4 to MOV kept the video and audio checksums identical, so there is no quality loss, and the file size changed by less than 0.1%.
- Re-encoding is slow in a browser: MP4 to WebM took 30.6 s and WebM to MP4 32.6 s for a 3 second clip, against 8.3 s and 4.8 s natively for a 10 second clip. Use a short clip, or a desktop encoder for long ones.
- GIF is a size trap: MOV to GIF grew a 9.18 MB clip to 44.18 MB, and GIF to MP4 went the other way, from 8.67 MB to 684 KB. For a small GIF use the video to GIF tool.
- MP4 to WebM made the file 91% smaller at an SSIM of 0.894207, but WebM is accepted by fewer platforms.
- Everything runs in your browser: nothing is uploaded, and there is no account.
Measured: what each conversion does
In your browser the converters run ffmpeg compiled to WebAssembly on one thread, so re-encoding is far slower than on a desktop. The first conversion downloads the engine, about 30 MB, once per visit. Native timings are from ffmpeg 6.1.1 on a server with a 10 second 1080p clip; WebAssembly timings are from the shipped core on a 3 second clip, in a headless run.
| Conversion | How | Size, native run | Change | Native time | WebAssembly time |
|---|---|---|---|---|---|
| MOV to MP4 | Copy | 9.18 MB to 9.18 MB | 0.0% | 0.11 s | 0.10 s |
| MKV to MP4 | Copy | 9.18 MB to 9.18 MB | +0.1% | 0.10 s | 0.10 s |
| MP4 to MOV | Copy | 9.18 MB to 9.18 MB | 0.0% | 0.11 s | 0.10 s |
| MP4 to WebM | Re-encode | 9.18 MB to 825 KB | -91.0% | 8.3 s | 30.6 s |
| MOV to WebM | Re-encode | 9.18 MB to 825 KB | -91.0% | 8.3 s | not measured |
| WebM to MP4 | Re-encode | 2.37 MB to 3.05 MB | +28.8% | 4.8 s | 32.6 s |
| FLV to MP4 | Re-encode | 9.18 MB to 3.36 MB | -63.4% | 4.9 s | not measured |
| MOV to GIF | Re-encode | 9.18 MB to 44.18 MB | +381% | 5.5 s | 3.6 s |
| WebM to GIF | Re-encode | 2.37 MB to 41.44 MB | +1650% | 5.1 s | not measured |
| GIF to MP4 | Re-encode | 8.67 MB to 684 KB | -92.1% | 0.63 s | 2.6 s |
Native: a 10 second 1080p clip. WebAssembly: a 3 second clip.
The native runs show what the conversion does to the file; the WebAssembly column shows what to expect in your tab. A copy takes a fraction of a second whatever the length; a re-encode grows with the length of the video.
Copy or re-encode?
A video file is a container (MP4, MOV, MKV, WebM) holding a picture stream and a sound stream. When the target container can hold the same streams, the converter copies them: 9 of the 49 pairs work this way, which is fast and lossless. Otherwise the streams are decoded and encoded again, which takes time and loses a little quality. Each page says which one it does.
| Container | Full name | Best for |
|---|---|---|
| MP4 | MPEG-4 Part 14 | Uploading anywhere: the format social platforms document first |
| MOV | QuickTime File Format (Apple) | iPhone recordings and Final Cut Pro projects |
| MKV | Matroska | Archiving and playback in desktop players; most social platforms do not list it |
| WebM | WebM (open web format) | Video on web pages; YouTube accepts it, most short-form apps do not |
| GIF | Graphics Interchange Format | Short silent loops in chats and documents; large files for their quality |
Limits to know about
- Files up to 100 MB; the first conversion downloads about 30 MB of engine.
- Re-encoding long videos in a browser tab is slow. For an hour of footage use a desktop encoder such as HandBrake or ffmpeg.
- A copy keeps everything the target container can hold; anything it cannot hold is re-encoded or left out, and the page says so.
Questions people ask
How do I convert MOV to MP4 without losing quality?
Use the MOV to MP4 converter: it copies the streams into an MP4 container. In our test the checksums were identical before and after and the file size changed by 0.0%.
Why is my conversion slow?
Re-encoding runs on one thread in the browser. A 3 second clip took 30.6 seconds to convert from MP4 to WebM. Container swaps take a fraction of a second.
Is my video uploaded?
No. Every conversion runs in your browser.
What is the file size limit?
Up to 100 MB per file.
Why did my GIF come out so big?
GIF stores every frame with at most 256 colors. Our 9.18 MB clip became 44.18 MB. The video to GIF tool resizes and picks the palette for a much smaller file.
Which format should I upload to social media?
MP4 with H.264 and AAC is the format platforms document first. The codec and container pages show what each platform accepts.
Sources and how we checked
- FFmpeg Documentation: ffmpeg (stream selection, -map, -c copy) (read 2026-10-08)
- MDN: Media container formats (read 2026-10-08)
- Blender Foundation: Big Buck Bunny (CC BY 3.0), the clip used for the video and audio measurements (read 2026-10-08)
Reviewed October 9, 2026. Every figure on this page comes from the measurements behind the linked tool pages, which are saved in data/seo/hub/evidence/2026-10-09.