CompressGIFs
100%ブラウザ内処理・アップロードなし

指定したファイルサイズにぴったり合わせるGIFコンプレッサー

目標サイズを入力するか、プラットフォーム別プリセットを選ぶだけで、コンプレッサーがぴったりの設定を自動で見つけます。手探りの画質スライダーもアップロードもファイル数の制限もありません。

本当に目標サイズに到達するGIFコンプレッサー

インターネット上のファイル共有ツールはどれも、GIFの許容サイズについて独自のルールを持っています。Discordはチャットのアップロードに上限を設け、SlackとDiscordはどちらもカスタム絵文字のサイズを制限し、WhatsAppは厳しいサイズ制限内のアニメーションスタンプしか受け付けず、メールの添付ファイルも思ったより早く弾かれてしまいます。つまり「このGIFを圧縮したい」というのはほとんどの場合、本当の目的ではありません。本当の目的は「このGIFを特定の数値以下に収めたい」ということであり、それはまったく別の問題です。世の中の多くのGIFコンプレッサーは1〜100の画質スライダーを渡すだけで、あとは試行錯誤に任せます。スライダーを動かし、書き出し、ファイルサイズを確認し、十分小さくなるまで繰り返す。時間がかかるうえ、圧縮しすぎてぼやけた縞模様だらけの仕上がりになりやすく、実はもっと軽い調整で済んだはずのケースも少なくありません。

このGIFコンプレッサーは、その手順を逆にしました。目標サイズを伝えるだけ — プラットフォーム別プリセットを選ぶか、KB単位で自分の数値を入力するだけで、あとは探索を代わりに実行します。単なる再エンコーダーではなく、正真正銘のGIFオプティマイザーです。まず最も影響の少ない変更(ロッシー圧縮)から試し、それでも足りなければカラーパレットを削減し、最後の手段としてのみ実際のピクセル寸法をリサイズします。寸法の変更はGIFの見た目を最も損なう変更だからです。結果として、元のGIFの見た目をできる限り保ちながら、本当に必要だったサイズに、1回の処理でぴったり収まります。

GIFを圧縮する手順

  1. 上のボックスにGIFをドロップするか、クリックして選択します — 複数まとめてバッチ圧縮したい場合はフォルダごとでも構いません。
  2. プラットフォーム別プリセット(Discord絵文字、Slack絵文字、X用GIFなど)を選ぶか、「カスタムサイズ」を選んでKB単位で目標を入力します。
  3. コンプレッサーはブラウザ内で完結し、ロッシー圧縮、次にカラー数、最後に寸法の順に探索して、目標サイズを下回るまで調整します。
  4. 結果をダウンロードするか、「続けて圧縮する」を押して次のファイルへ — 1日の制限もアカウント登録も不要です。

すべてWebAssemblyを使ってクライアント側で処理されるため、ドロップしたファイルが端末の外に出ることはありません。つまり、入力ファイルサイズに実質的な上限はなく、1回のセッションで何度使っても回数制限もありません。オンラインでGIFを何度でも無料でリサイズでき、3回目で急に課金画面が出てくることもありません。

Discord・Slack・WhatsApp・X向けにGIFを圧縮する

上記のプラットフォーム別プリセットはおおまかな目安ではありません。それぞれ各プラットフォームの最新の公式ドキュメントを確認したうえで設定されており、他のGIFツールから数値をコピーしたものではありません。特によく使われるものをいくつか紹介します。

  • Discord絵文字 — カスタム絵文字は256KB未満に収める必要があり、アニメーションGIFに対応しています。多くの人がDiscord用GIFコンプレッサーを探し始める、最も多い理由がこれです。
  • Discordスタンプ — 512KBが上限で、キャンバスは320x320pxちょうどに固定されています。さらにDiscordはアニメーションスタンプにGIFではなくAPNGを要求するため、どれだけ小さくても普通の.gifアップロードはここで失敗します。アップロード前にDiscordスタンプチェッカーでこのルールに沿っているか確認しましょう。
  • Discordのチャットアップロード — Discordの最新ドキュメントによると、Nitro未加入アカウントでも1ファイルあたり20MBまで利用でき、いまだにネット上でよく見かける旧来の8MBという数値よりずっと寛容です。
  • Slackのカスタム絵文字 — Slackは128KB未満の正方形画像を推奨しており、アニメーションGIFにも対応しています。
  • WhatsAppスタンプ — アニメーションスタンプは512x512pxちょうど、かつ500KB未満である必要があり、WhatsAppはGIFではなくWebPしか受け付けません。このプリセットはリサイズと変換を1ステップで行うため、WhatsAppに拒否されるファイルを渡してしまう心配がありません。
  • X(Twitter)のGIF — アニメーションGIFはアップロード時最大15MBまで対応していますが、Xの公式ドキュメントでは5MBを超えるとモバイルで失敗する場合があると注意されています。

