Readability & SEO Content Checker – German + English avatar

Readability & SEO Content Checker – German + English

Pricing

$2.00 / 1,000 page or text analyseds

Go to Apify Store
Readability & SEO Content Checker – German + English

Readability & SEO Content Checker – German + English

Bulk readability checker for URLs or text in English and German: Flesch Reading Ease, Flesch-Kincaid, Gunning Fog, SMOG, Flesch-Amstad, Wiener Sachtextformel, LIX, long sentences, passive voice, headings, title/meta length, keyword density and concrete fix hints.

Pricing

$2.00 / 1,000 page or text analyseds

Rating

0.0

(0)

Developer

Fast Data

Fast Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Security

Limited permissions

Share

Readability & SEO Content Checker (German + English)

Check the readability and on-page SEO basics of many web pages or texts in one run, in English and German. You get one flat row per page or text with all the classic readability scores, long sentences, the passive voice share, heading structure, title and meta description length, keyword usage and a short list of concrete fixes.

  • English formulas: Flesch Reading Ease, Flesch-Kincaid Grade, Gunning Fog, SMOG
  • German formulas: Flesch-Amstad (German Flesch) and the Wiener Sachtextformel (1. WSTF)
  • Both languages: LIX, average sentence length, syllables per word, long and complex words
  • Writing checks: long sentences (>20 words in English, >25 in German) with the 3 longest examples, passive voice share (estimate), paragraph length, reading time
  • SEO checks for URLs: H1 count (missing or multiple H1), H2/H3 outline, heading level skips, title and meta description length, canonical, meta robots
  • Keyword checks (optional): occurrences, keyword density and whether the keyword appears in the title, H1, meta description and first paragraph
  • Improvement hints in plain language, e.g. "15 sentence(s) (37%) have more than 25 words. Split the longest one (41 words) first."

Who it is for

  • SEO agencies and content teams auditing blogs, category texts or landing pages in bulk
  • German-speaking publishers and companies who need real German readability formulas, not English formulas applied to German text
  • Copywriters and editors checking drafts before they go live (paste the text, no URL needed)
  • AI and automation workflows that score or rewrite content: n8n, Make, Zapier or an AI agent via MCP

Why this checker

  • German done properly. English formulas misjudge German because German words are longer. This actor uses Flesch-Amstad and the Wiener Sachtextformel for German, with syllables counted through German hyphenation patterns.
  • Main content only. Pages are cleaned with trafilatura: navigation, footer, cookie banners and reference lists are removed before scoring, so the score reflects the article, not the menu.
  • Bulk and cheap. Hundreds of URLs and texts per run for $0.002 each, with no start fee. Failed pages are free.
  • Flat, AI-friendly output. One row per page with stable field names. Export as CSV, Excel or JSON, or feed it to an LLM.
  • Polite crawling. Plain HTTP requests, robots.txt is respected, no browser and no login.

Input

FieldDescription
urlsWeb pages to check (plain HTML, no JavaScript rendering).
textsInline texts: [{"id": "draft-1", "text": "...", "targetKeyword": "optional"}]. Line breaks separate paragraphs. HTML is accepted too.
languageauto (default), en or de. Auto detects the language per page/text.
targetKeywordOptional focus keyword or phrase.
targetGradeOptional maximum school grade, e.g. 8. Compared with Flesch-Kincaid (English) or the Wiener Sachtextformel (German).
includeTextAdds the extracted main text (mainText) to each row.
respectRobotsTxtDefault true. Disallowed URLs are returned as blocked_by_robots and are free.

Example:

{
"urls": [
"https://en.wikipedia.org/wiki/Readability",
"https://de.wikipedia.org/wiki/Lesbarkeit"
],
"texts": [
{"id": "entwurf-de", "text": "Gute Texte sind leicht zu lesen. Kurze Sätze helfen dabei, ..."}
],
"language": "auto",
"targetKeyword": "readability",
"targetGrade": 9
}

Output

Real result for https://de.wikipedia.org/wiki/Lesbarkeit from a test run (shortened):

