「Image was too large」の原因と対処 — Claude Code
Claude Codeに貼り付けた画像が「Image was too large」で弾かれる原因と、8000pxと2000pxの上限の使い分けをまとめます。
Claude Codeに画像を貼り付けて「Image was too large」と出た場合、原因はほぼ確実にサイズか解像度です。Claude APIが受け付ける画像には、辺の長さで決まる上限があります。1枚だけを送るなら長辺8000pxまで、会話に画像が何枚もたまっている状態では1枚あたり2000pxまでと、上限自体が状況で変わる点がこのエラーを分かりにくくしています。
Image was too largeとは何のエラーか
表示される文言は次のとおりです。
Image was too large. Double press esc to go back and try again with a smaller image.
API Error: 400 ... image dimensions exceed max allowed sizeほとんどの場合、原因は画像そのもののファイルサイズではなく、縦横のピクセル数です。高解像度ディスプレイでスクリーンショットを撮ると、見た目は小さくても実ピクセル数は数千pxに達することがあります。特にRetinaディスプレイや4Kモニターでは、画面の一部を切り取っただけでも長辺が上限を超えることが珍しくありません。
会話に画像が積み重なっている場合は、さらに条件が厳しくなります。1枚だけなら8000pxまで通る解像度でも、会話内にすでに複数の画像がある状態では、新しく貼る画像も含めて1枚あたり2000pxという基準に切り替わります。「さっきは通ったのに今回は同じような画像で弾かれた」という体験は、この切り替わりが原因であることがほとんどです。
ファイルサイズを圧縮しても直らない理由もここにあります。JPEGの圧縮率を上げてファイルを軽くしても、ピクセル数そのものは変わりません。公式ドキュメントが挙げている上限はサイズ・寸法の両方ですが、Claude Codeのエラーで実際に引っかかるのはほとんどが辺の長さです。スマートフォンのカメラで撮った写真やRetinaディスプレイの全画面キャプチャは、圧縮後のファイルサイズが数百KB程度でも、ピクセル数だけは軽く上限を超えていることがあります。なお、画像はBase64というテキスト表現に変換されてから送られるため、送信時のデータ量は元ファイルより約33%大きくなります。ただし辺の長さを半分にすればピクセル数はおよそ4分の1になるので、寸法を詰めるほうが送るデータ量の面でも効率的です。直すべきは「軽くすること」ではなく「小さくすること」です。
実務でよく踏むパターン
開発現場でこのエラーに当たる場面は、だいたい3つに絞られます。
- 4Kモニターやデュアルディスプレイの全画面キャプチャをそのまま貼る。1画面まるごとだと長辺が優に4000px超えになりやすく、単独でも8000pxに近づきます
- デザインカンプやFigmaの書き出しを等倍のまま貼る。印刷・高解像度出力向けに作られたPNGは、そもそも数千px単位が標準です
- 長時間セッションで画像を貼り続ける。序盤で通っていた解像度の画像が、会話が進むにつれて2000pxの基準に引っかかるようになる
いずれも「画像自体は正常に開ける」ため、壊れているのではとまず疑ってしまいがちですが、原因は寸法だけです。
すぐに試せる対処
原因が解像度である以上、対処の基本は画像を小さくすることです。
- 貼り付ける前に画像編集ツールやプレビューアプリでリサイズし、長辺を2000px程度に抑えておく
- 画面全体ではなく、確認してほしい領域だけをタイトに撮影し直す
- 会話にすでに画像が何枚もある場合は、直近で使っていない画像を
/compactや/clearで整理してから新しい画像を貼る
macOSならターミナルのsipsコマンドで、GUIを開かずに長辺を指定してリサイズできます。
sips -Z 2000 screenshot.pngWindowsやLinuxでImageMagickが入っている環境では、同じ操作をmagick(またはconvert)で行えます。
magick screenshot.png -resize 2000x2000 screenshot-small.pngエラーが出た直後の対処としては、Escを2回押して直前のターンまで戻り、リサイズした画像で貼り直すのが最短ルートです。
v2.1.142より前のバージョンでは何が違ったか
このエラー自体は初期のClaude Codeから存在しますが、失敗したときの挙動は何度か改善されています。
| バージョン | 挙動 |
|---|---|
| v2.1.0より前 | 挙動大きな画像を貼り付けると「Image was too large」で失敗していた(最初期からの既知の挙動) |
| v2.1.142より前 | 挙動エラーになった画像が会話に残り続け、以降のメッセージすべてで同じエラーが再発していた |
| v2.1.142以降 | 挙動処理できない画像を自動でテキストのプレースホルダーに置き換えて再送し、以降のメッセージは正常に通る |
v2.1.142より前のバージョンで詰まった場合、Escを2回押して画像を貼った直前のターンまで戻らないと、その後のやり取りすべてがこのエラーで止まり続けます。今のバージョンでは、処理できなかった画像がテキストのプレースホルダーに自動で置き換わるため、貼り直さなくても会話は先に進みます。同じエラーが何度も繰り返される場合、まず疑うべきはバージョンです。claude updateで最新にするだけで解消することがあります。
破損した画像やゼロバイトの画像を貼ってしまったときの挙動も、v2.1.157でさらに改善されています。それ以前はこうした画像がリクエストごとクラッシュさせる原因になることがありましたが、現在はほかの処理できない画像と同様にテキストのプレースホルダーへ置き換わり、会話全体が止まることはありません。
Claude.aiのチャット添付との上限の違い
同じ「画像が大きすぎる」という現象でも、claude.aiのチャット画面とClaude Codeでは上限の決まり方が違います。claude.aiのチャット添付は1ファイル500MBまで・画像は8000×8000pxまでという、ファイルサイズと解像度の両方で管理された上限です(詳しくはClaudeのPDF読み込み・画像解析の使い方とアップロード上限で扱っています)。
一方、Claude CodeのCLI・Desktopアプリ・Claude Code on the webで貼り付ける画像は、会話に何枚の画像がすでにあるかによって上限そのものが8000pxと2000pxの間で変わります。ファイルサイズの上限も別途存在しますが、Claude Codeでこのエラーに遭遇する場面では辺の長さがボトルネックになりやすい点がclaude.aiとの大きな違いです。
普段claude.aiとClaude Codeを行き来している場合、この違いに足をすくわれやすいところです。claude.aiで問題なく通っていた画像でも、Claude Codeの会話にすでに何枚か画像がある状態だと、同じファイルが弾かれることがあります。上限の基準がファイルサイズか辺の長さかを意識しておくと、どちらの画面でも切り分けが早くなります。
Unable to resize imageとの違い
似た場面で出る別のエラーに「Unable to resize image」があります。こちらは画像が大きすぎること自体が原因ではなく、Claude Code側の画像処理そのものが動かなかったときに出るエラーです。症状は似ていても対処が異なるため、「Unable to resize image」が出る原因と対処法で切り分け方を扱っています。エラーの種類そのものを一覧で確認したい場合はClaude Codeでよくあるエラー10選も参考になります。
よくある質問
同じ画像でも貼るタイミングで結果が変わるのはなぜですか
会話内にすでにある画像の枚数によって、適用される上限が長辺8000pxから2000pxへ切り替わるためです。会話の序盤では通った画像でも、他の画像を貼った後の会話では同じ画像が弾かれることがあります。
エラーが出た画像はどうなりますか
v2.1.142以降では、処理できなかった画像はテキストのプレースホルダーに自動で置き換わり、そのターン以降の会話は通常どおり続けられます。会話の見た目に画像自体は残らないため、必要であればリサイズしてから貼り直します。
スマホのスクリーンショットでも起きますか
起きます。高解像度端末の全画面キャプチャは長辺が数千pxに達することが多く、特に会話に画像が複数ある状態では2000pxの基準に引っかかりやすくなります。撮影後にOS標準の編集機能で切り抜き、必要な範囲だけをトリミングしてから貼るのが確実です。
画像を圧縮すれば通りますか
通らないことがほとんどです。圧縮率を上げてもピクセル数自体は変わらないため、このエラーの原因を直接は解消しません。sipsやmagickのようなツールで、辺の長さそのものを縮小する操作が必要です。
複数の画像を1枚にまとめて貼るのは有効ですか
有効な場面があります。複数のスクリーンショットを1枚のコラージュ画像にまとめれば、会話に含まれる「画像の枚数」自体を減らせるため、2000pxの基準に切り替わるタイミングを遅らせられます。ただし1枚あたりの縦横は結局長くなるので、まとめた後のサイズ確認は必要です。
まとめ
「Image was too large」は、ファイルサイズではなく画像の縦横ピクセル数が原因のエラーです。単独の画像なら長辺8000px、会話に画像が複数あるときは1枚あたり2000pxが基準になります。まずは範囲を絞った撮影とリサイズで元から小さく作ること、次に古いバージョンならアップデートを検討すること、この2つを押さえておけば大半のケースは避けられます。日常的に高解像度のスクリーンショットを扱うなら、貼る前にリサイズを挟む習慣にしておくのが一番の予防策です。