アップロード前にファイルが本当に通るか不安な場合は、適合チェッカーにかけてみてください。サイズ・寸法・形式をまとめてチェックし、問題があれば具体的に何が原因かを教えてくれるので、DiscordやWhatsAppに実際に拒否されてから気づく必要がありません。

圧縮・リサイズ・変換 — あなたに必要なのはどれ?

この3つは同じ意味で使われがちですが、実際には異なるものを変更します。圧縮(Compressing)はGIFのピクセル寸法をそのままに、色深度を減らしロッシー圧縮を加えることでファイルサイズを縮小します。プラットフォームがファイルサイズの上限だけを求め、ピクセル寸法は気にしない場合に使います。リサイズ(Resizing)は実際の幅と高さを変更するもので、プラットフォームが正確なキャンバスサイズ(Discordスタンプなら320x320px、WhatsAppスタンプなら512x512px)を要求する場合に必要です。専用のGIFリサイザーなら、欲しい数値がすでに分かっている前提で、サイズ探索を行わずに寸法計算だけを行います。変換(Converting)はファイル形式そのものを変えるもので、特に知っておく価値があるのはGIFからWebPへの変換です。アニメーションWebPは同じ見た目の品質でもGIFより明らかに小さく圧縮できます。プラットフォーム(あるいは自分のウェブサイト)がGIFの代わりにWebPを受け付ける場合は、GIF→WebPコンバーターが対応します。

画質を犠牲にせずGIFを小さくする方法

見るからに圧縮された感じにならずにGIFのファイルサイズを減らしたいとき、実際に効果があるポイントがいくつかあります。

  • まずフレーム数を削る。 数秒長すぎるだけのGIFは、削減コストが最も低いことが多いです。画質設定に手を付ける前でも、短くタイトなループのほうが圧倒的によく圧縮されます。
  • ロッシー圧縮に主な仕事を任せる。 フレーム間の冗長なピクセルデータを取り除く方法で、通常は最も見た目への影響が少ない縮小方法です。このコンプレッサーは色や寸法に触れる前に、必ずこれを最初に試します。
  • ピクセルを削る前に色を削る。 GIFはもともと最大256色までしか対応していないため、128色や64色まで落としてもほとんど目立たないことが多く、特にフラットなイラスト風アニメーションでは顕著です。それでいて実際のファイルサイズはしっかり削減できます。
  • リサイズは最初の手段ではなく最後の手段に。 寸法を縮小するのは目標サイズに到達する最も手っ取り早い方法ですが、見た目への影響も最も大きい変更です。ロッシー圧縮と色数の削減だけでは本当に足りないときのために取っておきましょう。

これらを手動で意識する必要はありません。上の目標サイズ探索は、すでにこの順番どおりに自動で適用しています。ただ、なぜその仕上がりになるのかを知っておくと役に立ちます。

よくある質問

このGIFコンプレッサーはどうやって画質設定を決めているのですか?

目標サイズを入力する(またはプラットフォーム別プリセットを選ぶ)と、出力がそのサイズを下回るまで圧縮設定を二分探索します。まずロッシー圧縮、次にカラー数、それでも大きすぎる場合は小さくリサイズします。スライダーを手探りで動かす必要はありません。

ファイルサイズや圧縮できるGIFの数に制限はありますか?

ありません。すべてWebAssemblyを使ってブラウザ内で処理されるため、サーバー側の上限も1日あたりの制限もありません。フォルダごとドロップして、無料でまとめてバッチ圧縮できます。

私のGIFはどこかにアップロードされますか?

されません。圧縮はすべて端末上で完結します。ファイルがブラウザの外に出ることはなく、それゆえファイルサイズの上限やアカウント登録も不要です。

GIFの「圧縮」と「リサイズ」の違いは何ですか?

圧縮は元の寸法を保ったまま、主にカラー数を減らし制御されたロッシー圧縮を加えることでファイルサイズを縮小します。リサイズはピクセル寸法そのものを直接変更します。寸法を小さくしたいだけなら、専用のGIFリサイザーを使えばサイズ探索のステップをまるごと省けます。

GIFを5MBや500KBのようにぴったりのサイズに圧縮できますか?

