squirrelscan
GitHub

LLM content quality score: what it measures

A language-model read of the page copy, scored 0 to 100 with written feedback. Retired in this release: it never runs.

What the quality score is

This rule sends the page’s visible text to a language model and asks it to score the content out of 100 on clarity and readability, depth of information, structure, value to the reader, grammar and spelling, and originality. It returns the score and two or three sentences of feedback.

It is a second opinion rather than a measurement. The score is a model’s judgement of prose, so it is useful for finding the pages on a large site that most need a human read, and not useful as a target to optimise. The rule is disabled by default for that reason, and because it costs an API call per page.

What squirrel checks

The rule runs on every crawled page when it is enabled and a key is available. It extracts the visible text, excluding scripts, styles, nav, footer and header, and sends the first 3000 characters. It emits a single check named content-quality:

  • Skipped when no API key is configured. Message: Content quality analysis skipped, with the reason OPENROUTER_API_KEY not set.
  • Skipped when the page has no text. Message: No content to analyze.
  • Fail when the model call itself failed. Message: LLM analysis failed: <error>.
  • Pass at a score of 70 or above. Message: Content quality score: 84/100.
  • Warn from 40 to 69. Message: Content quality needs improvement: 52/100.
  • Fail below 40. Message: Poor content quality: 31/100.

The model’s feedback is carried as the check value, truncated to 200 characters. Severity for the rule is info and the weight is 3, and it is disabled by default.

How to fix it

Read the feedback and the page together. The score on its own does not tell you what to change, and a model’s opinion of prose is worth exactly as much as your agreement with the reasons it gives.

It costs one model call per page, so it suits a section you suspect rather than a whole site.

Rule IDcontent/quality
CategoryContent
ScopePer-page
Severityinfo
Weight3/10
DefaultRetired (never runs)

Enable / disable

There is nothing to disable: the rule never loads, so a disable entry for content/quality does nothing and can be removed from your config.

Disable all Content rules

[rules]
disable = ["content/*"]

Enable only this rule

This rule cannot be turned on in this release. Its metadata sets disabled: true, and the rule loader drops it before any enable, disable or [rule_options] setting is read, so no configuration runs it.

Content findings ship in every audit next to the SEO, performance and agent experience rules. See Fix SEO issues with AI for how an agent works through a report.

References

Check your site

Run squirrel audit https://example.com and open the Content section of the report. Each scored page is reported with its score and the model’s written feedback. Signed-out local audits need no account and cost nothing. Signed-in audits spend credits.

Type to search…

↑↓ navigate↵ openesc close