Video to WebP

Turn videos into animated WebP files. Smaller than GIF with better color and quality.

Drop your video here

or click to browse

MP4MOVWebMAVI
Runs in your browser. Your files are never uploaded.

How this converter works

This turns a video into an animated WebP in your browser, using ffmpeg compiled to WebAssembly. Trim the part you want, set a width and a quality number, convert, download. The file never goes to a server.

The encode runs through libwebp with the quality value you pick passed straight to the encoder. Unlike GIF there is no palette step, because WebP has a full 8-bit-per-channel colour space and a real alpha channel. That is the whole reason to prefer it: the same clip that needs 256 dithered colours as a GIF keeps its gradients intact here, usually at a quarter of the size.

Settings and limits

  • Max input500 MB
  • Core25 MB, once
  • Threads1

More detail

When to use this instead of GIF

Almost always, if the place you are posting accepts it. Chrome, Firefox, Edge and Safari have all supported animated WebP for years. The exception is anywhere that strips or rewrites image tags, or an old email client, where GIF is still the only thing guaranteed to animate.

The practical test: paste one into the destination and see if it moves. If it does, use WebP and take the size win. If it does not, convert to GIF instead and expect a much larger file.

What you can change
  • Trim. Set an in and out point on the timeline. Only that range is encoded.
  • Width. Height follows the aspect ratio.
  • Quality. A 0-100 value handed to libwebp. Around 75 is a sensible default; below about 50 you will start to see blocking on detailed footage.
  • Loop. On by default. Turn it off and the animation plays once and stops.
Things worth knowing

The ffmpeg core is roughly 25 MB and is fetched once per session from a public CDN, so the first conversion is slower than the ones after it. Input is capped at 500 MB, though browser memory usually becomes the limit before that.

Animated WebP has no interframe motion compensation the way a video codec does. It is closer to a stack of compressed stills than to H.264. For long clips a real video file will still beat it comfortably, so this is for short loops, not for a two minute recording.

Formats it reads

MP4 (H.264 and H.265), WebM (VP8 and VP9), MOV, AVI and MKV. Screen recordings from OBS, Loom and ScreenPal all work.

Questions

Is the file uploaded anywhere?

No. ffmpeg runs as WebAssembly inside the page and reads your file through the browser's File API. The only network request is the one-time fetch of the ffmpeg core from a CDN.

Will an animated WebP work on Discord, Slack or GitHub?

Discord and GitHub render animated WebP. Slack's behaviour depends on the client and it sometimes shows only the first frame. If animation matters and you are unsure, test with one file before converting a batch, and fall back to GIF where it does not play.

How much smaller is it than the same clip as a GIF?

Usually three to five times smaller at comparable visual quality, and the gap widens on anything with gradients or camera motion, because GIF has to approximate those with 256 colours and dithering while WebP does not.

Does it keep transparency?

WebP supports alpha, but almost no video source has an alpha channel to begin with, so in practice the output is opaque. If your source genuinely carries alpha it will be preserved.

Related tools