できます — それこそがこのツールの目的です。カスタムサイズ欄に任意の数値(KB単位)を入力するか、すでにプラットフォームの上限に合わせたプリセットを選べば、出力がその数値を下回るまでコンプレッサーが自動で調整を続けます。画質パーセンテージを推測して祈る必要はありません。

GIFを圧縮すると見た目が悪くなりますか?

GIFを元のサイズのごく一部まで圧縮する以上、多少の画質低下は避けられません。そもそもGIFは256色までしか扱えないためです。このコンプレッサーは、指定した目標に対してできる限り劣化を抑えるよう設計されています。寸法に手を付ける前にロッシー圧縮とカラー数の削減を優先します。リサイズは体感画質への影響が最も大きい変更だからです。

同じアニメーションなら、GIFとWebPどちらが小さくなりますか?

アニメーションWebPは、同程度の画質であればほぼ常にアニメーションGIFより小さくなります。対応できる色数が多く、フレーム間圧縮も優れているためです。WhatsAppのスタンプのようにWebPに対応しているプラットフォームでは、GIFを圧縮するよりも変換したほうが効果が大きいことが多く、このツールでもその変換に対応しています。

送信前にスマートフォンでGIFを小さくできますか?

できます。このコンプレッサーは普通のウェブページなので、iPhoneのSafariでもAndroidのChromeでも、デスクトップと同じように動作します。タップしてファイルを選ぶか、共有シートからGIFを送り込めば、サーバーに何も送信することなくその場でスマートフォン上で圧縮されます。

PhotoshopでGIFを圧縮できますか?

できます。Photoshopは「Web用に保存」で画質を下げてGIFを書き出せますが、ぴったりのファイルサイズを直接指定する方法はありません。画質スライダーを動かして書き出し、結果を確認し、望みのサイズに近づくまで繰り返すことになります。すでにPhotoshopを開いていて、その手間を気にしないならそれでも構いません。数値を入力するだけで正しいサイズを返してほしいなら、このコンプレッサーがブラウザ上で同じような探索を自動でやってくれます。Photoshopのライセンスも不要です。

Premiere ProやAfter EffectsでGIFを圧縮するにはどうすればいいですか?

どちらのソフトもこの用途にはあまり向いていません。Premiere ProもAfter Effectsもレンダーキューを通してGIFを書き出せますが、ファイルサイズは成り行き任せで、目標サイズを指定する欄がありません。特定の上限に収めるには、書き出してサイズを確認し、ビットレートやフレームレートを調整して再度書き出す、という作業になります。GIFがもともとそれらのアプリでの映像プロジェクトから生まれたものならこの流れも理にかなっていますが、すでに完成した.gifファイルがあって、ただ小さくしたいだけなら、レンダーキューを使わず専用のGIFコンプレッサーに直接かけたほうが早いです。

Adobe Media EncoderでGIFを圧縮できますか?

手動でビットレートを調整すれば、映像素材からアニメーションGIFを書き出すことはできますが、これは映像からの書き出しを想定したもので、すでに存在するGIFを縮小する用途ではありません。すでに.gifファイルを手元に持っているなら、それをMedia Encoderに再度通すのは、専用のGIFコンプレッサーが直接やってくれることを遠回りに行っているだけです。プロジェクトファイルもAdobeのサブスクリプションも必要ありません。

CanvaでGIFを圧縮できますか?

あまりできません。CanvaにはGIF圧縮専用の機能がなく、そのGIF書き出しはCanva内で作成したデザイン向けのものであり、すでに手元にあるGIFファイルを小さくするためのものではありません。完成したGIFがすでにあり、ファイルサイズを小さくしたいだけなら、その一つの目的のために作られた専用のコンプレッサーのほうが早道です。

HandBrakeでGIFを圧縮できますか?

直接はできません。HandBrakeはMP4やMKVといった映像フォーマットを中心に作られており、アニメーションGIFは対応する出力形式に含まれていません。これを探している人の多くは、HandBrakeのような「目標を指定すればツールが設定を決めてくれる」というアプローチを求めています。それはまさに、映像ではなくGIF専用に、目標サイズ指定型のGIFコンプレッサーが行っていることです。

MacでGIFを圧縮するにはどうすればいいですか?

他のパソコンと同じ方法です。これはMac専用でもWindows専用でもない、普通のウェブページとして動作します。MacのSafariやChromeで開き、GIFをドロップするかクリックして選択すれば、Mac自身のブラウザを使ってその場で圧縮されます。App Storeから何かをインストールする必要も、特定のOSに縛られることもありません。

