Skip to main content

Zero-config AI cost calculator per commit/model with liteLLM

Project description

AI Cost Tracker

PyPI version

Zero-config AI cost calculator per commit/model with liteLLM integration.

Track AI usage costs across your git commits with three flexible usage modes - no initial configuration required.

Features

  • liteLLM Integration - Support for 100+ AI providers via liteLLM
  • OpenRouter Default - Pre-configured for OpenRouter with Qwen models
  • Zero Config - Works out of the box, reads from .env file
  • Smart Token Estimation - Accurate cost calculation using liteLLM tokenizers
  • ROI Calculation - Track value generated vs AI costs

Installation

pip install ai-cost-tracker

Quick Start

1. Initialize Configuration

aicost init
# Edit .env file to add your OpenRouter API key
echo "OPENROUTER_API_KEY=YOUR_KEY" >> .env

2. Run Analysis

# Uses defaults from .env (OpenRouter + Qwen)
aicost analyze --repo .

# Or specify directly
aicost analyze --repo . --model openrouter/qwen/qwen3-coder-next --api-key YOUR_KEY

Configuration

Create a .env file in your project root:

# Required: OpenRouter API key (https://openrouter.ai/keys)
OPENROUTER_API_KEY=YOUR_KEY
PFIX_MODEL=openrouter/qwen/qwen3-coder-next

Or use the built-in init command:

aicost init

Three Usage Options (Zero Config Required)

Option 1: BYOK (Bring Your Own Key) - Free

Use your own API key via OpenRouter. Costs calculated locally with real provider pricing.

# With OpenRouter key (default from .env)
aicost analyze --repo .

# Explicit key
aicost analyze --repo . --api-key YOUR_KEY

Supported models via liteLLM:

  • openrouter/qwen/qwen3-coder-next (default)
  • openrouter/qwen/qwen3-coder
  • anthropic/claude-3.5-sonnet
  • openai/gpt-4o
  • ollama/llama2 (local)
  • 100+ more via liteLLM

Option 2: Local/Ollama - Zero API Costs

No API key needed. Estimates based on diff size using local pricing.

aicost --repo . --mode local

Estimation formula: diff_chars / 4 * 0.0001$/M tokens

How It Works

  1. Parse git history - Analyzuje commity z tagami [ai:model]
  2. Estimate tokens - Używa heurystyki lub liteLLM do liczenia tokenów
  3. Calculate cost - Mnoży tokeny × cena za model
  4. Generate ROI - Szacuje oszczędność czasu (100 LOC/h × $100/h)

Why liteLLM?

  • Universal API - Jedna składnia dla 100+ providerów
  • Automatic routing - Fallback między providerami
  • Cost tracking - Wbudowane liczenie tokenów
  • OpenRouter - Dostęp do najnowszych modeli bez kont premium

Option 3: SaaS Subscription - Managed

Enterprise managed solution with dashboard and invoicing.

aicost --repo . --saas-token PLACEHOLDER

Usage Examples

# Initialize .env config
aicost init

# Analyze last 50 commits (uses .env defaults)
aicost analyze --repo . -n 50

# Use specific model via liteLLM
aicost analyze --repo . --model anthropic/claude-3.5-sonnet

# Analyze all commits (not just AI-tagged)
aicost analyze --repo . --all

# Export to custom file
aicost analyze --repo . --output my_costs.csv

# Estimate single diff
aicost estimate my_changes.patch

# Read diff from stdin
git diff HEAD~1 | aicost estimate -

Tagging AI Commits

Tag commits with [ai:model] for automatic tracking:

git commit -m "[ai:openrouter/qwen/qwen3-coder-next] Refactor authentication"
git commit -m "[ai:anthropic/claude-3.5-sonnet] Add payment integration"

Sample Output

🔍 Analyzing 100 commits from my-project...
🤖 Model: openrouter/qwen/qwen3-coder-next | Mode: byok

==================================================
📊 AI COST ANALYSIS - openrouter/qwen/qwen3-coder-next
==================================================
   Commits analyzed: 42
   Total cost:       $0.3245
   Hours saved:      15.3h
   Value generated:  $1530.00
   ROI:              4718x
==================================================
📁 Results saved to: ai_costs.csv

💡 Recent AI commits:
   a1b2c3d4 | $0.0089 | [ai:qwen3-coder-next] Refactor...
   e5f6g7h8 | $0.0121 | [ai:claude-3.5-sonnet] Add feature...

CSV Export Format

Column Description
commit_hash Short commit SHA
commit_message Full commit message
author Commit author name
date ISO format datetime
cost Calculated cost in USD
cost_formatted Formatted cost string
model AI model used
mode Calculation mode (byok/local/saas)
tokens_input Estimated input tokens
tokens_output Estimated output tokens
hours_saved Estimated hours saved
roi ROI multiplier

Pricing Reference

Model Input Output
openrouter/qwen/qwen3-coder-next $0.50/M $1.50/M
openrouter/qwen/qwen2.5-coder $0.30/M $1.00/M
anthropic/claude-3.5-sonnet $3/M $15/M
anthropic/claude-3.5-haiku $0.8/M $4/M
openai/gpt-4o $5/M $15/M
openai/gpt-4o-mini $0.15/M $0.6/M
ollama/* ~$0.0001/M ~$0.0001/M

Business Model

Tier Price Features
BYOK Free Use your own OpenRouter API key
SaaS $9/month Unlimited, managed keys, dashboard, EU invoicing

Development

# Install with poetry
poetry install

# Run CLI
poetry run aicost analyze --repo ..

# Publish to PyPI
poetry publish --build

Environment Variables

Variable Description Default
OPENROUTER_API_KEY OpenRouter API key (required for BYOK)
PFIX_MODEL Default model for calculations openrouter/qwen/qwen3-coder-next

License

Licensed under Apache-2.0.

Licensed under Apache-2.0.

Licensed under Apache-2.0.

Licensed under Apache-2.0.

Licensed under Apache-2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

costs-0.1.15.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

costs-0.1.15-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file costs-0.1.15.tar.gz.

File metadata

  • Download URL: costs-0.1.15.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for costs-0.1.15.tar.gz
Algorithm Hash digest
SHA256 9d38e9621eaf17951361f2bec582f3d3bef96443e80fb69f5eb10f24a9ac9a40
MD5 79b0e9083ebc7d9fa68f5e2285c0cacd
BLAKE2b-256 cb7eceb05aa6a0f433a99ecd1803d29534c45dbe2586d46209e043a463f12ca1

See more details on using hashes here.

File details

Details for the file costs-0.1.15-py3-none-any.whl.

File metadata

  • Download URL: costs-0.1.15-py3-none-any.whl
  • Upload date:
  • Size: 20.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for costs-0.1.15-py3-none-any.whl
Algorithm Hash digest
SHA256 257c79e7a12ea2f08be03436a105079560e302015da81a4a1c3dc0853ae4a3af
MD5 0a174eceb8c8034e8eb5b8318fdf36b3
BLAKE2b-256 fef12490c1761bd20cc4a179c0ff2a5b95c4f10212dd08635d82c5c81eb8a919

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page