# How we calculate the AI score

Source: <https://www.nfw.run/state-of-the-web/ai-score>

// Method

The AI score measures how ready a site is to be read and cited by AI assistants and AI search. It runs from 0 to 100 and is the weighted mean of ten checks, computed for every working site we audited.

| Check                             | Weight | A site passes when                                                                                                                                               |
| --------------------------------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Content in the HTMLpartial credit | 20     | its analyzed pages are not rendered by the browser alone. The score is the share of non client-side pages among those whose rendering is known.                  |
| llms.txt                          | 15     | the file /llms.txt exists.                                                                                                                                       |
| robots.txt allows AI              | 15     | robots.txt exists and does not disallow the whole site to every bot or to a known AI crawler. An Allow that re-opens part of the site is not taken into account. |
| Structured data                   | 15     | the main page carries JSON-LD structured data.                                                                                                                   |
| Sitemap                           | 10     | a sitemap.xml was found.                                                                                                                                         |
| Title                             | 5      | the main page has a title.                                                                                                                                       |
| Meta description                  | 5      | the main page has a meta description.                                                                                                                            |
| Canonical                         | 5      | the main page declares a canonical URL.                                                                                                                          |
| HTTPS                             | 5      | the site is served over HTTPS.                                                                                                                                   |
| Lighthouse SEOpartial credit      | 5      | the score is the main page's Lighthouse SEO score, divided by 100.                                                                                               |
| Total                             | 100    |                                                                                                                                                                  |

## The AI crawlers we check for

For the robots.txt check we look at whether the site is closed to every bot, or to any of these:

- GPTBot
- OAI-SearchBot
- ChatGPT-User
- ClaudeBot
- Claude-Web
- anthropic-ai
- PerplexityBot
- Google-Extended
- CCBot
- Applebot-Extended

## When a figure is missing

A check the audit cannot answer is left out for that site, and the remaining weights are rescaled. A site whose page rendering is unknown, for instance, is scored out of 80 rather than given zero: missing data never counts as a failure.

[Back to the observatory](https://www.nfw.run/state-of-the-web)
