画像を20KB以下に圧縮

写真・画像を20KB以下に圧縮。申請書類・ショップ・掲示板の容量制限に合わせられます。

ここでの「20KB」は最大20 × 1,024 = 20,480バイトです。NerulioはJPG・WebPの候補を作り、それぞれ収まるまで画質を下げて探し、すべての候補を展開し直して元に最も近いものを残します。512 × 512のNASAの写真では、画質0.52のWebP、20,206バイト、SSIM 0.959でした。縮小を許可しなければ解像度はそのままで、元サイズのスマホ写真は縮小なしでは20KBを下回れません。フォームが20KBを20,000バイトと数えるなら、目標サイズに19と入力します。

画像をここにドロップ複数のファイルをまとめて処理できます
アップロードなし · この端末で処理

20KBはピクセルの予算

目標があると、非可逆形式ごとにまず段階の画質(バランスは0.80)でエンコードします。大きすぎれば0.05から0.80の間を8回半分に区切って探し、収まるうちで最も高い画質を残します。PNGは画質の探索をしません。20,480バイト以下の候補のうち、最小のものではなくSSIMが最も高いものが選ばれます。

20,480バイトは163,840ビットです。512 × 512のテスト写真に割り振ると1ピクセルあたり0.63ビットで、WebPでSSIM 0.96になりました。4032 × 3024のスマホ写真なら1ピクセルあたり0.013ビットで、どの画質でも届きません。そのときツールは最も小さい試行結果を「目標サイズに届きませんでした。サイズの縮小を許可してみてください。」と一緒に返します。

「目標に届かない場合はサイズも縮小」をオンにすると、前の幅の55〜85%ずつ、最大5回小さな幅を試します。小さい版は拡大し直してから採点するので、本当に元に近いときだけ勝ちます。テスト写真では435pxのWebPが0.9581、元のサイズが0.9593で、元のサイズが残りました。

KB
Nerulioの目標と表示では1,024バイト。1,000で数えるフォームもあります。
画質の探索
ファイルが収まるまで0.05と段階の画質の間を半分ずつ絞り込む処理。
サイズも縮小
任意。目標に届かないとき、より小さな幅を試させます。

NASAの写真を20KBに収める(実測)

バランス、自動形式、Chromium 153、2026-09-28。1ピクセルあたりのビット数は目標から計算した値です。

目標 20KB = 20 x 1,024 = 20,480 バイト

astronaut.png   512 x 512   791,555 バイト
  WebP  q0.516   20,206 バイト   SSIM 0.9593   <- 採用
  JPG   q0.293   20,117 バイト   SSIM 0.9463
  PNG           575,694 バイト   目標超過
縮小を許可: 最良の小さい版 435 x 435 WebP、SSIM 0.9581(不採用)

予算  163,840 ビット / 262,144 ピクセル    = 1ピクセル 0.63 ビット
      163,840 ビット / 12,192,768 ピクセル = 1ピクセル 0.013 ビット(4032 x 3024)

ここで0.96程度になった密度なら、20KBに入るのは約0.27メガピクセル、4:3の写真で約595 × 446です。スマホ写真は先にサイズ変更でその大きさにするか、縮小を許可します。20,206バイトは20,000を超えている点にも注意してください。

フォームの上限ごとの入力値

フォームの表記入力する目標サイズ最大のファイルサイズ
20KB(1KB = 1,024バイト)20(プリセット)20,480 バイト
20KB(1KB = 1,000バイト)1919,456 バイト
20KBでJPG必須20、保存形式JPGテスト写真でJPG q0.293、20,117 バイト(SSIM 0.9463)
20KB以下でピクセルサイズも指定(例:証明写真)そのサイズに縮小してから20ピクセルを減らして画質を上げる

結果の確認

  • アップロード前にファイル管理ソフトで正確なバイト数を確認します。結果一覧では20,206バイトが「20 KB」と丸めて表示されます。
  • ファイルを100%で開きます。顔・目・小さな文字に20KBの限界が最初に出ます。
  • 拡張子を確認します。自動では .webp になることがあり、多くのフォームは .jpg を求めます。

