|
| 1 | +Notes for how Cursor billing works for me. Each time you hit `[ENTER]` to send a new reply uses Requests. If you are at the monthly limit, then you start on-demand billing based on token costs. As long as I stay under the monthly request quota (e.g. 500/month), I don't care if a single request consumes huge token counts. |
| 2 | + |
| 3 | +A long, multi-turn question-session in Cursor counts as **1 request** in [the usage dashboard](https://cursor.com/dashboard/usage), even when the agent and I exchange dozens of question/answer rounds inside that turn. |
| 4 | + |
| 5 | +Per [Cursor's pricing policy](https://cursor.com/terms/pricing), on-demand usage is technically based on **Total Tokens** (input + output + cache read/write). For my work's Cursor setup, the dashboard still exposes a request-like included-usage meter, so I am incentivized to optimize for fewer user turns. |
| 6 | + |
| 7 | +## Long Q&A Sessions Still Count as 1 Request |
| 8 | +I tested this with a Python→Node migration spec session: ~14 questions in one AI response, my answers inline, then ~5 follow-ups, all within the same chat. Dashboard recorded **1 request**. |
| 9 | +The currently observed behavior means [[spec-driven-design]] workflows *where the agent batches all clarifying questions* are essentially "free" past the first request. The cost is wall-clock time, not requests. |
| 10 | + |
| 11 | +## Request Multipliers Per Model |
| 12 | +Observed from CSV usage events. Each event = one user turn + agent response. |
| 13 | + |
| 14 | +Cursor’s [current pricing policy](https://cursor.com/terms/pricing) says model/API fees are calculated from **Total Tokens** across input, output, and cache read/write tasks, not simply “one chat bubble equals one flat request.” ...so I guess my usage limits might not be tied directly to my work's costs? |
| 15 | +### Request Units as of 2025-05 |
| 16 | +This is empirical from my CSV export: |
| 17 | + |
| 18 | +| Model | Requests / turn | |
| 19 | +| -------------------------------- | --------------- | |
| 20 | +| `auto` | 0-1 | |
| 21 | +| `claude-4.6-sonnet-medium` | 1 | |
| 22 | +| `claude-4.6-opus-high-thinking` | 2 | |
| 23 | +| `claude-4.6-opus-high` | 1 | |
| 24 | +| `claude-opus-4-7-thinking-xhigh` | **1** | |
| 25 | +| `composer-2-fast` | **2** | |
| 26 | +| `composer-2` | 1 | |
| 27 | +| `gpt-5.4-medium` | 0-1 | |
| 28 | +| `gpt-5.5-medium` | 2 | |
| 29 | + |
| 30 | +Notable: `claude-opus-4-7-thinking-xhigh` (highest reasoning tier on Opus 4.7) costs only 1 request, while older `claude-4.6-opus-high-thinking` costs 2. Picking the newer Opus is strictly cheaper for max-reasoning work. |
| 31 | + |
| 32 | +`composer-2-fast` being 2x the cost of `composer-2` is counter-intuitive if you assumed it was doing less work (the "fast" variant costs more, not less). |
| 33 | + |
| 34 | +## Spec-driven loop with `code --wait` |
| 35 | +This is an interesting solution, but **useless** for now. |
| 36 | +The `code --wait` CLI flag holds the shell open until the file is closed. An agent skill could leverage this for human-in-the-loop questioning inside a single agent turn: |
| 37 | + |
| 38 | +```text |
| 39 | +Cursor agent starts task |
| 40 | + → writes questions to .cursor/spec-questions.md |
| 41 | + → runs: code --wait .cursor/spec-questions.md |
| 42 | + → I edit answers, save, close |
| 43 | + → code command returns |
| 44 | + → agent reads answers, continues loop |
| 45 | +``` |
| 46 | + |
| 47 | +This **saves interaction turns** (one request even with many Q&A rounds), but does **not** save tokens — the agent still re-processes context each loop. Per Cursor's pricing, that token usage is real even when "Requests" stays at 1. |
| 48 | + |
| 49 | +But whether you use Q&A or `code --wait`: ask all blocking spec questions in **one batch**, not a series of small ones, to minimize both turns and re-processed context. |
| 50 | + |
| 51 | +## After hitting the monthly request limit |
| 52 | +Auto model selection keeps working without additional usage-based pricing. So 500 requests/month is a soft ceiling — past it, work continues on Auto-routed models at no extra cost (just possibly lower-tier model selection). |
| 53 | + |
| 54 | +## Unverified |
| 55 | + |
| 56 | +- Whether the `0` rows are only free after exhausting 500 requests. |
| 57 | +- Whether `composer-2-fast = 2 requests` is a billing bug, a documentation gap, or intentional (paying 2x for lower latency) |
| 58 | +- Whether AI-comparable "request multipliers" advertised elsewhere (e.g. ChatGPT-derived numbers like Gemini-3-Flash 0.5x, Opus 5x) match Cursor's actual billing — they did not match my dashboard last time I checked |
0 commit comments