Scoring
How the health score works
What the number out of 100 is made of, why one broken robots.txt can cost more than a dozen missing alt attributes, and what makes two scores comparable.
The score starts at 100 and every finding takes points off it. That is the whole of the arithmetic, and everything below is about the two rules that stop it from being useless.
A category can only cost you so much
Each of the six categories has a cap, and no category can take away more than its cap however many findings it holds. A site with four hundred missing alt attributes and a working robots.txt scores better than a site with one broken robots.txt and nothing else wrong - which is the right way round, because the second site cannot be crawled at all.
| Category | Points at stake |
|---|---|
| Indexability & crawl | 33 |
| Metadata | 18 |
| Content | 16 |
| Links & media | 10 |
| Performance | 13 |
| Accessibility | 10 |
Without the caps the score would be a headcount. Findings are not equally expensive to have, and a number that treats them as if they were is a number that sends people to fix the cheapest thing first because there is more of it.
It is a rate, not a total
The score is computed per page, not per finding. Crawling more of a site therefore tends to move the score *up*, not down: a page with nothing wrong is a page that dilutes the ones that do.
This surprises people, and it is worth being blunt about. If you raise your page limit from 100 to 500 and your score improves, that is not the site getting better - it is the sample getting larger. The comparison worth making is between two crawls of the same size.
Two scores are only comparable on the same basis
Every crawl records which version of the check catalogue scored it, and which version of the crawler fetched it. The catalogue grows: it has gone from 43 checks to 80 in a few weeks, and a check added on Tuesday finds problems that existed on Monday and were not being counted.
So a report is never rescored behind your back. The comparison you were shown yesterday stays the comparison you were shown yesterday, and a new check appears on the next crawl rather than retroactively lowering a number you already sent to a client. Where a comparison crosses a catalogue change, the product says so instead of subtracting across it.
What the score is not
- Not a ranking prediction. Technical health is table stakes. ahrefs.com passes structured data on about 1% of its pages and outranks nearly everyone.
- Not a comparison between sites of different sizes, unless you are reading the per-100-pages figures, which is why the competitor panel uses those and not raw counts.
- Not affected by your own custom rules. Checks you write yourself are reported and deliberately carry no weight - that number has to mean the same thing on every site or it means nothing.
Where the points went, on your own report
Every report has a Score breakdown section that shows what each category actually took, against what it could have taken. If a number looks wrong, that section is the argument - and each finding in it says which check produced it, what it costs and how to fix it.
Last changed 2026-08-10. Every check this refers to is listed on the checks page.