Most engineering teams can tell you exactly how much they spent on cloud infrastructure last month. Ask them about AI coding assistant spend across their organisation, and you'll get blank stares. Cursor here, Copilot there, Claude Code in another corner. A junior developer grabs Windsurf, a senior engineer uses Aider. Nobody's watching the meter. The result is predictable: spend balloons quietly. A team of ten engineers, each running different AI tools at different pricing tiers, can easily burn £500 to £1,000 per month without anyone noticing. Multiply that across fifty engineers, and you're looking at genuine budget problems that finance can't ignore. The kicker is that most of this waste is invisible until someone finally checks the credit card statements. This is where visibility becomes your first line of defence. You don't need to ban tools or restrict access; you need to see what's happening, identify where costs are climbing, and fix the inefficiencies. That's exactly what we're going to automate here.
The Automated Workflow
The goal is simple: collect cost data from BurnRate weekly, identify teams or individuals exceeding thresholds, and automatically flag optimisation opportunities without requiring manual spreadsheet maintenance. Here's the architecture: BurnRate generates weekly cost reports and rate limit alerts via webhook. We route these into n8n or Make, which extracts key metrics, enriches the data with team assignment information, and triggers notifications to Slack. For deeper analysis, we can feed this into Claude Code or MutableAI to generate optimisation recommendations based on the 23 built-in rules BurnRate already tracks.
Setting up the webhook in BurnRate
First, configure BurnRate to send cost data to your orchestration platform. In BurnRate's integration settings, create a webhook endpoint that fires weekly after reports generate.
POST /webhook/burnrate-costs
Content-Type: application/json { "period": "2026-03-01T00:00:00Z", "total_cost_usd": 847.50, "by_tool": { "claude_code": 340.00, "cursor": 280.00, "copilot": 127.50 }, "by_user": [ { "email": "alice@company.com", "tool": "claude_code", "cost": 180.00, "tokens_used": 2400000 }, { "email": "bob@company.com", "tool": "cursor", "cost": 220.00, "tokens_used": 3100000 } ], "alerts": [ { "type": "rate_limit_warning", "tool": "copilot", "message": "Approaching monthly rate limit" } ]
}
Building the workflow in n8n
We'll use n8n because it handles webhook triggers natively and integrates well with cost analysis tools. If you prefer Make or Zapier, the logic is identical; only the node names change.
-
Create a webhook trigger node that listens for incoming BurnRate data.
-
Parse the JSON payload and extract per-user costs.
-
Query your internal directory (Google Sheets, Airtable, or a dedicated database) to map email addresses to teams.
-
Compare individual costs against thresholds you define (for example, £80 per week per person).
-
For users exceeding thresholds, send enriched alerts to Slack.
-
Store the raw data in a database for trend analysis. Here's the n8n workflow structure in pseudocode:
1. Webhook Trigger (listens for POST to /burnrate) |
2. Parse JSON |
3. Split by user (iterate over by_user array) |
4. HTTP Request to team directory |
5. Conditional branch: - IF cost > £80/week - Format Slack message - POST to Slack webhook - Else: continue |
6. Database append (store record for audit trail) |
7. End
The Slack message should look like this:
{ "channel": "#engineering-costs", "text": "Weekly AI Coding Assistant Cost Report", "blocks": [ { "type": "section", "text": { "type": "mrkdwn", "text": "*Total Team Cost: £847.50*\n*Threshold Alerts: 2*" } }, { "type": "section", "text": { "type": "mrkdwn", "text": "*Alice (Backend Team)*\nTool: Claude Code\nCost: £180.00\nUsage: 2.4M tokens\n⚠️ 25% above threshold" } }, { "type": "section", "text": { "type": "mrkdwn", "text": "*Bob (Frontend Team)*\nTool: Cursor\nCost: £220.00\nUsage: 3.1M tokens\n⚠️ 38% above threshold" } } ]
}
Triggering optimisation analysis with Claude Code
For teams exceeding thresholds by more than 50%, automatically create an optimisation ticket. Connect Claude Code to analyse the user's tool choice against the 23 rules BurnRate tracks.
POST /api/claude-code/analyse { "user_email": "bob@company.com", "current_tool": "cursor", "weekly_cost": 220.00, "weekly_tokens": 3100000, "query": "Analyse cost optimisation opportunities for this user based on BurnRate's 23 rules. Recommend alternative tools or configurations that could reduce spend by 30%."
}
Claude Code can return recommendations like: "Bob is using Cursor Pro (£25/week) when Claude Haiku 4.5 through SourceAI would cost £8/week for his code generation tasks. Potential saving: £17/week." Store these recommendations in your tracking system and send them to team leads.
Connecting MutableAI for contextual insights
If your team also uses MutableAI for accelerated development, you can cross-reference spending across both platforms within the same workflow. The payload enriches the Slack notification with multi-tool context:
POST /webhook/burnrate-costs/enrich { "user_email": "alice@company.com", "burnrate_data": { ... }, "mutableai_data": { "projects_this_month": 3, "lines_generated": 18000, "cost_per_line": 0.0189 }, "recommendation": "Alice's multi-tool approach is efficient; maintain current setup"
}
Database schema for audit trails
Store all processed data in a simple table for compliance and trend analysis:
sql
CREATE TABLE ai_coding_costs ( id UUID PRIMARY KEY, week_ending DATE, user_email VARCHAR(255), team_name VARCHAR(100), tool_name VARCHAR(50), cost_usd DECIMAL(10, 2), tokens_used BIGINT, threshold_exceeded BOOLEAN, optimisation_recommended BOOLEAN, created_at TIMESTAMP DEFAULT NOW()
); CREATE INDEX idx_user_week ON ai_coding_costs(user_email, week_ending);
CREATE INDEX idx_team_week ON ai_coding_costs(team_name, week_ending);
This lets you run SQL queries like "Show me average cost per engineer by team over the last quarter" without touching spreadsheets.
The Manual Alternative
If you prefer not to automate, download BurnRate's PDF reports weekly and manually review them in a spreadsheet. Copy costs into a shared Google Sheet, sort by individual spend, and email team leads asking for justification above thresholds. This works but requires someone to own the task every single week, and decisions lag by days rather than happening in real time. The automated version catches spending spikes within hours.
Pro Tips
Threshold tuning matters.
Don't set your threshold too low (you'll spam your team) or too high (you'll miss real problems).
Start at the 75th percentile of your current spend, then adjust down by 10-15% weekly. A team of ten engineers averaging £60/week per person should trigger alerts at £70-75/week.
Rate limit monitoring is free value.
BurnRate's rate limit alerts tell you when a tool is approaching its ceiling. If a developer is consistently hitting Copilot's monthly limit, switching to Claude Haiku 4.5 or Windsurf might be cheaper and faster. Let the automation flag these; don't wait for complaints.
Tag users by role or project.
Enrich BurnRate's webhook payload with internal metadata: project name, seniority level, team. This helps you spot patterns like "all junior backend engineers favour Cursor" or "the ML team's Claude spend is twice the company average." Context makes recommendations stick.
Test optimisation recommendations before implementing.
When Claude Code suggests switching Bob from Cursor to SourceAI, don't force it. Add a "try for one week" note to the recommendation, and measure output quality alongside cost. Some tools are worth their premium.
Archive cost data quarterly.
After a quarter, export your audit trail to long-term storage (S3, BigQuery, or a data warehouse). This gives you historical benchmarks for budgeting and helps finance forecast engineering tool spend more accurately.
Cost Breakdown
| Tool | Plan Needed | Monthly Cost | Notes |
|---|---|---|---|
| BurnRate | Pro | £40 | Tracks all major coding assistants; includes 23 optimisation rules |
| n8n | Cloud Small | £25 | Handles webhook ingestion and routing; self-hosted version is free |
| Claude Code | Included in Claude Pro | £20 | Generates optimisation recommendations; pay-as-you-go if using API |
| Slack | Pro or Enterprise | £8–12 per user | Required only for notifications; free tier works if you don't need audit logs |
| Database (PostgreSQL on Render) | Starter | £7 | Cost audit trail storage; free tier available for small teams |
| Total | £100–110 | Covers 50+ engineers with full cost visibility and optimisation |