Skip to content

Convert GIF to WebP on Windows: 3 Methods

Convert GIF to WebP on Windows with GetCompress, FFmpeg, or Clipchamp when the source is still video. Smaller animated assets for the web.

By Petr Samokhin

Your landing page hero animation is a multi-megabyte GIF. The same loop as animated WebP is often much smaller with smoother gradients. Modern browsers load animated WebP well. Keep a GIF or MP4 fallback when a CMS or ticket form still requires it.

Why animated WebP instead of GIF

GIF caps at 256 colors per frame. Animated WebP supports lossy and lossless modes and typically produces smaller files at similar visual quality.

FactorGIFAnimated WebP
Color depth256 colors per frameFull color (lossy or lossless)
Typical web sizeLarge for gradientsOften much smaller
Browser supportUniversalWide on modern browsers

Use animated WebP when page weight hurts. Keep GIF when a third-party tool accepts only GIF. For UI demos, MP4 is often better than either. See compress GIFs on Windows when you must stay in GIF.

Method 1: GetCompress

Best for: Preview, trim, width presets, and batch export without maintaining PowerShell recipes per project.

GetCompress main window with a GIF queued and GIF settings open, including quality and format options
  1. Drop an existing GIF, or a MOV/MP4 source, into GetCompress .
  2. Trim idle frames in the preview.
  3. Choose WebP output, set width (for example 640 or 800 px) and quality.
  4. Export; keep the original GIF or video master untouched.

Processing stays on your PC. Save a preset such as “marketing WebP 640 medium” so you can reuse it next time.

Method 2: Convert GIF to WebP with FFmpeg

Best for: Scripts and exact libwebp flags.

Install FFmpeg with winget if needed:

winget install --id Gyan.FFmpeg -e

Lossy animated WebP:

ffmpeg -i loop.gif -vcodec libwebp -filter:v "fps=12,scale=640:-1" -lossless 0 -compression_level 6 -q:v 80 -loop 0 loop.webp

Lossless (larger file, flat colors):

ffmpeg -i icon-loop.gif -vcodec libwebp -lossless 1 -loop 0 icon-loop.webp

Batch every GIF in a folder:

mkdir webp-out
Get-ChildItem *.gif | ForEach-Object {
 ffmpeg -i $_.Name -vcodec libwebp -filter:v "fps=12,scale=640:-1" -lossless 0 -q:v 80 -loop 0 "webp-out\$($_.BaseName).webp"
}
FlagSmaller fileBetter quality
fps8 to 1012 to 15
scale width480 to 640800 to 960
-q:v (lossy)70 to 7580 to 85

Limitation: You maintain the commands yourself. Keep the MP4 or MOV master when you have it.

Method 3: Start from video in Clipchamp

Best for: When the source is still a screen recording, not a finished GIF.

  1. Open the clip in Clipchamp.
  2. Trim the timeline.
  3. Export MP4 when the destination allows video, or convert to GIF/WebP only if required.

See video to GIF on Windows when GIF is required.

Limitation: Clipchamp does not export animated WebP directly.

Which method should you use

SituationStart here
Recurring hero loops, preview, presetsGetCompress
Scripts or exact flagsFFmpeg
Source is still videoClipchamp first; prefer MP4

When FFmpeg alone is enough

FFmpeg is enough for a one-off convert when you already know the flags.

GetCompress also helps when design sends a folder of oversized GIF files often, when you want trim and preview before deploy, and when processing must stay local. Prefer MP4 for motion docs when quality stays poor at a small animated size. For Mac, see GIF to WebP on Mac .