「WebPはJPEGより3割小さい」「AVIFはさらに小さい」——よく見る説明ですが、これらの数字はたいてい画質を揃えずに比較した結果です。JPEGのquality 80とWebPのquality 80は、同じ画質を意味しません。
そこで、このブログに実際に載せている写真とスクリーンショット計6点を使って、画質をSSIMという指標で揃えたうえで3フォーマットのファイルサイズを実測しました。結論から言うと、「WebPは3割小さい」は写真では言いすぎで、逆にスクリーンショットでは控えめすぎるという結果になりました。
スポンサーリンク
測定した条件
結論:実際にブログへ上げた画像6点を、長辺1920pxに縮小してから3フォーマットで書き出し、ファイルサイズと画質を測りました。
▼測定環境
▶ エンコーダ:Pillow 12.3.0(JPEG=optimize・progressive有効、WebP=method 6、AVIF=既定設定)
▶ 前処理:長辺1920pxにLanczos法で縮小(ブログ本文で使う実運用サイズ)
▶ 画質指標:SSIM(11×11のガウス窓、σ=1.5。グレースケール化して算出)
▶ 比較対象:縮小後の非圧縮画像に対して、各出力がどれだけ近いか
SSIMは1.000が元画像と完全一致で、0.98を超えると等倍表示で違いを見分けるのが難しくなるあたりです。この記事では0.98を「実用上の同画質」の基準に使いました。
使った画像6点
| 画像 | 種類 | 縮小後サイズ |
|---|---|---|
| 料理のアップ(ソーキそば) | 写真 | 1920×1440 |
| 店内の風景 | 写真 | 1920×1440 |
| 物撮り(フォント一覧) | 写真 | 1920×1440 |
| 書影(技術書4冊) | 写真 | 1920×1281 |
| ゲーム画面のスクリーンショット | UI・文字が多い | 1920×1251 |
| イラスト系のOGP画像 | 平坦な色面が多い | 1200×676 |
写真だけでなくスクリーンショットとイラストを混ぜたのが要点です。後述しますが、この2種類は写真とまったく違う挙動をします。
実測1:quality=80で揃えると、画質がバラバラになる
結論:同じquality 80でも、SSIMは0.962から0.997までばらつきます。quality値はフォーマット間で互換性のある数字ではありません。
まず、3フォーマットすべてをquality 80で書き出した結果です。
| 画像 | JPEG | WebP | AVIF |
|---|---|---|---|
| 料理のアップ | 404KB / 0.971 | 261KB / 0.964 | 411KB / 0.985 |
| 店内の風景 | 319KB / 0.980 | 179KB / 0.971 | 294KB / 0.988 |
| 物撮り | 221KB / 0.972 | 129KB / 0.962 | 242KB / 0.986 |
| 書影 | 236KB / 0.984 | 126KB / 0.980 | 189KB / 0.990 |
| スクリーンショット | 173KB / 0.988 | 101KB / 0.997 | 120KB / 0.999 |
| OGP画像 | 63KB / 0.991 | 30KB / 0.987 | 44KB / 0.994 |
※各セルは「ファイルサイズ / SSIM」
この表から2つのことが読み取れます。
▼quality 80で分かること
① WebP q80 はJPEG q80より小さいが、画質も低い。写真4点すべてでSSIMがJPEGを下回っている
② AVIF q80 は料理写真でJPEGより大きい(411KB対404KB)。ただしSSIMは0.985対0.971で明確に上
つまり「WebPにしたら3割減った」の少なくとも一部は、画質が下がったぶんです。そして「AVIFなのに大きくなった」と感じる人がいるのは、AVIFのquality 80がJPEGのquality 80よりずっと高画質側の設定だからです。
フォーマットをまたいで同じquality値を使う比較には、意味がありません。
スポンサーリンク
実測2:画質を揃えると本当の差が出る
結論:SSIM 0.98に到達する最小ファイルサイズで比べると、WebPのJPEG比は写真で13〜24%減にとどまり、AVIFは37〜41%減でした。
各フォーマットについて、SSIM 0.98以上になる最小のquality値を二分探索で求め、そのときのファイルサイズを比べました。
| 画像 | JPEG | WebP | AVIF |
|---|---|---|---|
| 料理のアップ | q88 / 540KB | q89 / 413KB | q74 / 337KB |
| 店内の風景 | q80 / 319KB | q88 / 267KB | q67 / 200KB |
| 物撮り | q88 / 313KB | q91 / 273KB | q72 / 185KB |
| 書影 | q73 / 199KB | q81 / 132KB | q49 / 70KB |
| スクリーンショット | q71 / 149KB | q22 / 53KB | q22 / 37KB |
| OGP画像 | q46 / 35KB | q52 / 19KB | q34 / 12KB |
JPEGを基準にした削減率にすると、こうなります。
| 画像 | WebP | AVIF |
|---|---|---|
| 料理のアップ | −24% | −38% |
| 店内の風景 | −16% | −37% |
| 物撮り | −13% | −41% |
| 書影 | −34% | −65% |
| スクリーンショット | −64% | −75% |
| OGP画像 | −46% | −66% |
写真だけを見ると、WebPの削減率は13〜24%です。「3割小さい」という通説より控えめでした。ディテールの細かい料理写真や物撮りほど、WebPの優位が縮みます。
一方AVIFは、写真でも一貫して37〜41%減。フォーマットの世代差がはっきり出ています。
実測3:スクリーンショットとイラストは別世界
結論:平坦な色面と文字が多い画像では、WebPがJPEGの3分の1以下になります。写真の常識をそのまま当てはめてはいけません。
スクリーンショットの行をもう一度見てください。SSIM 0.98に到達するのに、JPEGはq71で149KB必要なのに、WebPはq22で53KBしか要りません。同じ画質で64%の削減です。
▼なぜここまで差が出るのか
▶ JPEGは8×8ブロックごとの離散コサイン変換が基本で、文字の輪郭のような急な明暗差が苦手。モスキートノイズが出る
▶ WebP・AVIFはブロック内予測を持ち、平坦な領域や繰り返しパターンを効率よく表現できる
▶ そのぶん、ランダムなテクスチャ(料理の質感、布の織り目)では差が縮む
これは実務上かなり重要です。技術記事のスクリーンショットをJPEGで貼っているなら、WebPに変えるだけでファイルサイズが3分の1になり、しかも文字がにじまなくなります。写真の記事でWebPに変えるより、はるかに効果が大きい。
逆に言えば、「WebPにしたのに思ったほど減らない」と感じるなら、扱っている画像が写真だからです。それは正常な結果です。
スポンサーリンク
結論:ブログ写真はどれで保存すべきか
結論:2026年現在、迷ったらWebPで十分です。AVIFは「サイズを詰めたい大きな画像」に限って使うのが現実的です。
数字だけならAVIFの圧勝ですが、実運用では別の要素が効いてきます。
| 観点 | JPEG | WebP | AVIF |
|---|---|---|---|
| 同画質でのサイズ(写真) | 基準 | −13〜24% | −37〜41% |
| 同画質でのサイズ(UI・イラスト) | 基準 | −46〜64% | −66〜75% |
| ブラウザ表示対応 | すべて | すべて | ほぼすべて |
| ブラウザ上での書き出し | 可 | 可 | 不可 |
| エンコード時間 | 速い | やや遅い | かなり遅い |
AVIFの実務上の壁は2つあります。
ひとつは書き出しの手段が限られること。ブラウザのcanvasが持つtoBlob()で出力できるのはJPEG・PNG・WebPだけで、主要ブラウザはimage/avifでの書き出しに対応していません。ブラウザ上で完結する変換ツールがAVIFを出力できないのは、この制約のためです。
もうひとつはエンコードが遅いこと。今回の測定でも、AVIFの書き出しはJPEGの数十倍の時間がかかりました。1920pxの画像6点を各quality段階で書き出すだけで、全体が20分を超えています。数十枚をまとめて変換する用途では、この差が体感に直結します。
▼用途別のおすすめ
① ブログ本文の写真:WebP。サイズも表示互換性もバランスがいい
② スクリーンショット・図版:WebP一択。JPEGより3分の1近く小さく、文字もにじまない
③ ヒーロー画像など特に大きい1枚:AVIFを検討する価値がある
④ PNGのまま置いている図版:まずWebPにする。今回のOGP画像は629KB→19KBになった
なお、④は見落とされがちです。スクリーンショットをPNGのままアップロードしているブログは多いですが、今回のOGP画像はPNGの629KBがWebP 19KBまで落ちました。33分の1です。
ブラウザだけで変換する
ここまでの内容を実際に試すなら、変換ツールが要ります。このブログでは画像一括変換・圧縮ツールを公開しています。
▼このツールの仕様
▶ JPG・PNG・WebPを相互に変換。複数枚をまとめて処理してZIPで保存
▶ quality(1〜100)とリサイズ(長辺のピクセル数)を指定できる
▶ 画像はサーバーに送信されない。すべてブラウザの中で処理する
▶ 前述の理由でAVIF出力には対応していない
画像がサーバーに送られないという点は、仕事の資料や未公開の写真を扱うときに効きます。オンラインの圧縮サービスの多くは、ファイルを一度サーバーへアップロードしてから処理して返す仕組みです。
プリセットは「WebP quality 80・長辺1920px」を用意してあります。今回の測定を踏まえると、この設定は写真向けとしては妥当ですが、スクリーンショットにはかなり過剰です。UI画像を変換するときは、qualityを思い切って下げてみてください。
関連する記事
▶ 画像のqualityはいくつにすべきか|JPEGとWebPで10刻みに実測した…形式を決めたあとの品質設定
▶ MacでWebPファイルを快適に扱う Quick Look&変換方法…WebPをMacで開く・変換する方法
▶ Pythonで画像圧縮GUIアプリを作る…同じ処理をデスクトップアプリでやる場合
まとめ
同じquality値でフォーマットを比べても意味がありません。quality 80はJPEG・WebP・AVIFでそれぞれ違う画質を指しています。
画質をSSIM 0.98に揃えて実測した結果は次のとおりです。
▼実測のまとめ
① 写真:WebPはJPEG比13〜24%減。「3割減」は言いすぎ
② 写真:AVIFはJPEG比37〜41%減。世代差は本物
③ スクリーンショット・イラスト:WebPで46〜64%減、AVIFで66〜75%減。写真とは桁が違う
④ PNGの図版:WebP化の効果が最も大きい(629KB→19KB)
実務の結論としては、ブログ画像はWebPで十分です。AVIFは同画質でさらに2割ほど小さくできますが、ブラウザ上で書き出せず、エンコードも遅い。効果がいちばん大きいのは、写真をWebPにすることではなく、PNGのまま置いてあるスクリーンショットをWebPにすること——今回の測定でいちばんはっきりしたのはそこでした。
※測定はPillow 12.3.0のエンコーダによるものです。cwebpやavifencなど別のエンコーダ、あるいは設定を変えると数値は変わります。SSIMは知覚品質の近似であり、実際の見え方と完全には一致しません。