Assessments for SEO and Readability

Every SEO and readability assessment from Yoast SEO v3, plus the checks Kirby SEO Audit adds.

Overview

Kirby SEO Audit runs three groups of assessments over your content:

  • SEO assessments: Powered by Yoast SEO v3, focusing on keyword optimization, meta data, links, and technical SEO factors
  • Readability assessments: Powered by Yoast SEO v3, analyzing content structure, sentence length, and overall readability
  • Custom SEO assessments: Provided by Kirby SEO Audit to expand on Yoast SEO

Results are grouped into Good, OK, Needs improvement, and Feedback, regardless of whether an assessment is SEO or readability – see Introduction for what each category means.

Complete Assessment List

Yoast SEO v3 Assessments

SEO Assessments

AssessmentKeyWhat It ChecksKeyphrase
Introduction KeywordintroductionKeywordKeyphrase appears in the first paragraphYes
Keyphrase LengthkeyphraseLengthKeyphrase is not too short or longYes
Keyword DensitykeyphraseDensityKeyphrase frequency is optimal (not too low/high)Yes
Meta Description KeywordmetaDescriptionKeywordKeyphrase is present in meta descriptionYes
Meta Description LengthmetaDescriptionLengthMeta description is 120–156 characters
Subheadings KeywordsubheadingsKeywordKeyphrase appears in H2–H6 headingsYes
Text Competing LinkstextCompetingLinksNo links compete with target keyphrase
Image KeyphraseimageKeyphraseImages contain keyphrase in alt/title attributes
Text ImagesimagesContent includes images
Text LengthtextLengthContent meets minimum word count
Outbound LinksexternalLinksExternal links are present
Title KeywordkeyphraseInSEOTitleKeyphrase appears in page titleYes
Internal LinksinternalLinksInternal links are present
Page Title WidthtitleWidthTitle fits in search results (~60 chars)
URL KeywordslugKeywordKeyphrase is in URL slugYes
Function WordsfunctionWordsInKeyphraseKeyphrase contains content words (not just "the", "a")Yes
Keyphrase DistributionkeyphraseDistributionKeyphrase is evenly distributed throughout textYes

Assessments marked in the Keyphrase column need a keyphrase from keyphraseField or keyphrase.

Readability Assessments

AssessmentKeyWhat It Checks
Subheading DistributionsubheadingsTooLongNo text blocks exceed 300 words without a subheading
Paragraph LengthtextParagraphTooLongParagraphs do not exceed 150 words
Sentence LengthtextSentenceLengthAt most 25% of sentences exceed 20 words
Transition WordstextTransitionWordsContent uses connective phrases
Passive VoicepassiveVoicePassive voice is used sparingly
Text PresencetextPresencePage contains text content
Sentence BeginningssentenceBeginningsSentences do not start the same way repeatedly
Word ComplexitywordComplexityVocabulary is not overly complex

Kirby SEO Audit Custom Assessments

AssessmentKeyWhat It Checks
Single H1singleH1Exactly one H1 heading exists
Heading StructureheadingStructureOrderH1–H6 headings follow sequential order (no skips like H1→H3)
Image Alt AttributesaltAttributeAll images have alt text

Custom Assessment Selection

By default, all assessments are enabled. Pick which SEO and readability assessments to include in the report by adding an assessments property to your blueprint:

# Select the assessments you want to include
assessments:
  - metaDescriptionKeyword
  - metaDescriptionLength
  - titleWidth
  - images
  - textLength
  - imageKeyphrase

Wrap the snippet under buttons.seo-audit (view button) or under sections.<name> with type: seo-audit (section) – see Local Configuration for the full scaffolds.

Assessment names are matched case-insensitively and a trailing Assessment suffix is ignored – titleWidth, titlewidth, and titleWidthAssessment all select the same check.

Language-Specific Features

Some assessments are only available in certain languages. The plugin uses the lang attribute of the rendered page's HTML for analysis, while the translations of the SEO results are based on the language selected in the Kirby Panel.

Make sure that the language code in your languages/xx.php file matches the ISO 639-1 language code (e.g., use de for German, not ger).
AssessmentSupported Languages
wordComplexityde, en, es, fr
keyphraseDistributionar, cs, de, el, en, es, fr, he, hu, id, it, ja, nb, nl, pl, pt, ru, sk, sv, tr
metaDescriptionLengthar, cs, de, el, en, es, fa, fr, he, hu, id, it, ja, nb, nl, pl, pt, ru, sk, sv, tr
textParagraphTooLongar, cs, de, el, en, es, fa, fr, he, hu, id, it, ja, nb, nl, pl, pt, ru, sk, sv, tr
textSentenceLengthar, cs, de, el, en, es, fa, fr, he, hu, id, it, ja, nb, nl, pl, pt, ru, sk, sv, tr
passiveVoicear, cs, de, el, en, es, fa, fr, he, hu, id, it, nb, nl, pl, pt, ru, sk, sv, tr
textTransitionWordsar, ca, cs, de, el, en, es, fa, fr, he, hu, id, it, ja, nb, nl, pl, pt, ru, sk, sv, tr
functionWordsInKeyphrasear, cs, de, el, en, es, fa, fr, he, hu, id, it, ja, nb, nl, pl, pt, ru, sk, sv, tr

Norwegian pages marked no, nn, or nb are all analyzed as Norwegian; the table lists it as nb.

With no assessments list configured, an assessment that does not support your content's language is skipped silently. List it explicitly and the analysis aborts with an error naming the languages that assessment supports.