Back to Blog

Claude Code monitoring for a team: which tool answers which question

Alex Kim
12 min read
Claude Code monitoring for a team: which tool answers which question

Last updated: November 11, 2026

TL;DR

Claude Code monitoring for a team takes three tools, one per question: the analytics dashboard shows who uses Claude Code and what it ships, the spend report or the Claude Console shows what it costs, and OpenTelemetry streams per-person tokens and cost into your own tools. Developers check their own usage with /usage, whose breakdown covers only their own machine.

  • ๐Ÿ“Š Who uses it and what it ships: the analytics dashboard, in Claude's admin analytics for Team and Enterprise or the Claude Console for API organizations. Daily active users, sessions, accept rate, and pull requests once you connect GitHub.
  • ๐Ÿ’ต What it costs: depends on how people sign in. On Team and seat-based Enterprise plans, the spend report only counts usage-credit spend, because use inside a seat's allowance isn't billed in dollars. API organizations use the Console's Cost page; Bedrock, Google Cloud and Foundry customers use their cloud bill.
  • ๐Ÿ“ก Per-person detail, live, in your stack: OpenTelemetry, turned on for everyone through managed settings. It's the only option that works on every setup.
  • ๐Ÿง‘โ€๐Ÿ’ป What a developer sees alone: /usage and /insights, built from session history on that one machine.

Who uses Claude Code and what it ships: the analytics dashboard

The analytics dashboard answers the adoption question: who is active, how many sessions they run, how often they accept Claude Code's edits, and, once GitHub is connected, how many merged pull requests contain code written with it. Team and Enterprise organizations open it at https://claude.ai/analytics/claude-code. API organizations open it at https://platform.claude.com/claude-code. The Team and Enterprise data refreshes daily.

Anthropic's analytics docs split it by plan:

Team and EnterpriseClaude Console (API)
Wherehttps://claude.ai/analytics/claude-codehttps://platform.claude.com/claude-code
Who can open itTeam: Owners and Primary Owners. Enterprise: also Admins, who see everything except spendAnyone with the UsageView permission: Developer, Billing, Admin, Owner and Primary Owner roles
UsageDaily active users, sessions, suggestion accept rate, lines of code acceptedThe same, plus daily spend in dollars
Per personLeaderboard of the top 10, with a CSV export of every userTeam insights table: spend and lines accepted per member, last 30 days by default
Pull requestsYes, with the GitHub integration (public beta)Not available

Who can open it comes from Anthropic's usage analytics help article, which also lists a Value tab on the Team and Enterprise page: cost per commit, cost per pull request, cost per session, top spenders and spend concentration, with every formula shown and adjustable.

Contribution metrics, the pull request numbers, need two people:

  1. A GitHub admin installs the Claude GitHub app at https://github.com/apps/claude.
  2. A Claude Owner opens https://claude.ai/admin-settings/claude-code and turns on Claude Code analytics, then the GitHub analytics toggle, and picks which GitHub organizations to include.

Data typically appears within 24 hours. Three limits are worth knowing before you show the numbers to anyone:

  • They undercount on purpose. Anthropic calls the metrics "deliberately conservative": a line counts only when it matches Claude Code session activity from 21 days before to two days after the merge, and code a developer rewrote by more than 20% isn't attributed.
  • They need github.com. Repositories on GitHub Enterprise Server get usage metrics only.
  • Zero Data Retention turns them off. An organization with it enabled sees usage metrics only.

Merged pull requests with Claude Code lines get a claude-code-assisted label in GitHub, so you can query the same data there.

What Claude Code costs: it depends on how your team signs in

What Claude Code costs depends on how each developer signs in. Team and seat-based Enterprise seats draw from an allowance, so most use never shows up as dollars. API organizations pay per token and see it in the Console. Cloud-provider customers pay per token on their cloud bill. A mixed organization meters each developer by the sign-in they used.

Anthropic's cost management docs map each setup:

Your setupSee spendCap spendPer-person numbers
Team or EnterpriseSpend report in org analyticsSpend limits in admin settings, once usage credits are onSpend report CSV; the Enterprise Analytics API on Enterprise
Claude Console (API)The Console's Cost pageWorkspace spend limitsConsole dashboard; the Claude Code Analytics API
Amazon Bedrock, Google Cloud's Agent Platform or Microsoft FoundryYour cloud billing consoleYour cloud's budget controlsOpenTelemetry, a Claude apps gateway, or an LLM gateway

