The methodology, in the open.
A leaderboard is only worth reading if you can check it. This page is the whole scoring method — the weights, the arithmetic, and the parts it deliberately does not measure. It is versioned, and the current version is v1.
The method is written and running. The first public rankings have not been published yet.
What we measure
A run covers one category for one ISO week. It puts a fixed set of prompts to a set of AI assistants; each prompt-and-assistant pair produces one answer. The prompt set and the assistant set are frozen when the run starts, so the shape of a week cannot shift underneath it.
In each answer, every brand named is recorded three ways: what it was named as, where in the answer it appeared, and whether the mention was backed by a citation.
What it was named as
Three kinds of mention carry weight. The rest — a comparison target, a passing bit of context, a cautionary example — score nothing at all. Being mentioned unfavourably is neutral here, not a penalty.
- Primary recommendation1.0The assistant put you forward as the answer.
- Alternative0.7Offered as one of several options.
- Honourable mention0.4Named, but off to the side.
Whether it was backed by a citation
Being recommended without a citation still counts for most of its value — the recommendation is the thing being measured.
- Cited1.0The assistant backed the mention with a link.
- Ambiguous0.9A source is implied but not resolvable.
- Uncited0.8Recommended with nothing to point at.
Where in the answer it appeared
Position decays gently: first place scores 1.0, second about 0.63, third 0.5. Being named at all matters more than being named first, but the order is not ignored.
How a score is computed
For each answer, we take your single best recommendation mention — its three weights multiplied together — and nothing else. Being named five times in one answer scores exactly the same as being named once, well. That cap is deliberate: it is what stops the score rewarding brands that flood an answer.
Those per-answer numbers are added up, and divided by every answer we asked for. That denominator is the part worth reading twice: an answer where you were not mentioned counts against you, and so does a provider call that failed. It is not a share of the answers we got back — it is a share of the answers we went looking for. Not being recommended pushes you down.
In v1 every prompt and every assistant counts equally. There is no weighting that favours one prompt, or one assistant, over another.
The result lands between 0 and 1. It is not a percentage of what AI assistants say generally — it is a share of one category's prompt set, in one week, and it is only comparable against the other brands in that same run.
How ranking is decided
Highest score first. Exact ties are broken by brand identifier in ascending order — an arbitrary rule, but a fixed one, so a tie never resolves differently on a re-run.
Every brand we track in a category is ranked, including the ones no assistant mentioned. They appear at zero. A leaderboard that quietly dropped them would flatter everyone left on it.
Alongside the score we publish the number of answers you appeared in. That is a count of answers, not a count of mentions: appearing three times in one answer counts once here, in keeping with the cap above.
The same observations always give the same score
The scoring code reads no clock and uses no randomness, and it sorts its inputs before it sums them. The same observations scored under the same version produce a byte-identical result, every time. That is a property of the code, not an aspiration — it is what makes the number checkable rather than merely published.
It also changes what a methodology change costs. Every answer an assistant gave us is recorded once and kept, and the score is a pure function of those records — so improving the method means recomputing from the answers we already have, not going back and asking the models again. The observations are the asset; the score is a view over them.
Versions
The weights and the arithmetic above are version v1 — the only version so far. Each run is stamped with the version it was scored under, so a score always carries the method that produced it. When the method changes, the new version is published here in the same detail as this one.
v1 was written from a published scoring specification rather than from the implementation that accompanied it, because the two had drifted. Naming what we chose not to carry over is part of the point:
- Dropping the position term, so being named first counted the same as being named last.
- Summing every mention in an answer instead of taking your best one, which rewards being repeated.
- Hiding overflow behind a minimum clamp, so a score could not be checked against its own inputs.
- Reading weights that had drifted from the values the spec published.
- Stamping a wall clock into the output, so the same inputs produced a different result on every run.
What this does not measure
- Personalised answers. Only public, non-personalised answers feed a score. If an answer was shaped by a location or a signed-in profile, it is left out rather than guessed at.
- Assistants we do not ask. Which assistants a run covers is configuration, not methodology: adapters exist for Claude, ChatGPT and Perplexity, and each run records the set it asked. Adding one changes the answers, not the arithmetic.
- Sentiment. We measure whether an assistant recommends you and how prominently. We do not score how warmly it describes you.
- Anything outside the category and the week. A score belongs to one category's prompt set in one ISO week. Comparing across categories, or across weeks with different prompts, is not something this number supports.