Text Readability Analyzer - 6 Formulas, Grade + Tips
Pricing
from $0.32 / 1,000 scored texts
Text Readability Analyzer - 6 Formulas, Grade + Tips
Score up to 100 texts per run with Flesch, Flesch-Kincaid, Gunning Fog, SMOG, ARI and Coleman-Liau + consensus grade, audience label and concrete fix-it tips. $0.0004 per text all six formulas, no start fee, word-free inputs never charged — vs $0.0005-$0.015 measured incumbents.
Pricing
from $0.32 / 1,000 scored texts
Rating
0.0
(0)
Developer
Broke to Built
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Share
Readability Score API - Flesch, Flesch-Kincaid, Gunning Fog, SMOG, ARI, Coleman-Liau
Score any text with all six standard readability formulas at once, plus a consensus grade level, a plain-English audience label, and specific suggestions for what to fix. Up to 100 texts per run. $0.0004 per text. Inputs with no words are recorded free.
Editors gate on grade 8 to 9. Plain-language regulations require a measurable level. SEO teams audit whole content libraries for reading difficulty. One run answers "how hard is this to read, and exactly which lever is making it hard?"
What you get
Per text, one record with these exact fields:
readingLevel-Very EasythroughExtremely Difficultaudience- who can read it, in plain wordsscores-fleschReadingEase,fleschKincaidGrade,gunningFog,smog,automatedReadabilityIndex,colemanLiauIndex, andconsensusGradestats-sentences,words,paragraphs,syllables,characters,uniqueWords,complexWords,avgWordsPerSentence,avgSyllablesPerWord,pctComplexWordssuggestion- which lever to pull, with the measured number that triggered ittextPreview- the first 60 characters, so you can tell records aparterror- present instead of scores when the input had no words. Never charged.
consensusGrade is the average of the five grade-producing formulas. It is the number to gate on.
Example 1: dense professional prose
Input:
{ "text": "Notwithstanding the aforementioned contractual stipulations, the counterparty shall indemnify and hold harmless the disclosing entity from any consequential liabilities arising from unauthorized dissemination of proprietary informational assets." }
Output (real run, 2026-08-15):
{"ok": true,"readingLevel": "Extremely Difficult","audience": "Professional / academic","scores": {"fleschReadingEase": -49.3,"fleschKincaidGrade": 26.8,"gunningFog": 33,"smog": 25.3,"automatedReadabilityIndex": 29.9,"colemanLiauIndex": 30.4,"consensusGrade": 29.1},"stats": {"sentences": 1, "words": 27, "paragraphs": 1, "syllables": 73, "characters": 217,"uniqueWords": 24, "complexWords": 15,"avgWordsPerSentence": 27, "avgSyllablesPerWord": 2.7, "pctComplexWords": 55.6},"suggestion": "Aim for Flesch Reading Ease 60+ (plain English) for a general web audience. Sentences average 27 words - break long sentences into shorter ones (target <20). 55.6% of words have 3+ syllables - swap in simpler synonyms. Word complexity is high - prefer shorter, common words."}
A negative Flesch score and a consensus grade of 29 is the formulas saying "no general audience will
finish this sentence". The suggestion names the two causes with their measured values.
Example 2: plain writing, for contrast
Input:
{ "text": "The cat sat on the mat. It was warm. The sun was out. We were happy. It was a good day." }
Output (real run, 2026-08-15, trimmed):
{"ok": true,"readingLevel": "Very Easy","audience": "5th grade - easily understood by an 11-year-old","scores": { "fleschReadingEase": 113.9, "fleschKincaidGrade": -1.6, "gunningFog": 1.7, "consensusGrade": 0 },"stats": { "sentences": 5, "words": 21, "avgWordsPerSentence": 4.2, "pctComplexWords": 0 },"suggestion": "Readability is solid for a general audience - no major changes needed."}
Similar length to Example 1, opposite verdict: 113.9 against -49.3 on the same Flesch scale. The release test asserts that a simple text and a dense one separate by more than 40 Flesch points on every deploy, so the formulas demonstrably discriminate. Note that grade scores can go negative on very simple text - that is the formulas working, not an error.
Example 3: auditing a content library
Input:
{"texts": ["Article one body...", "Article two body...", "Article three body..."],"maxTexts": 100}
One record and one charge per text. Sort by consensusGrade descending and the top of that list is
your rewrite queue.
When texts is filled, the single text field is ignored - you are charged for the texts you
listed and nothing else.
Pricing
$0.0004 per text scored. No start fee. One event covers one text scored across all six formulas, with the consensus grade, the audience label, the full statistics block and the suggestion - asking for six formulas costs the same as asking for one, because you always get all six. Texts with no words are recorded and never charged.
A 1,000-page content audit costs $0.40. A 10,000-page one costs $4.
Honest comparison, read from the Apify Store on 2026-08-07:
| Actor | Pricing | Cost of 1,000 texts |
|---|---|---|
| This actor | $0.0004 per text | $0.40 |
| ninhothedev/readability-analyzer | $0.00005 start + $0.0005 per item | ~$0.50 |
| perryay/content-readability-analyzer | $0.015 per analysis | $15 |
When NOT to use this
- Any language other than English. The syllable counter is an English heuristic, and every one of
these formulas was calibrated on English. Scores on Spanish, German or Chinese text are numbers
without meaning. Detect the language first (
EliAI/text-language-detector) and only score English. - Judging whether writing is good. These formulas measure sentence length and word length. A grammatical nonsense sentence made of short words scores "Very Easy". Use this as the mechanical gate before a human edit, never instead of one.
- Short texts, if you care about SMOG specifically. SMOG was designed for samples of 30 or more
sentences. It is reported regardless, but on a paragraph, weight
consensusGradeinstead. - Technical writing judged against a general-audience target. A correct API reference is full of long precise nouns and will always score badly. Gate technical docs against their own baseline, not against grade 8.
- Counting words only. If you do not need the formulas,
EliAI/text-statisticsis the cheaper, simpler tool for that.
Honest limits
- English only, as above.
- Syllable counting is heuristic (roughly 90%+ per-word accuracy); paragraph totals are reliable, individual rare words can be off by one.
- Sentences split on
.,!,?; abbreviation-heavy text over-counts sentences slightly, which nudges the grade down a little. - Up to 100 texts per run.
FAQ
Which score should I gate my content on?
consensusGrade, the average of the five grade-level formulas - it is the most stable single number
because it smooths out each formula's individual quirks. For general web content, gate at 9 or below.
For plain-language legal or medical requirements, 8 or below.
What is a good Flesch Reading Ease score? 60 to 70 is plain English and the usual web target. 30 to 50 is difficult, college-level. Above 80 is conversational and very easy. Below 30 will lose almost any general audience.
Why six formulas instead of just Flesch-Kincaid? Each weights sentence length against word complexity differently, so any single one can be skewed by a quirk of the text - a few long lists, one enormous sentence. You get all six raw scores plus their consensus, so you can gate on the stable number and still inspect the outliers.
How do I check the reading level of a whole website?
Extract the page text first (a page-text extractor pairs well), then batch up to 100 texts per run
here and sort by consensusGrade. At $0.0004 per page a 1,000-page audit is $0.40.
What do the suggestions look like? Mechanical and specific, with your measured numbers in them: "Sentences average 27 words - break long sentences into shorter ones (target <20). 55.6% of words have 3+ syllables - swap in simpler synonyms."
Does it work on non-English text? No - see "When NOT to use this". It will return numbers, and those numbers will not mean anything.
Why did some rows come back ok: false?
The input contained no words, only punctuation or symbols. Recorded with the reason, never charged.
Use from code or AI agents
curl -s "https://api.apify.com/v2/acts/EliAI~text-readability-analyzer/run-sync-get-dataset-items?token=$APIFY_TOKEN" \-X POST -H 'Content-Type: application/json' \-d '{"text": "Your draft goes here."}'
Agents: connect Apify MCP and call the EliAI/text-readability-analyzer tool.
- Capability: score one or many texts across 6 readability formulas with consensus grade, audience label and fix-it tips
- Required input:
text(string) ortexts(array) - Returns: one record per text;
consensusGradeandsuggestionare the headline fields - Bounded: 100 texts per run; failures isolate per text
- Side effects: none (texts never leave the run)
Related actors
- Text Statistics (
EliAI/text-statistics) - the counts alone, without the formulas. - Language Detector (
EliAI/text-language-detector) - run this first to keep non-English text out of your readability audit.