AndroidでGIFを圧縮するにはどうすればいいですか?

スマートフォンのChromeでこのページを開き、ドロップゾーンをタップしてファイルを選ぶか、共有シートからGIFを直接送り込めば、デスクトップと同じように端末上で圧縮されます。Playストアからアプリをインストールする必要はなく、端末の外に何も出ないためアップロード待ちもありません。

GIFの圧縮は実際どういう仕組みで動いていますか?

GIFは実質的に、フレームの集まりと限られたカラーパレットでできています。そのため縮小するには、このどちらかに手を加えることになります。ロッシー圧縮は近くのフレーム間で繰り返されるピクセルデータを見つけ、その冗長な部分を取り除きます。これは通常、最も見た目への影響が少ない容量削減方法です。カラーパレットの削減は、GIFがもともと最大256色までしか使えないことを利用し、各ピクセルが取り得る値の数を減らすことでさらにサイズを削ります。この2つを十分に押し進めたあとで初めて、実際の寸法のリサイズが検討されます。幅と高さを縮小することは、GIFの見た目に最も目立つ変化を与えるためです。

GIFは圧縮されているのですか、それとも無圧縮なのですか?

GIFは常にある程度圧縮されています。このフォーマットはLZWという可逆(ロスレス)アルゴリズムを基盤としており、画質を一切損なわずにファイルを縮小します。ZIPファイルの仕組みに近い考え方です。人々が普段「GIFを圧縮する」と言うとき、実際にはそれに加えて何か別のこと — ロッシー圧縮、カラーパレットの縮小、あるいはリサイズを指しています。これらはいずれもファイルを小さくする代わりに多少の画質を犠牲にします。GIF自体の組み込み圧縮だけでは、厳しいプラットフォームの上限に到達するには不十分であり、それこそがGIFコンプレッサーが存在する理由です。

ロッシーGIF圧縮とは何ですか?

ファイルを小さくするために、一部のピクセルデータを完全に破棄することをコンプレッサーに許可する、という意味です。GIF本来の可逆なLZW圧縮だけに頼るのではありません。LZW圧縮は、見た目を変えずに縮小できる範囲にはっきりとした限界があります。実際にはこれは、ほとんど目立たないフレーム間のわずかな違いを均すような処理になることが多く、そのためGIFへのロッシー圧縮は、ファイルサイズが目に見えて小さくなっても元とほぼ同じに見えることが多いのです。これは可逆圧縮の対極にあります。可逆圧縮は見た目の変化がないことを保証しますが、それほど多くの容量は削減できません。

Discord向けにGIFを圧縮するにはどうすればいいですか?

Discordの制限は、GIFをどこにアップロードするかによって異なります。カスタム絵文字は256KB未満に収める必要があり、アニメーションスタンプはそもそもGIFではなくAPNGでなければならず、通常のチャットアップロードはNitro未加入アカウントでもずっと寛容な20MBまで対応しています。アップロード先に合わない制限を選んでしまうことが、GIFが拒否される最も多い原因です。上のDiscord絵文字プリセットはすでに256KBを直接の目標としていますし、Discordの各種制限に完全に特化したバージョンが必要なら、専用のDiscord向けGIF圧縮ページも用意しています。

なぜプラットフォームは「小さめに」ではなく256KBのような具体的な数値を要求するのですか?

こうした制限は、たいていの場合そのプラットフォームの固定されたストレージや帯域幅の予算から来ており、単なる大まかな目安ではないからです。Discordの絵文字上限256KBやWhatsAppのスタンプ上限500KBは、それらのプラットフォームがファイルを保存・配信する仕組みに組み込まれた正確な数値であり、260KBのGIFも2MBのGIFも同じように拒否されます。だからこそ画質スライダーはこの用途にはとても扱いにくいツールなのです。求めているのは「もっと小さく」ではなく「特定の数値」であり、このコンプレッサーが曖昧な画質パーセンテージではなく目標サイズを直接受け付ける理由もそこにあります。

GIFは元の見た目を保ったまま、実際どこまで小さくできますか?

もともとのGIFにどれだけの動きと色のばらつきがあるかに大きく左右されます。短くシンプルで、ほぼ単色に近いアニメーションなら、ほとんど見た目を変えずにサイズを80パーセント削減できることも珍しくありません。一方、写真のように細部が多く動きの速い長めのクリップは、同じ削減率に達するかなり手前の段階でバンディングやぼやけが目立ち始めます。決まった下限があるわけではなく、コンプレッサーは設定した目標に到達しようとロッシー圧縮、カラー数、寸法の順に押し進めていきますが、どこかの時点で、十分小さな目標には目に見えるトレードオフが必ず必要になります。これはGIFフォーマット自体の限界であり、より優れたツールでも回避できるものではありません。