{
"inputType": "url",
"id": "https://de.wikipedia.org/wiki/Lesbarkeit",
"status": "ok",
"httpStatus": 200,
"title": "Lesbarkeit – Wikipedia",
"titleLength": 22,
"metaDescriptionLength": 0,
"h1Count": 1,
"h1": "Lesbarkeit",
"missingH1": false,
"multipleH1": false,
"h2Count": 9,
"h3Count": 3,
"headingOutline": ["H2: Inhaltsverzeichnis", "H2: Lesbarkeits- bzw. Verständlichkeitskriterien", " H3: Erkennbarkeit – Typografie", "..."],
"language": "de",
"wordCount": 894,
"sentenceCount": 41,
"paragraphCount": 17,
"readabilityScore": 36.2,
"readabilityLevel": "difficult",
"gradeLevel": 12.1,
"fleschAmstad": 36.2,
"wienerSachtextformel": 12.1,
"lix": 58.5,
"avgSentenceLength": 21.8,
"avgSyllablesPerWord": 2.09,
"longWordsPercent": 36.7,
"complexWordsPercent": 31.1,
"longSentencesOver20": 21,
"longSentencesOver25": 15,
"longestSentenceWords": 41,
"longSentenceExamples": ["Der Leseprozess wird allerdings außer von der Lesbarkeit bzw. Verständlichkeit auch von Kriterien beeinflusst, die nicht auf Seiten des Textes selbst liegen, ..."],
"passiveVoicePercent": 36.6,
"readingTimeMinutes": 4.5,
"hints": [
"15 sentence(s) (37%) have more than 25 words. Split the longest one (41 words) first.",
"Average sentence length is 21.8 words. Aim for 12-18 words.",
"Flesch-Amstad is 36.2 (difficult). Use shorter sentences and replace long or technical words with everyday ones.",
"31.1% of words have 3+ syllables. Split compound nouns (e.g. with a hyphen) or rephrase them.",
"About 36.6% of sentences use the passive voice (estimate). Rewrite some in the active voice: say who does what.",
"Title has only 22 characters. Use 30-60 characters and include the main keyword.",
"Missing meta description. Add one with 120-155 characters that summarizes the page."
],
"hintCount": 7
}

From the same run, the English article https://en.wikipedia.org/wiki/Readability scored Flesch Reading Ease 47.2, Flesch-Kincaid grade 10.7, Gunning Fog 13.5, SMOG 12.8 and LIX 46.9 (4,847 words, 17% passive sentences). The short German draft text scored Flesch-Amstad 46.5 and WSTF 7.7.

Other fields: url, finalUrl, error, checkedAt, metaDescription, headingLevelSkips, canonicalUrl, metaRobots, htmlLang, languageSource, languageConfidence, characterCount, avgWordsPerParagraph, longSentenceThreshold, passiveVoiceSentences, note, and with a keyword: targetKeyword, keywordOccurrences, keywordDensityPercent, keywordInTitle, keywordInH1, keywordInMetaDescription, keywordInFirstParagraph. With a target grade: targetGrade, meetsTargetGrade.

status is ok, error (unreachable, HTTP error, not HTML), blocked_by_robots or too_short (fewer than 20 words of main content).

How to read the scores

ScoreLanguageGood for general audiences
readabilityScoreFlesch Reading Ease (en) or Flesch-Amstad (de), 0-100, higher = easier60 or more
gradeLevelFlesch-Kincaid (en) or Wiener Sachtextformel (de), school grade8 or less
gunningFog, smogIndexEnglish, years of schooling12 or less
lixboth, under 40 easy, over 50 hard, over 60 very hardunder 45

Formulas for English: Flesch Reading Ease = 206.835 − 1.015 × ASL − 84.6 × ASW, Flesch-Kincaid = 0.39 × ASL + 11.8 × ASW − 15.59, Gunning Fog = 0.4 × (ASL + 100 × words with 3+ syllables / words), SMOG = 1.043 × √(polysyllables × 30 / sentences) + 3.1291. ASL = average sentence length in words, ASW = average syllables per word. LIX = ASL + 100 × words longer than 6 letters / words.

