agentleFS
suryastsuryast/free-ai-agent-skills/cost-tracker/SKILL.md

cost-tracker

Skill2 starsChanged 34 days agoMITView on GitHub

Track LLM API spend per session and task. Estimate token usage across providers. Warn before you blow your budget. Use when estimating task cost, checking token usage, or setting a session budget.

4 other projects use a version of this.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

5 rules. About 0 are common, 5 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use these rates to estimate costs.

    line 33
  2. Distinctive:

    When activated, maintain a running cost ledger in the conversation context:

    line 81
  3. Distinctive:

    When you can't read token counts directly from the API response, estimate:

    line 102
  4. Distinctive:

    Before any task involving large files or long conversations, estimate upfront:

    line 138
  5. Distinctive:

    If a session spans multiple models or providers:

    line 192

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

💰 Cost Tracker

Uses the Agent Skills package format. Execution depends on the host tools and permissions; consult the frontmatter compatibility requirements where provided.

Track what your AI sessions actually cost. Estimate token usage, cumulative spend, and warn you before you hit budget thresholds — across OpenAI, Anthropic, Google, and other major providers.


Triggers

Activate this skill when:

  • User asks "how much has this session cost?"
  • User asks "what's my token usage?"
  • User sets a session budget ("keep this under $2")
  • User wants a cost estimate before a large task
  • Cumulative session spend needs tracking
  • "track my costs", "budget check", "token count", "how much am I spending"

Pricing Reference (update as models change)

Use these rates to estimate costs. All prices are per 1M tokens (input / output).

Anthropic

ModelInputOutput
claude-opus-4$15.00$75.00
claude-sonnet-4$3.00$15.00
claude-haiku-4$0.80$4.00
claude-opus-3$15.00$75.00
claude-sonnet-3.5$3.00$15.00
claude-haiku-3.5$0.80$4.00

OpenAI

ModelInputOutput
gpt-4o$2.50$10.00
gpt-4o-mini$0.15$0.60
gpt-4-turbo$10.00$30.00
gpt-4$30.00$60.00
gpt-3.5-turbo$0.50$1.50
o1$15.00$60.00
o1-mini$3.00$12.00
o3-mini$1.10$4.40

Google

ModelInputOutput
gemini-2.0-flash$0.075$0.30
gemini-2.0-pro$1.25$5.00
gemini-1.5-pro$1.25$5.00
gemini-1.5-flash$0.075$0.30

Other

ModelInputOutput
mistral-large$3.00$9.00
mistral-small$0.20$0.60
llama-3.3-70b (Groq)$0.59$0.79
deepseek-r1$0.55$2.19

⚠️ Prices change frequently. Always verify at the provider's pricing page before making financial decisions.


How It Works

Session Tracking

When activated, maintain a running cost ledger in the conversation context:

SESSION COST LEDGER
===================
Model: claude-sonnet-4
Started: [timestamp]

Turn  | Input tok | Output tok | Cost
------|-----------|------------|------
  1   |    2,340  |       450  | $0.0134
  2   |    4,120  |       890  | $0.0259
  3   |    1,870  |       340  | $0.0107
------|-----------|------------|------
Total |    8,330  |     1,680  | $0.0500

Budget: $2.00 | Used: $0.05 (2.5%) | Remaining: $1.95

Token Estimation

When you can't read token counts directly from the API response, estimate:

Quick estimates (rough, for planning):

  • 1 token ≈ 4 characters of English text
  • 1 token ≈ ¾ of a word
  • Code is denser: 1 token ≈ 3 characters
  • 1 page of plain text ≈ 500–750 tokens
  • 1,000-word article ≈ 1,300–1,500 tokens

File size estimates:

  • Small file (<50 lines): ~500–1,000 tokens
  • Medium file (50–200 lines): ~1,000–4,000 tokens
  • Large file (200–500 lines): ~4,000–10,000 tokens
  • Full codebase context: count with wc -c then divide by 4

Pre-task estimate command:

# Estimate tokens in a file
wc -c myfile.py | awk '{printf "~%d tokens\n", $1/4}'

