---
title: The checkup and the score
description: What an Unvibe checkup reads, the 17 checks in three areas (Understood by AI, Readable by crawlers, Usable by agents) and how the score out of 100 is calculated.
order: 2
---

# The checkup and the score

**An Unvibe checkup reads one live website the way AI crawlers do and scores it out of 100.** It checks 17 things across three areas, finds the most likely reason a page looks empty to AI, and turns every failing check into a ranked fix.

## What a checkup reads

- **The homepage's raw HTML**, without running JavaScript, the way GPTBot, ClaudeBot and PerplexityBot read it.
- **The homepage as each AI crawler**: GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot and Googlebot. This catches CDNs, firewalls and bot protection that block AI crawlers or serve them a different page.
- **robots.txt**, including rules for each AI crawler, and any blocking lines are quoted.
- **The sitemap**, from robots.txt or the usual locations.
- **An AI's reading of the page**: Unvibe asks an AI what the product is, using only what the crawler received.

## The three areas

| Area | Share of the score | What it measures |
|---|---|---|
| Understood by AI | 40% | Whether an AI can tell what the app is, who it is for, what it costs and why to pick it |
| Readable by crawlers | 35% | Whether AI crawlers can reach and read the page, and find the rest of the site |
| Usable by agents | 25% | Whether an AI agent can find pricing, sign-up and help on its own |

Each check has a weight. An area's score is the share of its weight that passes, and the overall score combines the three areas at 40%, 35% and 25%.

## The 17 checks

### Readable by crawlers

| Check | What passes |
|---|---|
| Page description | A meta description that says who the app is for |
| Main heading | One clear main heading that says what the app does |
| Sitemap | A sitemap that crawlers can find |
| robots.txt | robots.txt lets AI crawlers such as GPTBot and ClaudeBot in |
| AI crawlers get the page | The CDN, firewall or bot protection serves AI crawlers the same page as browsers |
| Structured data | JSON-LD that describes the app as software, with its price |
| Link previews | A title, description and image for link previews (Open Graph) |
| Real buttons and links | Clickable things are real buttons and links, not plain boxes |

### Understood by AI

| Check | What passes |
|---|---|
| What it is | The first line of the homepage says what the app is |
| Who it's for | The audience is named near the top of the page |
| Category | The page says plainly what kind of product it is |
| Reasons to pick it | Concrete reasons to choose it over alternatives |
| Price on the page | Pricing is written as text on the page, not only in a pop-up |
| Comparison | A page that compares the app with its closest competitors |

### Usable by agents

| Check | What passes |
|---|---|
| Pricing link | A "Pricing" link in the main menu |
| Sign-up button | A clearly labelled sign-up button an agent can find |
| Help | A short FAQ or help section |

## Why a page looks empty to AI

When the crawler gets little or no text, Unvibe names the most likely cause:

- **JavaScript rendering:** the text is added by JavaScript after the page loads, and AI crawlers don't run it. Fix: server-side rendering, static generation or pre-rendering.
- **AI crawlers blocked:** browsers get the page but AI crawlers are blocked or get a different page, usually by a CDN, firewall or bot-protection setting.
- **Blocked by robots.txt or noindex.**
- **Thin page:** readable, but too little text to explain the product.
- **Page error:** the homepage returned an error.

## Fixes

Every failing check becomes a fix, ranked by how many points it adds. Each fix includes what the checkup found and an instruction ready to paste into a coding agent. Mark a fix as done after deploying; the next checkup verifies it on the live site and only then counts it.

## Questions

### How often should I run a checkup?

After each deploy that changes your homepage, robots.txt, sitemap or CDN settings. A checkup that fails, for example because the site is down, doesn't count toward your allowance.

### Does the checkup look at every page?

The checkup scores the homepage. The page audit reads every page from the sitemap the same way AI crawlers do.

### What happens when my score reaches 100?

AI can read all of it. The next step is being recommended: see [AI visibility and rank tracking](/docs/ai-visibility.html).
