【失敗談】Cursorの利用枠を約7,300万トークンで50%消費|キャッシュリードの原因と対策

【失敗談】Cursorの利用枠を約7,300万トークンで50%消費 キャッシュリードの原因と対策
Tomoya

こんにちは。個人開発ブログ「tomyunser.com」の運営者です。

Cursor Proの利用枠を、1回の作業で50%も消費してしまいました。

原因は、入力や出力のトークンではなく、単価が安いからと気にしていなかった「キャッシュリード」。

29回の依頼で、読み込み量は約7,200万トークンに積み上がっていました。

入力と出力のトークン量には気をつけているつもりだった私と同じように、キャッシュリードまでは見ていない方も多いのではないでしょうか。

この記事では、何が起きたのかと、同じ失敗を防ぐために私が決めたルールをまとめます。

この記事の結論
  • 原因:キャッシュ済みの文脈を読み直す「キャッシュリード」が、約7,200万トークンに積み上がった
  • 規模:29件の依頼で、API料金換算は約20〜25ドル。利用枠の約50%を消費した
  • 対策:依頼は2つまで/利用枠の20%でいったん止まる/作業ごとに新しいチャットを始める

この記事でいう「利用枠」は、Cursorの利用状況ページ(Usage)に表示される、月ごとのモデル利用量の枠のことです。


目次

作業環境と経緯

Tomoya

まずは当時の私の作業環境と経緯について説明します。

当時の作業環境(使ったモデルとスキル)

項目内容
プランCursor Pro
メインモデルGLM 5.3(推論レベルはMax)
サブエージェントGrok 4.7(high)
スキルpstackの「poteto-mode」
GLM 5.3

Z.aiのコーディング向けモデルです。比較的低コストで使える万能モデルとして、普段から頼りにしていました。

Cursorの公式ドキュメントによると、推論レベルはLow・High・Maxの3段階で、標準はHighです。

Tomoya

テーブルは最大のMaxで使っていました(旧プランの「Max Mode」とは別の設定です)。

単価は、100万トークンあたりInputが$1.4、Cache Readが$0.26、Outputが$4.4です。

スキル

Lauren Tanさん(poteto)が作成したCursor向けスキル集「pstack」の中の「poteto-mode」を使っていました。

私の理解では、タスクに合わせた手順書を選び、必要に応じてサブエージェントも使いながら、計画から検証までを段階的に進めてくれるスキルです。抜け漏れなく進めてくれる、頼りにしていた切り札でした。

なお、Cursorの公式ドキュメントでは、サブエージェントのGrok 4.7は別枠の「Cursor Models」に分類されています。今回大きく増えたのは、サードパーティモデルの枠(公式表記は「Other Models」。

私は「フロンティアモデルの枠」と呼んでいます)で、中心はGLM 5.3でした。

何を頼んだのか(経緯)

この日は、パフォーマンスに関する技術的負債の改善やサイトの整理に関する要件を、5つほどまとめて依頼しました。どの要件も細部が固まっておらず、「低コストのモデルだから任せてしまおう」と軽い気持ちで頼んだのが、最初の間違いでした。

私は普段からpoteto-modeやGLM 5.3をよく使っていたので、利用枠が増えても10〜20%くらいだろうと甘く見ていました。ところが確認してみると、月の利用枠の半分(50%)を消費していました。

日別利用量グラフで10月4日のモデル別トークン消費割合がポップアップ表示された画面
日別のトークン利用量グラフで10月4日の詳細を表示し、モデルごとの消費数と割合を確認している画面です。

原因は「キャッシュリード」の積み上がりでした

原因を調べるため、Cursorの利用履歴(CSV)をエクスポートして、モデルごとに集計しました。

同じ手順で、ご自身の利用状況も確認できます。

STEP
利用状況ページ

(cursor.com/dashboard/usage)を開く。エディタの設定画面でも、各枠の消費量を確認できます。

サイドメニューの「Usage」項目が強調された利用状況ダッシュボード画面
左側メニューの「Usage」を選択して、全体の総トークン数や日別の利用履歴グラフを表示した画面です。
STEP
利用履歴をCSVでエクスポートする。
Cursorの管理画面で「Export CSV」ボタンを押し、ダウンロード用リンクが表示された画面
Cursorの管理画面右上にある「Export CSV」ボタンをクリックすると、CSVファイルのダウンロードリンクと案内が表示されます。
STEP
モデルごとに集計し、Cache Readの列に注目する。
スプレッドシートに出力されたログデータ。Date、Kind、Modelなどの列にgrok-botの利用履歴が一覧表示されている状態
エクスポートしたCSVファイルをスプレッドシートで開くことで、各実行日時や使用されたModelなどの詳細なログを確認できます。