On Team and seat-based Enterprise plans, read the spend report for what it is. Each seat's Claude Code use draws from an allowance that resets on a rolling five-hour window and a weekly window, shared with chat and Cowork. Use inside that allowance isn't metered in dollars, so the spend report only covers usage credits, the paid overflow past the allowance. A team that never turns usage credits on can show no spend at all and still be busy. For volume, read the dashboard and the token counts below instead. On a usage-based Enterprise plan, Anthropic's help article says the export captures your organization's full usage.

The spend report itself is a daily-updated CSV from Settings > Analytics, under "How much is Claude costing?". Each row is one person on one model, with request count, prompt and completion tokens, and net and gross spend. You can pick month to date, last month, the last 90 days or a custom range, and the newest data is from yesterday. On Enterprise, the Enterprise Analytics API returns per-user usage and cost reports across Claude surfaces; a Primary Owner creates its key with the read:analytics scope. It isn't available on the Team plan.

On the Console, Claude Code has its own workspace. The first time someone authenticates Claude Code with a Console account, a workspace called "Claude Code" is created, and you can set a spend limit on it. Anthropic notes that the dashboard's spend figures are estimates and the Cost page has the actual costs. The Claude Code Analytics API returns the same daily per-user metrics with an Admin API key.

On a cloud provider, Anthropic sees none of it. Claude Code doesn't send metrics from your cloud back to Anthropic, so neither the dashboards nor the Analytics API cover that usage. Per-person cost comes from OpenTelemetry or a gateway you run.

If you need a baseline before any of this exists, Anthropic's figure across enterprise deployments is about $13 per developer per active day and $150 to $250 per developer per month, with 90% of users staying below $30 per active day. Our Claude Code best practices for a team covers how to run a pilot against those numbers.

Per-person Claude Code monitoring in your own tools: OpenTelemetry

Use OpenTelemetry when you want per-person tokens, cost and activity in the observability stack you already run, close to real time. Anthropic's docs call it the only option that streams those metrics into your own tools, and it works on Team, Enterprise, the Console and every cloud provider. You turn it on for everyone through managed settings, not repository files.

The monitoring docs give the managed settings shape. An administrator delivers it through server-managed settings, an MDM policy or managed-settings.json:

{
  "env": {
    "CLAUDE_CODE_ENABLE_TELEMETRY": "1",
    "OTEL_METRICS_EXPORTER": "otlp",
    "OTEL_LOGS_EXPORTER": "otlp",
    "OTEL_EXPORTER_OTLP_PROTOCOL": "grpc",
    "OTEL_EXPORTER_OTLP_ENDPOINT": "http://collector.example.com:4317",
    "OTEL_EXPORTER_OTLP_HEADERS": "Authorization=Bearer example-token"
  }
}

A repository can't do this for you. Claude Code ignores these variables in a project's .claude/settings.json, so a repo can't turn telemetry on or point it somewhere else. If you haven't set up managed settings yet, our Claude Team admin settings guide covers where they live, and is Claude Code safe for a business? covers the permission rules worth locking in the same file. To check it works, look in your backend for claude_code.session.count, which Claude Code emits when a session starts.

Claude Code exports eight metrics:

MetricWhat it counts
claude_code.session.countSessions started
claude_code.lines_of_code.countLines added and removed, by model
claude_code.pull_request.countPull requests created
claude_code.commit.countGit commits created
claude_code.cost.usageEstimated cost in USD, by model, skill, plugin or subagent
claude_code.token.usageTokens by type: input, output, cache read, cache creation
claude_code.code_edit_tool.decisionAccepted and rejected Edit, Write and NotebookEdit calls
claude_code.active_time.totalActive time, split between the person and the CLI

Three details decide whether the dashboards you build on top are right:

  • Sessions aren't people. One developer can start many sessions. For active users, Anthropic says to count distinct user.account_uuid values.
  • Add team labels. OTEL_RESOURCE_ATTRIBUTES attaches keys such as department=engineering,team.id=platform,cost_center=eng-123 to every metric. Values can't contain spaces.
  • Cost is list price unless you say otherwise. If your organization pays contracted rates, the modelPricing managed setting makes /usage, the status line and OpenTelemetry report them. It needs Claude Code 2.1.242 or later and changes what's reported, not what Anthropic charges.

