Open a chat in Cursor and some of your rules are already read, before you type a word. You pay for that reading in tokens, the units your AI plan counts. Of the 14,110 rules we measured, two in three are read every single time. The rest wait until you open a file they are about. That one difference decides whether a rule is cheap or expensive.
Read every time, or only when needed
A Cursor rule is a small text file with instructions for the AI, such as “prefer simple solutions” or “this project uses Angular”. 9,528 of the rules we measured put something into every chat, the whole file for an always-apply rule and the description for one the model can pull the rest of. The other 4,582 stay out until something calls for them, either a matching file or you naming the rule.
A rule that is read every time costs 219 tokens at the median. One in ten costs more than 1,840. The biggest, cursorrules, is 4,862 lines and 36,510 tokens, read in full before you have asked anything.
What those rules add up to in a day
Say you open 20 chats a day. A median rule costs you 4,380 tokens a day. The 1,840-token kind costs 36,800. That is a book chapter read to the AI every morning, and again every hour, whether or not it has anything to do with your work. A rule that waits costs nothing until something calls for it, and the median rule opens 624 tokens when it does.
What the scan found in 14,110 rules
We scan every rule for text that should not be there. 13,780 of the 14,110 came out at grade A, 141 at B and 189 at C or D. Two of the findings are worth naming. The first is hidden instructions, text the agent reads and you do not, as in two rules from awesome-cursorrules. The second is a rule that reaches for credential files, aws-cli. A rule is words the agent reads, not code that runs, so neither finding is an infection. The point is that you cannot agree to words you cannot see.
Rules worth copying
“Every time” means the rule is read in every chat. “When loaded” means it waits for a matching file.
- ponytail: pick the simplest thing that works, reuse what is there, add nothing speculative. 576 tokens every time, 37 lines, copied into 8 other projects.
- angular-20: conventions from the Angular repository itself. 1,401 tokens when loaded, 136 lines.
- dev-standard: how Apache Superset wants its Python and TypeScript written. 1,147 tokens every time, 126 lines.
- shared-plane-packages: a small Prisma rule about a single decision. 1,153 tokens when loaded, 138 lines.
- coolify-ai-docs: a map that sends the AI to the right document instead of explaining everything itself. 1,426 tokens every time, 157 lines.
Rule, skill or hook
Do not reach for a rule when you need something to run, like a test before every commit. A rule cannot run anything; that job belongs to a hook. If you want advice for one kind of task only, a skill fits better, because it costs 68 tokens until the AI decides to open it. And if you work in Claude Code or Codex, a Cursor rule does nothing at all. Those two read CLAUDE.md and AGENTS.md instead.
Questions people ask
Do I pay for a rule the AI ignores? Yes. 9,528 of the rules we measured are read into every chat, ignored or not.
How many rules are too many? Count tokens, not files. Ten median rules are 2,190 tokens per chat, which is fine. Ten of the expensive kind are 18,400.
.cursorrules or .cursor/rules? The single .cursorrules file is the old way and is always read. The .cursor/rules folder lets each rule say when it should load.
Do it now
Run npx agentmods cost in your project to see what the mods in your project cost per session, or browse all Cursor rules. Every rule’s page says whether it is read every time and what the scan found.