Independent

How a number gets on the page.

Median of (LMArena overall rating / blended USD per 1M tokens). Value Index 100 equals this median. Blend: 0.25 * input + 0.75 * output per 1M tokens. Value path holds the latest LMArena rating fixed and applies historical ModelPriceWatch prices. It is a price path, not a historical quality measurement.

Value, without mixing units

Arena ratings, GPQA percents and Epoch’s Capabilities Index are different instruments. The Value Index uses only Arena overall rating and the list price. GPQA, LiveBench, SWE-bench and ECI are shown beside it and never averaged in.

The index no longer divides Arena points by the raw dollar price. That ratio handed first place to very cheap models. A model is ranked only from the top half of Arena ratings. Best overall weights quality at 70 percent and log-scaled price at 30 percent. Best value, on the same floor, divides Arena points by the natural log of blended price. Cheapest capable sorts that set by price. The full market table still lists models below the floor, with a blank score.

LMArena ratings and Epoch scores stay on the baked snapshot. Those files are a parquet set and a zip, which a free Worker cannot cheaply fetch and parse, so they change when the snapshot is rebuilt. This copy was baked on 2026-10-23. A page view is that static file. It does not download or parse the prices archive.

The cron still runs every 15 minutes on the free Worker. Every tick refreshes news and provider status, then the catalog slot: prices at 00:00/06:00/12:00/18:00 UTC, models fifteen minutes later, and deals fifteen minutes after that. News writes the small keys news and page:news. The feeds are the OpenAI, Google AI, DeepMind, Meta AI, Mistral, NVIDIA, Microsoft Research, Hugging Face and GitHub blogs, arXiv cs.AI and cs.CL, Hacker News stories above 50 points, and a few GitHub release atoms. Anthropic’s newsroom has no RSS, so that feed is the public releases atom and is labeled GitHub, not the newsroom. Status writes status and page:status, including each feed’s last success. Prices and models ticks do not download models.dev, LiteLLM, or ModelPriceWatch. If those KV keys are empty they are filled once from the baked files. If the hourly refresher has already written them, the tick leaves them alone. A request for /api/v1/prices or /api/live/prices streams the KV text when it is present and otherwise the baked file. It does not parse an archive. The browser swaps that JSON into the prerendered tables after load. /api/health answers 503 when prices:meta is missing or older than three hours, or when the news stamp is missing or older than two hours.

Price weather and history

History is the ModelPriceWatch series. The 30-day change compares the latest point with the point at least 30 days earlier. “Last move” is the most recent time the blended price actually changed. Price weather takes the median of those moves when they fall inside 120 days and landed on a later calendar day. Models that did not move are left out of the median. A steady lab had no settled change in the window. A tile that names one model is that model’s move, not a lab-wide median.

Speed

Speed is omitted. This snapshot has no licensed latency series, and our own probes have not produced a result, so no speed table is shown.

Sources in this snapshot

Not used

  • Artificial Analysis: Data Platform Terms restrict use in ranking or comparison products. PowerfulBot links to them and does not ingest scores.
  • OpenRouter: Terms restrict scraping and competing services. Not displayed. Optional internal cross-check is off unless POWERFULBOT_OPENROUTER_CROSSCHECK=1, and that file is not served.
  • Reddit API: Free tier is non-commercial. Not called. Discussions are not ingested.

Attribution for republished series: ModelPriceWatch (modelpricewatch.com), CC-BY-4.0. LMArena leaderboard dataset, CC-BY-4.0. Epoch AI, ‘Capabilities & benchmarking’, CC-BY-4.0, epoch.ai/benchmarks. models.dev and LiteLLM prices are MIT.