トラブルシューティング

症状考えられる原因確認方法対処
「目標サイズに届きませんでした」画質0.05でも20,480バイトに対してピクセルが多すぎるファイルの下の警告「目標に届かない場合はサイズも縮小」をオンにするか、先に幅600px程度に縮小します
フォームが20KBのファイルを大きすぎると言うフォームが1KBを1,000バイトで数えているファイルのプロパティで例:20,206バイト目標サイズに19を入力します(最大19,456バイト)
結果が.webpなのにフォームは.jpgを求める点数が高かったため自動がWebPを選んだ名前が -min.webp で終わる詳細 → 保存形式 → JPG
顔がブロック状・文字が読めないこのピクセル数で20KBだと画質を大きく下げるしかない100%で拡大切り抜きで必要な部分だけ残すかサイズを縮小してから、もう一度圧縮します

ほかの方法

方法こんなときに向いています
50KB以下に圧縮フォームがもっと許す場合。50KBでは同じ写真が画質0.80を保ちました。
表示サイズに先にサイズ変更フォームが決まったピクセルサイズ(例:小さな証明写真)で表示するなら、それを超えるピクセルは無駄なバイトです。

この方法の限界

  • 点数は長辺最大512pxのコピーで計算するため、大きなスキャン画像の小さな文字の劣化を見逃すことがあります。
  • エンコーダーはブラウザのものなので、同じ目標でも別のブラウザではバイト数が少し変わることがあります。

バージョンと出典

2026-09-28にPlaywright Chromium 153で、src/task/compress.js が ?kb=20 に渡す設定(画質0.80、自動、背景 #ffffff)のまま、縮小の有無を切り替えて src/compression.js を呼び出し、tests/fixtures/astronaut.png とそのPillow製JPGで計測しました。

参照した公式ドキュメント

画像を20KB以下に圧縮

20KBに収まるまで品質・形式の候補を作り、実際の結果を再度開いて画質(SSIM)を比べ、最良のものを選びます。保存前に実際の容量を確認できます。

解像度は原則そのまま。どうしても収まらない場合だけ、縮小を自分でオンにしてください。

ファイルはサーバーにアップロードされず、このブラウザ内だけで処理されます。

使用例

元の図形サンプル · 96 × 64
元の図形サンプル · 96 × 64
処理後のサンプル · 96 × 64
処理後のサンプル · 96 × 64

このツールで作成した例です。ZIPツールはプレビューを表示します。すべてのファイルはダウンロードしたZIPで確認してください。

画像を圧縮

目標容量を設定し、実際の結果を確認。

使い方

  1. 元ファイルを開く
  2. 処理方式と設定を選ぶ
  3. 実行して結果を確認し保存

対応形式

PNG / JPG / WebP / AVIF / HEIC → PNG / JPG / WebP — 読み込み・書き出しはブラウザの対応状況によります。 アニメーション入力は非対応です。静止フレームを選択してください。

このツールでできること

Autoが実際のコーデック出力の標本品質を比較し目標容量を探索します。透過を考慮し、任意でサイズを縮小。

処理方式と検証状況

advanced · browser codecs / proxy SSIM candidate search. 品質検証中です。Pro・Flagship水準はまだ実証されていません。

書き出す前に

端末のメモリ・保存容量・コーデック対応によります。テスト例はすべてのファイルの動作保証ではありません。

よくある質問

対応サイズは何で決まりますか?

端末のメモリ・保存容量・コーデック対応によります。テスト例はすべてのファイルの動作保証ではありません。

ファイルはアップロードされますか?

このツールで開いたファイルはアップロードせず端末で処理します。コミュニティの投稿に明示的に添付する画像は別途アップロードされます。一部のエンジンやモデルは外部から取得するため、IPアドレスなどの接続情報は配信元に伝わります。

作業は自動保存されますか?

いいえ。画像と編集状態はこのタブに保持され、メディア出力は端末の一時保存を利用する場合があります。言語を変えても作業は残りますが、再読み込み、タブを閉じる操作、別のページへの移動で失われることがあります。