# Token economics for hundreds of engineers on AI coding tools is killing us. What actually reduces spend?


URL: https://getunblocked.com/answers/reduce-ai-coding-tool-spend-across-engineering-org/
Published: 2026-11-06T15:30:00Z
Updated: 2026-11-01T13:12:17Z
Author: Dennis Pilarinos
Categories: Context Engine, Engineering Insights

**Short answer:** Four things, in this order: get per-user spend reports, set enforced caps where each tool allows them, set the default model and effort centrally, then stop paying every engineer's agent to rediscover the same codebase. The first three trim the bill. The last one removes the biggest repeated cost, because one shared context source answers what hundreds of agents would each re-read.

---
To reduce AI coding tool spend across hundreds of engineers, change the defaults everyone works with. Memos asking people to use fewer tokens do little. What works is four moves made once for the whole org. See spend per person. Turn on caps that actually block. Set the default model and effort centrally. Then cut the repeated cost of every agent learning the same codebase from scratch. **Rediscovery spend** is the tokens your agents use reading code, docs and history to rebuild an understanding that another engineer's agent already built yesterday. Per-developer habits, such as clearing sessions and trimming CLAUDE.md, are covered in [how to cut agent token usage in Claude Code and Cursor](https://getunblocked.com/answers/cut-agent-token-usage-claude-code-and-cursor-limits/).

## Start with per-user numbers, not the invoice

The invoice gives only the total. It hides who spent it, on which model, and why. Anthropic's Claude Code docs give a baseline. "Across enterprise deployments, the average cost is around $13 per developer per active day and $150-250 per developer per month, with costs remaining below $30 per active day for 90% of users" ([Claude Code costs docs](https://code.claude.com/docs/en/costs)). By our arithmetic, 300 engineers at that monthly range is $45,000 to $75,000 a month on one tool.

Spend is uneven, so find the top tenth first. Each tool has a report:

- **Claude for Teams and Enterprise**: a spend report "shows estimated spend per user and per model, with CSV export, updated daily". It covers usage-credit spend only, since usage inside the seat allowance is not metered in dollars. Enterprise adds an analytics API for per-user cost.
- **Claude Console (API)**: workspace cost reporting, plus a per-user dashboard and analytics API.
- **Amazon Bedrock, Google Cloud or Microsoft Foundry**: your cloud bill, plus OpenTelemetry, which the docs call "the only option that streams per-user token and cost metrics into your own observability stack in near real time".

