← All docs

Benchmark data sources and licenses

Where the benchmark scores on a model page come from, their licenses and collection cadence, and GET /models/benchmarks.

Every score in the Benchmarks section of a model page is published by someone else. everyais does not run benchmarks — we reproduce the numbers these sources publish, unchanged, next to their attribution.

Sources and licenses

SourceLicenseAttributionCollection
Epoch AI Benchmarking HubCC-BYhttps://epoch.ai/benchmarksAutomatic
LMArena LeaderboardCC-BY-4.0https://huggingface.co/datasets/lmarena-ai/leaderboard-datasetAutomatic
Vendor-reportedvendor-reportedPer score — that score's own source pageManual
  • From Epoch AI we take published evaluation results such as GPQA Diamond, SWE-Bench Verified, FrontierMath and HLE. Most are percentages (percent), but the Epoch Capabilities Index (eci) is not a percentage — it is an index running roughly 62 to 162, so its unit is raw and the page labels it as the source's own scale. An ECI of 148.5 is not 148.5%.
  • From LMArena we take the overall Elo rating of the text, vision and webdev leaderboards. The unit is elo and it is not a 0-100 scale — do not compare its magnitude against a percent score sitting next to it. The same organization's conversation dataset carries a different license and is not used.
  • Vendor-reported scores are values a model provider published about its own model, entered by hand. They are not independently verified, so when a collected source also has that benchmark, read both.

Collection runs automatically once a week, on Mondays (UTC), right after the model sync. Each source keeps only the latest snapshot, so what you see is always the value published as of the last collection.

How we present them

  • We keep the source's own model label instead of erasing it. source_model_id in the response is verbatim from the source (for example Claude Opus 5 (High)), and it is shown on the page too. It is the only clue that separates scores measured on different variants or different dated snapshots of the same family.
  • Attaching a score to a model is deliberately conservative. We link automatically only when normalized labels match exactly; everything else waits for a human to approve it, and scores behind an unapproved mapping are not published. That is why a model may have no scores at all, and that is a normal state.
  • We never recompute or adjust a number. Rounding happens only for display; the API returns the original value.
  • Deactivating a source drops its scores from the next response. Because of the cache policy below, responses already served can keep showing the old values for up to 5 minutes.

GET /models/benchmarks

Returns the benchmark scores attached to one model. No authentication, and no /v1 prefix. It allows 60 req/min per IP, and responses carry Cache-Control: public, max-age=60, s-maxage=300, stale-while-revalidate=300.

The 60 req/min limit is per IP and is a budget shared by a group of paths. /models/estimate, /models/stats, /models/benchmarks, /models/benchmarks/overview, /models/rankings, /models/apps, /models/apps/top, /models/changes and /models/feed.xml all draw from one bucket, so a screen that calls several of them in a row spends the budget that much faster. /models/catalog has its own separate bucket, so catalog reads keep working even when the detail calls have exhausted theirs.

Only approved, active models can be queried; any other slug returns 404 model_not_found. Model slugs contain slashes, so pass the model as a query parameter rather than a path.

curl "https://api.everyais.com/models/benchmarks?model=everyais/claude-opus-5"
{
  "model": "everyais/claude-opus-5",
  "scores": [
    {
      "benchmark_key": "arena-text",
      "score": 1441,
      "score_unit": "elo",
      "source_name": "LMArena Leaderboard",
      "source_url": "https://huggingface.co/datasets/lmarena-ai/leaderboard-dataset",
      "source_model_id": "claude-opus-5",
      "measured_at": "2026-08-11T00:00:00.000Z"
    },
    {
      "benchmark_key": "gpqa-diamond",
      "score": 83.4,
      "score_unit": "percent",
      "source_name": "Epoch AI Benchmarking Hub",
      "source_url": "https://epoch.ai/benchmarks",
      "source_model_id": "Claude Opus 5 (High)",
      "measured_at": null
    }
  ]
}
FieldDescription
benchmark_keyNormalized benchmark id (gpqa-diamond, swe-bench-verified, arena-text, …)
scoreExactly as the source published it
score_unitpercent · elo · raw. Do not compare magnitudes across units
source_nameDisplay name of the source as stored. It is not translated — the vendor-reported source is labeled in Korean, and an admin can rename any source — so branch on source_url or benchmark_key, never on this string
source_urlLink to the original. Vendor-reported scores link to that score's own source; collected sources link to the dataset's attribution page. null when no http(s) URL is on record
source_model_idThe source's own model label, unmodified
measured_atWhen the source says it was measured or published; null if unknown
  • scores is sorted by benchmark_key ascending, and by score descending when several sources publish the same key.
  • No scores means an empty array, not 404. Most models are not covered by these sources, so "no scores" has to stay distinguishable from "no such model".

GET /models/benchmarks/overview

The same data along the other axis — one leaderboard per benchmark instead of one model's scores (this is what everyais.com/benchmarks reads). It takes no parameters: every leaderboard the tabs need is in the single response. Authentication, rate limit and caching are as above.

curl "https://api.everyais.com/models/benchmarks/overview"

Alongside the score, each row carries output_price_per_1m (reference cost per 1M output tokens) and avg_gen_tok_per_sec (average generation throughput over the last 30 days). Both are null when unknown, never 0 — models that are not priced per token have no output price, and throughput is withheld below 100 streaming measurements.

  • A model appears once per leaderboard. When several sources published the same benchmark for it, an independent evaluation beats a vendor-reported number, and a newer measurement beats an older one. The higher score never wins — that would turn the board into a list of each model's best-looking claim. Use vendor_reported to tell them apart.
  • A leaderboard only holds rows sharing its score_unit. Ranking 1441 Elo against 83.4 percent would make the order itself false, so scores in another unit are left out of that board.
  • Each board is capped at the top 50 models, and boards are ordered by how many models they cover.

Reusing the data

Epoch AI and LMArena data is CC-BY licensed, so you may reuse it with attribution. When you republish values obtained through this API, keep the source name and attribution link from the table above. Vendor-reported values follow each provider's own publication, so check the terms at the source_url of that score.