Syllables are counted with pyphen hyphenation patterns (en_US or de_DE) and checked against a vowel-group count, because hyphenation dictionaries do not split short words such as "about". Scores are most reliable for texts with 30 or more sentences; shorter texts get a note. The passive voice share is a pattern-based estimate (forms of be/get + past participle in English; werden/worden + Partizip II in German).

Deutsch: Lesbarkeitsformeln für deutsche Texte

Englische Formeln bewerten deutsche Texte zu schlecht, weil deutsche Wörter im Schnitt mehr Silben haben. Für deutsche Texte nutzt der Actor daher eigene Formeln. Silben werden mit den deutschen Silbentrennungsmustern (pyphen, de_DE) gezählt.

Flesch-Amstad (deutscher Flesch-Index, Toni Amstad 1978)

FA = 180 − ASL − 58,5 × ASW

ASL = durchschnittliche Satzlänge in Wörtern, ASW = durchschnittliche Silbenzahl pro Wort. Skala 0 bis 100, je höher, desto leichter:

WertBewertung
80-100leicht bis sehr leicht
60-80mittel, gut für Webtexte und Ratgeber
50-60mittelschwer
30-50schwer (Fach- und Sachtexte)
unter 30sehr schwer (wissenschaftliche Texte)

Erste Wiener Sachtextformel (1. WSTF, Bamberger und Vanecek 1984)

WSTF = 0,1935 × MS + 0,1672 × SL + 0,1297 × IW − 0,0327 × ES − 0,875

  • MS = Anteil der Wörter mit drei oder mehr Silben in %
  • SL = mittlere Satzlänge in Wörtern
  • IW = Anteil der Wörter mit mehr als sechs Buchstaben in %
  • ES = Anteil der einsilbigen Wörter in %

Das Ergebnis entspricht ungefähr einer Schulstufe von 4 (sehr leicht) bis 15 (sehr schwer). Für Webtexte an ein breites Publikum sind Werte bis etwa 8 bis 9 ein gutes Ziel. Mit targetGrade können Sie eine Zielstufe vorgeben.

LIX (Lesbarkeitsindex nach Björnsson) = mittlere Satzlänge + Anteil der Wörter mit mehr als sechs Buchstaben in %. Unter 40 leicht, 40 bis 50 mittel, über 50 schwer, über 60 sehr schwer.

Lange Sätze werden für Deutsch ab 25 Wörtern gezählt (longSentencesOver25), die drei längsten stehen als Beispiele in longSentenceExamples. Der Passivanteil ist eine Schätzung (Formen von werden bzw. worden plus Partizip II).

Pricing

Pay per event: $0.002 per analysed page or text ($2 per 1,000), no start fee. Pages that fail, are blocked by robots.txt or have too little text are free. Platform usage is small: about 5 seconds for the default input at 512 MB.

Use via API, n8n or MCP

API (synchronous, returns the items):

curl -X POST "https://api.apify.com/v2/acts/fast_data_asap~readability-seo-content-checker/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"urls":["https://en.wikipedia.org/wiki/Readability"],"targetKeyword":"readability"}'

n8n / Make / Zapier: use the Apify node or app, choose Run Actor with fast_data_asap/readability-seo-content-checker, pass urls or texts, then read the dataset items.

MCP (Claude, Cursor, other AI agents): add the server https://mcp.apify.com?tools=fast_data_asap/readability-seo-content-checker. Your agent can then check a draft's readability and rewrite it until it meets a target grade.

Limits

  • Only publicly available HTML is read; no login, no JavaScript rendering. Single-page apps that render text in the browser may return too_short.
  • Languages: English and German. Other languages are scored with the English formulas when detected as neither.
  • Readability formulas measure sentence and word length, not meaning. Use them as a guide together with your own judgement.
  • No personal data is collected.