圧縮してもGIFがほとんど小さくならなかったのはなぜですか?

多くの場合、そのGIFがもともとかなり効率的だったからです。短くシンプルで色数の少ないアニメーションには、絞り出せる冗長なデータがあまり残っておらず、どのツールで圧縮しても縮められる量には自然な下限があります。また、そのGIFがすでに一度別のコンプレッサーを通っていた場合にも起こり得ます。その最初の処理ですでに画質を犠牲にして、削減しやすい部分の多くを使い切ってしまっているためです。それでも特定の目標サイズに到達しない場合、このコンプレッサーは1回の処理で止まる単純な画質スライダー方式のエクスポートとは違い、自動でカラー削減、さらに小さなリサイズへと進み続けます。

GIFを1MB以下に圧縮するにはどうすればいいですか?

上の「カスタムサイズ」を選び、KB欄に1000と入力してください(1MBは1000KBです)。そのあとGIFをドロップします。コンプレッサーはいつもと同じロッシー圧縮 → カラー → リサイズの順の探索を、その数値を目標に実行します。1MBはDiscordやWhatsAppのより厳しい上限に比べればかなり余裕のある目標なので、たいていの一般的なGIFはほとんど目に見える画質劣化なくその範囲に収まります。

GIFを5MBや10MBまで圧縮できますか?

どちらの場合も同じカスタムサイズ欄を使い、5000または10000(KB単位で5MBまたは10MB)を入力すれば、コンプレッサーがその数値を直接の目標にします。どちらもすでにプラットフォームが許容している範囲に近く(XのGIFアップロード上限は15MB、DiscordのNitro未加入チャットアップロードは20MB)、5MBや10MBまで縮小すればよいGIFはたいてい元からそれに近いため、1回のロッシー圧縮だけで、色や寸法に触れることなく到達できます。

これは本当のGIFミニマイザーですか、それとも名前が違うだけの画質スライダーですか?

正真正銘のサイズ指定型コンプレッサーです。「GIFミニマイザー」「ファイルサイズ削減ツール」「GIFオプティマイザー」はどれも、ファイルを小さくするという同じ仕事を指していますが、そうした名前のツールの多くは今でも画質パーセンテージを手探りで決めて結果を確認させます。このツールは、あなたが求める正確な数値を受け取り、それに到達する設定をブラウザ内で無料・登録不要・1日の制限なしで探し出します。

画質を一切落とさずにGIFを圧縮するにはどうすればいいですか?

本当にロスレスなのは、GIF本来の組み込みLZW圧縮だけです。1ピクセルも変えずにある程度ファイルを縮小してくれ、このコンプレッサーは常にまずこれを無料で適用します。それを超えてさらに縮小する場合(ロッシー圧縮、色数の削減、寸法の縮小)は、必ず何らかの画質とサイズのトレードオフが発生します。LZWの余地を使い切ったあとはこれを避ける方法はありません。あなたがコントロールできるのはその「程度」です。ここでの探索は常に最も目立たない選択肢から試すため、「画質劣化ゼロ」はある程度のサイズを超えると実現できませんが、「ほとんど気づかないレベル」であれば通常は達成できます。

WhatsAppは実際どのくらいのGIFサイズまで許容していますか?

何を送るかによります。通常のWhatsAppチャットで共有するGIFは、WhatsAppの通常のメディア制限に従うだけで、GIF専用の上限はありません。一方アニメーションのWhatsAppスタンプはより厳しく、ちょうど512×512px、500KB未満、かつWebP形式のみに限られます。普通の.gifはそのまま拒否されます。上のWhatsAppスタンプ用プリセットは、リサイズとGIFからWebPへの変換を1ステップでまとめて行うため、その拒否を避けられます。

Slackの絵文字用にGIFを圧縮できますか?

できます — Slack自身のヘルプドキュメントでは、カスタム絵文字には128KB未満の正方形画像を推奨しており、アニメーションGIFにも対応しています。上の「カスタムサイズ」を選び、KB欄に128と入力すれば、このコンプレッサーは他のどのプラットフォームプリセットとも同じ方法でその数値以下に収めます。結局のところこれは単なるファイルサイズの目標指定であり、Slack専用のモードというわけではありません。