2026年10月4日の作業分を集計した結果が、次のとおりです。

項目内容
対象モデルGLM 5.3(CSV上の表記は glm-5.3-max)
履歴の件数29件
Cache Read71,833,969トークン(約7,183万)
Input / Output1,472,849トークン(約147万)
合計73,306,818トークン(約7,330万)

Cache Readは、Input/Outputの合計の約49倍でした。

Tomoya

たった29件で、約7,200万トークン…?

キャッシュリードとは?

AIは、作業の1ステップごとに、これまでの会話や読み込んだファイルをもう一度読み直しています。

保存済み(キャッシュ)の部分を読む分が「キャッシュリード」です。

本を最初から読み直してから1行だけ書き足す作業を、何十回も繰り返すイメージです。

単価は安い一方で、読み込み量は「ステップ数 × 文脈の長さ」で積み上がります。

たとえば、文脈が約10万トークンの状態で作業が25ステップ進むと、読み込みだけで250万トークンです(あくまで計算上の例です)。

「1件あたり約250万トークン」の意味

29件の平均は、1件あたり約250万トークンでした。ただ、GLM 5.3のコンテキスト上限は1Mトークン(公式ドキュメント)なので、250万トークンを一度に送ったわけではありません。

1件の作業の中でAIが何度もステップを踏み、そのたびに履歴を読み直した合計だと考えられます。

今回、ステップが増えた理由は2つあると考えています。

  • 不明確な要件が5つあり、確認と検証の回数が増えた
  • poteto-modeが計画と検証を段階的に進め、サブエージェントも動かした

単価が安くても、量が大きいと総額は大きくなる

GLM 5.3の単価で計算すると、今回の消費はAPI料金換算で約20〜25ドル(1ドル=160円で約3,300〜4,000円)です。

Input/Outputの内訳で幅が出るため、範囲で示しています。Cursorでは、サードパーティモデルの枠はモデルのAPI価格で消費される仕組みです(公式ドキュメント)。

項目トークン数単価(100万あたり)概算
Cache Read71,833,969$0.26約$18.7
Input / Output1,472,849$1.4 / $4.4約$2.1〜$6.5
合計73,306,818—約$20.7〜$25.2

費用の約7〜9割が、キャッシュリードでした。単価が安いことと、総額が安いことは別でした。

Tomoya

気になる追加料金は、約$6程でした。

この分はクレジットを持っていたのでそこで相殺されてオンデマンドにはなりませんでした。

Cursorでは、枠を超えるとオンデマンド(同じAPI単価の従量課金)を追加するか、プランを上げるかを選ぶ仕組みです。

補足: 履歴に『Free』と表示されていた分について

履歴には、コストが「Free(0円)」と表示された行がありました。私の場合、手持ちのクレジットが消えていたため、この分はクレジットで充当されたものと考えています。【約$6:減ったクレジット額】

Cursor公式にこの表示の説明は見つけられていないので、あくまで私の推測です。そのため、利用枠の50%という数字は、実質的な消費の一部しか表していない可能性があります。


次回からの対策(6つのルール)

今回の学びを、「依頼の出し方」と「運用・環境」に分けて、6つのルールにしました。

A.依頼の出し方(3つ)

対策1:依頼は最大2つに絞り、先にPlan Modeで要件を固める

今回は、不明確な要件を5つまとめて頼み、確認と検証が膨らみました。

次回からは、依頼を最大2つに絞ります(2つは私の目安です)。

依頼が曖昧なときは、先にCursorのPlan Mode(Shift+Tab)で要件を整理します。

Plan Modeは、コードを書く前にAIが質問をして計画を作り、承認を待ってくれる機能です(公式ブログより)。

依頼を絞れば、キャッシュリードが多くなっても全体の作業量が小さくなり、50%もの消費は避けられると考えています。

対策2:思考はGLM、実装はCursor Modelsに分担し、モデルは明示する

私は、GLM 5.3には「コードの編集ではなく、思考をメインにする」とプロンプトに明記しました。すると、入出力は小さく、予測しやすい範囲に収まりました。

実装は、Cursor独自のモデル(公式ドキュメントでは「Cursor Models」。Grok 4.7やComposer 2.5など)に任せます。低コストで十分な能力があり、フロンティアモデルとは別枠で管理されるため、消費の増え方も分かりやすいからです。Cursor Modelsの枠は、含まれる利用量がかなり多いと案内されています。

モデルを指定しないと、AIが「最適」と判断したモデルで作業を進め、利用枠が思わぬ減り方をすることがあります。メインもサブエージェントも、使うモデルは明示しましょう。

対策3:プロンプトに「読み込みを減らす行動」を具体的に書く