Tell your developers what you're collecting before you switch it on. Our Claude data privacy guide covers what Anthropic keeps; this is what you keep. By default Claude Code records prompt length, not prompt text, and leaves out tool arguments and file contents; each is a separate opt-in, such as OTEL_LOG_USER_PROMPTS=1. When people sign in with OAuth, user.email is attached to every record. Anthropic's docs say all of it goes only to the endpoint you configure, never to Anthropic.

What a developer sees alone: /usage and /insights

A developer checks their own usage with /usage inside Claude Code. It shows the current session's tokens and an estimated cost, and on Pro, Max, Ultra, Team and Enterprise plans a breakdown of what counts against the plan limits, attributed to skills, subagents, plugins and MCP servers, with suggestions. That breakdown reads only that machine's session history.

That last part is the limit for an admin. Anthropic's cost docs say the breakdown is computed from local session history, so usage from other devices or from Claude on the web isn't in it. Two things in it are still useful to hand your team:

  • The suggestions. Rows such as trimming a large CLAUDE.md or lowering effort each show the share of recent usage they apply to. Press d or w to switch between the last 24 hours and the last seven days. On Claude Code 2.1.305 or later, f applies the ones Claude Code can.
  • The spend row. On Team and Enterprise, while usage credits are on, /usage shows the developer's own usage-credit spend this month against any limit you set for them.

/insights writes an HTML report about how someone works rather than how much: what they work on, where requests went wrong, and suggestions. It reads up to 200 sessions it hasn't seen before on that machine, saves to ~/.claude/usage-data/report.html, and its tokens count against the developer's plan. It's a coaching tool, not a monitoring feed.

Frequently asked questions

Can Claude Code be monitored?

Yes. Team and Enterprise admins see active users, sessions and accept rate in the analytics dashboard at https://claude.ai/analytics/claude-code, and API organizations see the same plus spend at https://platform.claude.com/claude-code. For per-person tokens and cost in your own tools, turn on OpenTelemetry export through managed settings.

How do I see Claude Code usage for my whole team?

Open the analytics dashboard. On Team, Owners and Primary Owners can view it; on Enterprise, Admins can too, except spend. It shows daily active users, sessions, accept rate and a top-10 leaderboard with a CSV export of every user. Connect GitHub for pull request numbers.

Why does our Claude Team spend report show almost nothing?

Because use inside each seat's allowance isn't billed in dollars. Anthropic's cost docs say the spend report covers usage-credit spend, the paid overflow past the allowance, and appears once usage credits are on. Read adoption in the analytics dashboard and per-person tokens through OpenTelemetry instead.

Is the Claude Enterprise Analytics API available on the Team plan?

No. Anthropic's analytics docs say the Enterprise Analytics API is Enterprise only. On Team, export the spend report CSV from Settings > Analytics, which lists token usage and estimated spend per person and per model. API organizations use the separate Claude Code Analytics API with an Admin API key.

Does Claude Code OpenTelemetry send data to Anthropic?

No. Anthropic's monitoring docs say telemetry goes only to the endpoint you configure. By default it records prompt length rather than prompt text and leaves out tool arguments and file contents. When developers sign in with OAuth, their email address is attached, so filter it in your backend if that's a concern.

Can a repository turn on Claude Code telemetry?

No. Claude Code ignores the OpenTelemetry exporter variables in a project's .claude/settings.json and .claude/settings.local.json, so a repository can't switch telemetry on or redirect it. Set them in managed settings for the whole team, or have each developer set them in their shell or ~/.claude/settings.json.

How accurate are Claude Code cost figures?

They're estimates. /usage, the status line and OpenTelemetry compute cost from token counts at list price unless an admin sets the modelPricing managed setting to your contracted rates. Anthropic points to the spend report on Team and Enterprise and the Console's Cost page for actual billing.

Why doesn't the analytics dashboard show pull requests?

Contribution metrics need setup: a GitHub admin installs the Claude GitHub app, and a Claude Owner turns on Claude Code analytics and GitHub analytics in admin settings. They cover github.com repositories only, are off under Zero Data Retention, and aren't available to API customers.

Get Claude Code set up properly for your team

We set up Claude Team for small businesses: the seat plan, the security settings, shared Projects and skills written from your actual processes, and managed Claude Code settings for teams with developers. If you'd rather have it done once and done right, see how our Claude Team setup works or book a 30-minute call.

#claude-code#Team Setup#Analytics#OpenTelemetry#AI Costs
Free assessment

Stop guessing. Score your first workflow.

Score one workflow in about five minutes. Nine questions, a grade, and the specific gap holding it back - no call required.