Then divide by output. For example, two teams can spend the same $10,000 and merge very different numbers of pull requests. Cost per merged pull request is the number that tracks value, and [the unit economics of AI coding](https://getunblocked.com/blog/cost-per-merged-pr/) shows how to compute it.

## Turn on caps that block, not caps that email

**A hard cap** is a spend limit that blocks further usage when it is reached, instead of sending an alert. Check that each tool's cap is a hard cap.

| Tool | Where the cap lives | Watch for |
| --- | --- | --- |
| Claude Code (Team, Enterprise) | Spend limits at org, group or member level | The seat allowance is the default ceiling; usage credits go past it |
| Claude Code (Console) | Workspace spend limits | With custom rate limits, Claude Code traffic counts toward the org's API limits |
| Cursor (Teams) | One shared prepaid balance and one cap for the team | Granular spend controls are listed for Enterprise only |
| GitHub Copilot | Budgets at user, cost center, org and enterprise level | "Stop usage" is off by default |


On GitHub, the "Stop usage when budget limit is reached" setting is "off by default", and without it "charges continue to accrue past the limit" ([GitHub Copilot budgets](https://docs.github.com/en/copilot/concepts/billing-and-usage/organizations-and-enterprises/budgets)). When several budgets apply, "whichever budget has the least capacity remaining blocks the user first". Cursor gives Teams "one cap for the whole team" ([Cursor models and pricing](https://cursor.com/docs/models-and-pricing)).

Caps stop runaway weeks. Normal work costs the same as before.

## Set the default model and effort centrally

The model is the biggest price dial. Anthropic's docs name the common cause of high spend: "long sessions that were never cleared or to Opus left as the default model". Their advice is to use Sonnet for most coding and save Opus "for complex architectural decisions or multi-step reasoning". GitHub states the same rule for Copilot: "The cost of an interaction depends on two things: the model and the number of tokens consumed" ([GitHub Copilot billing](https://docs.github.com/en/copilot/concepts/billing-and-usage/organizations-and-enterprises/billing)).

So make it a setting. In Claude Code, a plain `model` setting is "an initial selection, not enforcement". Managed settings can restrict choices with `availableModels` and cap effort with `maxEffortLevel` ([Claude Code model configuration](https://code.claude.com/docs/en/model-config)). Effort matters because thinking tokens bill as output tokens. In Cursor, check which Auto mode your team uses: Cost mode "draws from your weekly pool whatever model serves it", while on Teams and Enterprise with Cursor Router on, Balance and Intelligence "bill at the routed model's list price".

Watch parallel agents too. Claude Code's agent teams "use approximately 7x more tokens than standard sessions when teammates run in plan mode". They are off by default, so decide who gets them.

## Cut the rediscovery, which no cap touches

With caps and defaults in place, the bill is mostly real work, and much of it is repeated. Each engineer's agent opens the same services, reads the same files, and searches the same docs to answer the same questions: who owns this, why was it built this way, what changed last week. Three hundred engineers means three hundred agents paying for that reading, every day. An April 2026 study of coding agents on SWE-bench Verified found "input tokens rather than output tokens driving the overall cost". It also found that "runs on the same task can differ by up to 30x in total tokens" ([Bai et al., arXiv](https://arxiv.org/abs/2604.22750)). Input is what the agent reads, so that is the cost to attack.

The usual fixes help a little. Anthropic suggests a skill that describes "your project's architecture, key directories, and naming conventions" so Claude "gets this context immediately instead of spending tokens reading multiple files". But a hand-written skill goes stale, and it cannot hold the history in PRs, tickets and Slack.

## Give every agent one shared source of context

The bigger fix is one shared source of context that every agent asks. **A context engine** is a service that indexes code and its history once and answers questions about it for every person and agent. Unblocked is a context engine: it reasons across code, PRs, issues, docs, Slack and incidents, and answers each agent's question in one call through MCP, in Claude Code, Cursor, VS Code, JetBrains and other tools, filtered to what the asker is authorized to see. We measured this on 2026-04-16 on a production repository with the same prompt and the same model, with and without Unblocked attached. With it, the agent used 42 percent fewer tokens and made 29 tool calls instead of 80 ([same prompt, same model, different context](https://getunblocked.com/blog/same-prompt-same-model-different-context/)). That is one run on one repository. Run the same test on your own repository before you budget on it.

David Knell, Distinguished Platform Engineer at Drata, put the return this way: "Unblocked has improved our productivity and consistency across the board. The return on investment has been evident in the time saved and the reduced frustration among the team."

The order matters. Reports show where the money goes. Caps and defaults stop the waste you can see. Shared context removes the cost that grows with headcount. [AI tokenomics](https://getunblocked.com/blog/ai-tokenomics-cost-framework/) covers the wider cost model, and [consistent context for coding agents across the org](https://getunblocked.com/answers/consistent-context-for-coding-agents-across-the-org/) covers rollout.

## Read more

- [AI Tokenomics: How to Measure and Control What AI Coding Tools Actually Cost](https://getunblocked.com/blog/ai-tokenomics-cost-framework/)
- [Cost per Merged PR: The Unit Economics of AI Coding](https://getunblocked.com/blog/cost-per-merged-pr/)

## Related answers

- [Is an LLM-maintained wiki in git a better fix than a context tool for engineering knowledge?](https://getunblocked.com/answers/llm-maintained-wiki-vs-context-tool/)
- [How do we drive adoption of an AI coding tool from a third of engineering to everyone?](https://getunblocked.com/answers/drive-ai-coding-tool-adoption-across-engineering/)
- [How do I make sure Claude actually calls the context MCP without every engineer editing their CLAUDE.md?](https://getunblocked.com/answers/make-claude-call-context-mcp-without-editing-claude-md/)
- [Atlassian Rovo MCP versus a dedicated context tool for Confluence, Jira and code?](https://getunblocked.com/answers/atlassian-rovo-mcp-vs-context-tool/)