# Estimate tokens in entire codebase
find . -name "*.py" -o -name "*.ts" -o -name "*.js" | xargs wc -c 2>/dev/null | tail -1 | awk '{printf "~%d tokens (input)\n", $1/4}'

# Count words as rough proxy
wc -w myfile.txt | awk '{printf "~%d tokens\n", $1*1.3}'

Budget Warnings

Issue warnings at these thresholds:

  • 50% of budget: ℹ️ Heads up — halfway through budget
  • 80% of budget: ⚠️ Approaching limit — consider wrapping up
  • 95% of budget: 🚨 Budget nearly exhausted — stop or expand

Cost Estimation Before Large Tasks

Before any task involving large files or long conversations, estimate upfront:

📊 PRE-TASK ESTIMATE
====================
Task: Refactor entire codebase
Files to read: 23 files (~180,000 chars)
Estimated input: ~45,000 tokens
Expected output: ~8,000 tokens (code changes + explanation)
Model: claude-sonnet-4

Estimated cost: $0.255
  Input:  45,000 × $3.00/M  = $0.135
  Output:  8,000 × $15.00/M = $0.120

Proceed? This is ~13% of your $2.00 budget.

Output Format

Quick status (inline, on request)

💰 This session: ~$0.05 (8,330 tokens in / 1,680 out) | Budget: $1.95 remaining

Full report (on request or at session end)

╔══════════════════════════════════════╗
║        SESSION COST REPORT           ║
╠══════════════════════════════════════╣
║ Model:    claude-sonnet-4            ║
║ Duration: 23 minutes                 ║
╠══════════════════════════════════════╣
║ INPUT TOKENS                         ║
║   Turns:          12                 ║
║   Total tokens:   42,840             ║
║   Cost:           $0.1285            ║
╠══════════════════════════════════════╣
║ OUTPUT TOKENS                        ║
║   Total tokens:   8,920              ║
║   Cost:           $0.1338            ║
╠══════════════════════════════════════╣
║ TOTAL COST:       $0.2623            ║
║ Budget used:      13.1% of $2.00     ║
║ Remaining:        $1.74              ║
╚══════════════════════════════════════╝

Multi-Provider Session

If a session spans multiple models or providers:

MULTI-MODEL SESSION SUMMARY
============================
gpt-4o         → 12,000 in / 2,400 out → $0.054
claude-haiku-4 → 45,000 in / 8,000 out → $0.068
gemini-flash   →  8,000 in / 1,200 out → $0.001
────────────────────────────────────────────────
TOTAL          → 65,000 in / 11,600 out → $0.123

Common Scenarios

"How much did that last task cost?"

Calculate the tokens in the most recent exchange, apply the current model's rates, and report inline.

"Estimate the cost of indexing my repo"

find . -type f \( -name "*.py" -o -name "*.ts" -o -name "*.js" -o -name "*.md" \) \
  | xargs wc -c 2>/dev/null | tail -1 \
  | awk '{
      tokens = $1/4
      cost_sonnet = (tokens/1000000) * 3.00
      cost_haiku  = (tokens/1000000) * 0.80
      cost_gpt4o  = (tokens/1000000) * 2.50
      printf "Repo size: ~%.0f tokens\n", tokens
      printf "claude-sonnet-4: $%.4f\n", cost_sonnet
      printf "claude-haiku-4:  $%.4f\n", cost_haiku
      printf "gpt-4o:          $%.4f\n", cost_gpt4o
    }'

"Set a $5 budget for this session"

Acknowledge the budget, start tracking, and proactively warn at 50%, 80%, and 95% thresholds. If the budget would be exceeded by a planned task, warn before proceeding.


Notes

  • Token counts are estimates unless the model API returns exact counts in its response metadata
  • Output tokens are typically 3–10× more expensive per token than input — optimize accordingly
  • Caching (where available) can reduce input costs by 80–90% for repeated context
  • Streaming responses don't change token costs — you pay for tokens regardless
  • System prompts count as input tokens on every turn

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.