# methodology

OGM methodology v5 scores are transparent, reproducible, and computed only within the open-weights set — a score says how a model compares to other open-weights models, not to closed frontier models. Three principles:

## overall weights

signalweight
aa_intelligence0.70
bench_composite0.30

## coding weights

signalweight
aa_coding0.30
aider_polyglot0.30
swe_bench_verified0.40

## agentic weights

signalweight
swe_bench_verified0.60
swe_rebench0.40

## signal normalization

## benchmark panels

The raw benchmark feed is larger than the scoring set. Sparse, overlapping, superseded, and modality-incompatible rows remain visible on model profiles but do not silently become rank inputs. Current immutable panels:

panelcomplete measurements requiredmodality
aime-2025-v1AIME 2025text
aime-2026-v1AIME 2026text
browsecomp-v1BrowseComptext
swe-bench-verified-v1SWE-bench Verifiedtext
aider-polyglot-v1Aider polyglottext
livebench-v1all seven category meanstext

Panels are mostly single benchmarks — joint requirements shrink a cohort to the intersection of coverage, which starves panels exactly where coverage is heterogeneous. A suite whose rows ship together (LiveBench) stays one panel and casts one vote, not seven. Vision benchmarks never feed the overall score: OCR/diagram skill is evidence, not general capability. Changing panel membership creates a new version. Active panel scores are published as components in rankings.json, so the composite never hides which complete exams contributed.

## data flow

A pipeline pulls twenty-four sources daily (Hugging Face, OpenRouter, HF Inference Providers, Artificial Analysis, LLM Stats, LiveBench, SWE-rebench, LMArena, Epoch AI, SWE-bench, Aider, LiteLLM, models.dev, Requesty, the AWS/Azure price-list APIs, and eight first-party provider catalogs), resolves every record to a canonical model through a hand-curated registry, and publishes the merged dataset — the same JSON this site and the ogm CLI read, public at /data/v1/. Provider prices refresh every 6 hours. Failed sources fall back to their last snapshot and are marked stale in the footer.

The scoring implementation lives in the repo as pure, golden-tested functions.