私は「cache readの読み込みを、効率的に無駄なく行うこと」とプロンプトに明記して、効果を感じています。ただ、この書き方は抽象的なので、モデルが実行しやすい行動に書き換えると、より確実だと考えています。

コピペ用の例です(回数は目安です)。

- 作業前に不明点を質問し、依頼は2件ずつ進めること。
- 同じファイルを繰り返し読まず、必要な範囲だけ読むこと。
- 大きなファイルやログは丸ごと読まず、検索で対象を絞ること。
- ツール呼び出しが約20回を超えたら、進捗をまとめて一度止まること。

B. 運用・環境のルール(3つ)

対策4:利用枠の20%でいったん止まる

作業前に現在の利用状況(%)をメモし、区切りごとに確認して、+20%に達したら、進捗をまとめて一度止まります。

20%は、今回の私の見込みの上限(10〜20%)と同じ数字です。追加料金が心配な場合は、ダッシュボードでオンデマンド(追加課金)の設定も確認しておくと安心です。

対策5:作業の区切りごとに新しいチャットを始める

1つの機能実装や修正が終わったら、新しいチャットを始めます。

Cursor公式ブログでも、別のタスクに移るときや、1つの区切りが終わったときは、新しい会話を始めることが勧められています。さらに、読み込み量は会話の長さに応じて増えるので、キャッシュリードを抑える面でも有効だと考えています。

前の内容が必要なときは、会話をコピーせず、@Chatsで参照すると効率的です(公式ブログより)。

対策6:要約ファイルとピンポイント指定で、読み込み対象を絞る

コードベース全体を毎回読み込ませるのではなく、

ディレクトリ構造や仕様をまとめた軽量なMarkdown(architecture.mdなど)を用意し、編集対象のファイルだけを指定します。

毎回自動で読み込まれるルールファイルに入れる場合は、短く保つのがコツです。公式ブログも、中身を丸ごと写さず、ファイルを指す形を勧めています。

小さな修正は、エディタのインライン編集(Cmd+K / Ctrl+K)にすると、読み込み対象を限定できます。

対策後の結果

今月は利用枠がいっぱいになったので来月に実践して検証していこうと思います!

「Other Models」の利用枠が100%達したことを示すステータスバー画面
「Other Models」の利用枠が100%消費された状態を示しており、上限超過に関する注意事項が表示されています。

よくある質問

キャッシュリードはゼロにできますか?

ゼロにはできません。AIが作業のたびに履歴を読み直す仕組みだからです。ただ、ステップ数と文脈の長さを抑えれば、増え方は小さくできると考えています(対策1・5・6)。

利用状況はどこで確認できますか?

利用状況ページ(cursor.com/dashboard/usage)と、エディタの設定画面で確認できます。CSVでエクスポートすると、モデルごとのCache Readも集計できます。

利用枠を超えるとどうなりますか?

Cursorの公式ドキュメントでは、オンデマンド(同じAPI単価の従量課金)を追加するか、プランを上げるかを選ぶ仕組みと説明されています。品質や速度が落とされることはない、とも書かれています。


まとめ:単価の安さより「量」を管理する

今回の失敗は、もっと早く経験しておくべきだったと思います。ただ、今回起こって良かったとも考えています。

入出力のトークンに気を取られ、超低コストに見えるキャッシュリードには何も配慮していなかったのは、私の確認不足でした。

欲張って「あれもこれも」と依頼すると、AIは作業をやり切ろうとして手数を増やします。コストの上限は、こちらから伝えない限り、AIは意識してくれません。

AIを使いこなすには、お願いするだけでなく、人間の管理能力・ディレクション能力が問われると感じました。

この記事のポイント
  • 単価が安くても、「ステップ数 × 文脈の長さ」で総額は大きくなる
  • 依頼は2つまで、モデルは明示、利用枠の20%でいったん止まる
  • まずは、ご自身のUsageページでCache Readの量を確認する
晴れ渡る青空と透明度の高い海を背景に、防波堤の上で両手を腰に当てて海を眺める人物の後ろ姿
青空と穏やかな海が広がる海岸の防波堤に立ち、遠くの水平線や景観を静かに眺めている様子を描写しています。

参考リンク: 確認日:2026年10月9日

【失敗談】Cursorの利用枠を約7,300万トークンで50%消費 キャッシュリードの原因と対策

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

始めまして。このブログを運営するTomoyaです。
未経験個人開発者。AI×個人開発(Vibe Cording)で学習して参入してくれる人が増えて広がっていくと良いなと思って始めました。

実際に作成→デプロイ(公開)→運営を行ってそれについての問題や疑問を記録していきます。
また行っていく上で内容(セキュリティ・制限など)にもこだわっていきたいなと思っています。

コメント

コメントする


目次