WebP to JPG Converter
- Writing the JPG discards picture detail to save space, and what it discards does not come back.
- Transparent areas are laid onto #FFFFFF, because JPG carries no alpha channel here.
- The Exif data, the colour profile and anything else the original carried are not passed on: the picture is decoded to plain pixels and a new file is written from them.
- A lossy WebP has already been compressed once, and this step compresses the picture again on top of whatever it had already lost.
- An animated WebP comes through as one picture — the image the format names as its default, or the first frame where it names none.
Needs JavaScript. Runs only here.
This page turns a WebP into a JPG on your own machine. Every conversion on this page runs in your browser. The picture is read, drawn and written on your own machine, and the file is not sent to a server.
Going the other way? Convert JPG back to WebP →
How do you convert a WebP to a JPG?
A WebP holds one picture or many, with or without transparency. A JPG holds one opaque picture that almost any program can open, and JPEG compression is applied to write it.
- Choose the WebP file you want to convert. It is read inside this page, on your own machine.
- Pick the colour that goes behind the clear areas. This page starts at #FFFFFF and states the colour it used, because the browser's own default would fill them with black.
- Set the quality between 0 and 1. A lower setting writes a smaller file and throws more detail away, and no two browsers read the number the same way.
- Select Convert to JPG. The page reads the first bytes of what came back and refuses the file if they are not JPG.
- Download the JPG. Nothing has been sent anywhere, so the file is ready as soon as it is written.
What Changes From WebP to JPG
WebP to JPG trades reach for loss. Older software can open the result, but transparency is filled in, an animation comes through as one picture, and JPEG compression is applied on top of whatever the WebP had already lost.
Each row below is one property of the picture: what it is in the WebP, what it becomes in the JPG, and whether it survives the trip. Convert a file and the same rows fill in with the measurements from your own picture.
| Property | In the WebP | In the JPG | Verdict |
|---|---|---|---|
| Dimensions | as the file has them | as the file has them | kept |
| Colour model and bit depth | RGB with alpha, 8 bits per channel | Y'CbCr, 8 bits per channel — 8 bits per sample, whatever the source held | changed |
| Alpha channel | present | flattened onto #FFFFFF | lost |
| Colours used | up to 16,777,216 | the same pixels | kept |
| Animation frames | 1, or several — WebP can carry an animation | 1 — the format’s default image, or the first frame where it names none | changed |
| Metadata (Exif, ICC) | present in the file | dropped — a new file is written from pixels | lost |
| Compression | lossy in a VP8 chunk, or lossless in a VP8L chunk | lossy, discrete cosine transform (the baseline process) | changed |
| File size | the file you chose | smaller | changed |
the pixels survive; some of the detail, the transparency and the Exif data do not.
Going Back to WebP
Converting back does not restore what this step dropped, so convert the JPG result back to WebP only when you need a WebP file.
The change above runs one way — go back from JPG to WebP writes a new file, not the original.
What Travels With the Picture
What the two formats are, and what the browser does with a picture on the way between them. None of this depends on which WebP you bring.
How WebP and JPG Are Defined
| Property | WebP | JPG |
|---|---|---|
| Compression | two modes in one container: lossy in a VP8 chunk, lossless in a VP8L chunk | lossy, discrete cosine transform (the baseline sequential process); the standard also defines a separate lossless mode that web .jpg files do not use |
| Alpha channel | yes, in both modes - a lossy file carries its alpha in a separate ALPH chunk, and a lossless file carries it inside the VP8L chunk | none - neither T.81 nor JFIF defines an alpha or transparency channel |
| Animation | yes - controlled by the ANIM and ANMF chunks in the extended file format | none - one image per file |
| In one sentence | WebP has two modes in one container. Lossy WebP throws detail away the way JPEG does; lossless WebP keeps every pixel. Either mode can carry transparency, and the container can also hold an animation. | JPEG saves space by throwing detail away. The baseline process, which is what a .jpg file on the web uses, is lossy and cannot be undone, and the standard defines no transparency at all. |
- A WebP file begins 52 49 46 46 ("RIFF"), then a four-byte size, then 57 45 42 50 ("WEBP").
- A JPG file begins FF D8 (SOI); a JFIF file follows it with FF E0 and the identifier 4A 46 49 46 00.
- WebP is defined by WebP Container Specification (Google); the bitstreams are RFC 6386 (lossy) and the WebP Lossless Bitstream Specification.
- JPEG is defined by ITU-T Rec. T.81 | ISO/IEC 10918-1 (JPEG); ITU-T Rec. T.871 | ISO/IEC 10918-5 (JFIF).
JPEG and lossy WebP save space by discarding picture detail, and what they discard does not come back. PNG, BMP and lossless WebP keep every pixel they are given, and GIF keeps every pixel it is left with after the palette has been applied.
PNG, GIF, WebP and ICO can carry transparency; JPEG cannot, because the standard defines no alpha channel, and a bitmap written here is opaque. Converting to a format without transparency fills the clear areas with a background colour.
WebP has a lossy mode and a lossless mode, and both can carry transparency. Lossy WebP discards detail the way JPEG does; lossless WebP keeps every pixel.
Drawing an animated GIF or WebP takes a single picture from it - the image the format names as its default, or the first frame where there is none - so the converted file holds one picture and not the animation.
Converting a picture back to the format it came from does not return the original file. Whatever a step discarded stays discarded, and the return trip writes a third file.
The browser decodes the picture to plain pixels and writes a new file from them, so the Exif data, the colour profile and anything else the original carried are not passed on.
Drawing an animated image onto a canvas uses the image the format names as its default, or the first frame where the format names none. The other frames are not reachable this way.
A canvas holds pixels and nothing else, so a file written from one carries no Exif data, no thumbnail and none of the original file's other metadata. The canvas specification never mentions Exif; this follows from writing the file out of a bitmap.
When a canvas is written to a format that has no alpha channel, the browser lays the picture over opaque black. A converter that wants any other background has to paint it first, and should say which colour it used.
The quality setting applies only to formats that support variable quality, never to PNG, and it has to be a number between 0 and 1. Browsers read it differently, so the same setting does not give the same file everywhere.
What Does JPG Drop From a WebP?
Transparency and animation
Both. The clear areas are filled with the colour you pick, and a moving WebP arrives as a single picture. Drawing an animated GIF or WebP takes a single picture from it - the image the format names as its default, or the first frame where there is none - so the converted file holds one picture and not the animation.
A second round of compression
If the WebP used its lossy mode, its picture had already been thinned once. Writing the JPG thins the result again, and the two losses add up rather than cancelling out.
What you gain for it
Reach. A JPG opens in software written long before WebP existed — older photo editors, printing services, hardware picture frames — which is the usual reason for making the trade at all.
Common Mistakes
- Expecting the animation to survive. The browser hands this page one picture from a moving file, so the other frames never reach the JPG.
- Assuming the WebP was lossless. The container holds two modes and its name does not say which one a file used.
- Converting a logo with soft edges. Those edges meet the background colour and stop being clear.
Frequently Asked Questions
Does converting a WebP to JPG lose quality?
Yes. Every save as JPEG compresses the picture again. A lossy WebP had already dropped detail, and this step drops more on top of it.
What happens to a transparent WebP when it becomes a JPG?
The clear areas are filled with the background colour you chose, because JPEG defines no alpha channel at all. The default here is #FFFFFF.
What happens to an animated WebP when it becomes a JPG?
You get one picture, not the animation. Drawing an animated image onto a canvas uses the image the format names as its default, or the first frame where the format names none. The other frames are not reachable this way.
Why do some programs refuse to open a WebP file?
Because they were written before the format existed, or never added a reader for it. Browsers took it up long before desktop photo software and print shops did.
You can, but the round trip is not the file you started from: the JPG to WebP direction.
Related Conversions
The rest of the family sits on all the picture formats in one place.