Find the best value AI models — intelligence per dollar, ranked daily.
🌐 Live site: https://yyh-001.github.io/llm-value-rankings/
LLM Value Rankings compares 300+ LLMs by combining:
- Intelligence — Artificial Analysis Intelligence Index (OpenRouter embedded benchmarks)
- Speed — output tokens per second
- Price — blended input/output cost from OpenRouter
The result is a daily-updated leaderboard that answers one question: how much AI capability do you get per dollar?
Static site · zero backend · deploy with GitHub Pages in one minute.
| Feature | Description | |
|---|---|---|
| 📊 | Smart ranking | f(Intelligence) × Speed^0.8 / Price, min score 25 |
| 📈 | Day-over-day delta | See rank changes vs yesterday (↑2 / ↓1 / NEW) |
| 🏅 | Top 3 podium | Highlight the best value models on the homepage |
| 🔍 | Live search | Filter by model name or ID |
| 🌍 | Bilingual UI | Chinese / English toggle |
| 🌙 | Dark mode | System-aware theme with manual override |
| ⭐ | GitHub Star | One-click star from the header |
| 📱 | Responsive | Card layout on mobile, table on desktop |
| 🤖 | Auto-updated | GitHub Actions fetches fresh data daily |
git clone https://github.com/yyh-001/llm-value-rankings.git
cd llm-value-rankings
python -m http.server 8080
# or: npx serve .Open http://localhost:8080.
- Fork this repository
- Go to Settings → Pages
- Source: Deploy from a branch
- Branch:
main· Folder:/ (root) - Visit
https://<your-username>.github.io/llm-value-rankings/
pip install -r scripts/requirements.txt
python scripts/fetch_data.py
git add data/models.json data/rank_history.json
git commit -m "chore: update model data"
git pushOr trigger the Update Model Data workflow from the Actions tab.
Value = f(Intelligence) × Speed^0.8 / Price
f(x) is a nested square transform around the mean intelligence score:
f(x) = (avg + (x - avg)²)² if x ≥ avg
f(x) = (avg - (avg - x)²)² if x < avg (excluded when inner ≤ 0)
This rewards models above the average more than a plain square, without the harsh spread of a pure 4th power. The UI shows the raw intelligence score; ranking uses the transformed value.
| Metric | Source | Notes |
|---|---|---|
| Intelligence | OpenRouter embedded AA intelligence_index |
Artificial Analysis Intelligence Index, 0–100 |
| Speed | OpenRouter Endpoints API + RSC page scrape | Best provider p50 throughput (matches OpenRouter header) |
| TTFT | OpenRouter Endpoints API | Time-to-first-token p50 in seconds |
| Price | OpenRouter | Uptime-weighted effective price: 3:1 input/output token mix, 70% cache-hit on input ($/1M) |
After computing the raw value above, scores are normalized to a 0–100 scale. The top-ranked model is always 100; others are proportional.
Models are excluded from ranking when:
- Raw intelligence score is below 25
- The transformed capability score is ≤ 0 (inner term below zero for below-average models)
- The model name contains
distill
- Text-output LLMs only (image-generation models excluded via OpenRouter
output_modalities) - Requires both intelligence score and pricing data
- Models with
distillin the name are excluded - Sorted by value score descending
llm-value-rankings/
├── index.html # Entry page
├── css/style.css # Styles (light / dark)
├── js/
│ ├── app.js # Core logic
│ └── i18n.js # Internationalization
├── data/
│ ├── models.json # Model data (auto-updated)
│ └── rank_history.json # Daily rank snapshots
├── scripts/
│ ├── fetch_data.py # Data fetcher & rank calculator
│ └── requirements.txt
└── .github/workflows/
└── update-data.yml # Daily cron job
| Data | Provider | Method |
|---|---|---|
| Pricing & model list | OpenRouter API | REST |
| Intelligence | OpenRouter embedded AA benchmarks | intelligence_index field on model objects |
| Speed & TTFT | OpenRouter | Endpoints API + RSC page scrape |
| Layer | Stack |
|---|---|
| Frontend | HTML · CSS · Vanilla JS |
| Data | Static JSON |
| Pipeline | Python 3.11 · GitHub Actions |
| Hosting | GitHub Pages |
No build step. No framework. No database.
Contributions are welcome! Here are good starting points:
- Add model mappings in
scripts/fetch_data.py - Improve UI / i18n copy
- Refine the ranking algorithm
- Fix bugs via Issues
# Fork → branch → commit → pull request
git checkout -b feat/your-featureMIT © 2026