Readability Analyzer
Pricing
from $0.01 / 1,000 analyzed words
Readability Analyzer
Analyze pasted text or uploaded TXT, Markdown, HTML, PDF, and DOCX files. Get readability scores, grade bands, sentence flags, word statistics, and score drivers in a clean Apify dataset.
Pricing
from $0.01 / 1,000 analyzed words
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
📖 Readability analyzer for text and documents
Readability Analyzer checks pasted text and uploaded documents for reading difficulty. Paste copy, or upload a .txt, .md, .html, .pdf, or .docx file, and get one clean dataset row with readability formula scores, grade bands, sentence flags, text statistics, and score drivers.
Use it when you need a readability analyzer API for documentation, help-center articles, landing page copy, policy drafts, classroom material, content QA, or editorial workflows. The Actor analyzes the content you provide. It does not crawl web pages, require cookies, ask for a login, call an AI model, or need a third-party readability API key.
For a quick first run, keep the prefilled text and start the Actor. You will see how formula scores, hard sentences, word counts, reading time, and summary fields appear before you connect larger document checks through the Apify API, schedules, webhooks, or dataset exports.
✅ What this readability analyzer does
- Analyzes pasted text.
- Analyzes uploaded
.txt,.md,.html,.pdf, and.docxfiles. - Uses the uploaded file instead of pasted text when both are provided.
- Supports long text by splitting analysis into chunks internally.
- Returns 11 standard readability formula scores.
- Flags hard and very hard sentences.
- Lists long words, many-syllable words, and adverbs for each sentence.
- Returns text statistics such as letters, words, unique words, sentences, syllables, paragraphs, longest sentence, and time estimates.
- Adds deterministic summary fields such as readability band, approximate grade band, hardest sentence, and score drivers.
- Charges only successfully analyzed words.
The Actor is deterministic. The same extracted text returns the same kind of row each time. It is built for text-bearing files. Scanned or image-only PDFs do not produce readability scores because there is no OCR step.
📊 Data you get
Each dataset row represents one successfully analyzed text or file. Rows include:
| Field | Description |
|---|---|
content | Source type, uploaded file name and extension when available, analyzed word count, and chunk count. |
summary | Readability band, approximate grade band, average sentence length, hard sentence counts, hardest sentence, and score drivers. |
readability | Flesch Reading Ease, Flesch-Kincaid, Gunning Fog, SMOG, Powers-Sumner-Kearl, FORCAST, Coleman-Liau, ARI, Dale-Chall, Spache, and Linsear Write scores. |
textStats | Letter, word, unique word, sentence, syllable, paragraph, longest sentence, and reading/speaking/writing time statistics. |
sentences | Sentence-level evidence with original text, cleaned text, word count, hard flags, long words, many-syllable words, and adverbs. |
You can export the dataset as JSON, CSV, Excel, XML, RSS, or HTML, or use the same output from the Apify API, webhooks, schedules, and integrations.
🚀 How to run it
- Open the Actor input.
- Paste text into Text to analyze, or upload a supported file in File to analyze.
- Start the Actor.
- Open the dataset to review the readability scores and sentence evidence.
If you provide both pasted text and a file, the file is analyzed. This is useful when you leave the example text in place but upload your own document.
🧾 Input example
{"textContent": "Simple writing helps readers. Long sentences with unnecessary complexity can make useful information harder to understand."}
For file runs, upload one .txt, .md, .html, .pdf, or .docx file in the Apify Console input form.
📤 Output example
{"content": {"sourceType": "text","fileName": null,"fileExtension": null,"wordCount": 17,"chunksAnalyzed": 1},"summary": {"readabilityBand": "standard","approximateGradeBand": "8-10","averageSentenceLength": 8.5,"hardSentenceCount": 0,"veryHardSentenceCount": 0,"hardestSentence": "Long sentences with unnecessary complexity can make useful information harder to understand.","scoreDrivers": [{"driver": "Average sentence length","value": "8.5 words","impact": "helps readability"}]},"readability": {"fleschReadingEase": 63.8,"fleschKincaidGradeLevel": 8.2,"gunningFogIndex": 10.6,"smogIndex": 9.4,"powersSumnerKearl": 7.8,"forcast": 9.1,"colemanLiauIndex": 9.7,"automatedReadabilityIndex": 8.9,"daleChallReadabilityScore": 7.1,"spacheReadabilityScore": 6.4,"linsearWriteFormula": 8.5},"textStats": {"letterCount": 96,"wordCount": 17,"uniqueWordCount": 17,"sentenceCount": 2,"syllableCount": 27,"totalSyllables": 27,"averageSyllablesPerWord": 1.59,"longWordCount": 1,"paragraphCount": 1,"longestSentence": "Long sentences with unnecessary complexity can make useful information harder to understand.","readingTimeSeconds": 6,"speakingTimeSeconds": 8,"writingTimeSeconds": 43},"sentences": [{"index": 1,"sentence": "Simple writing helps readers.","cleanedSentence": "Simple writing helps readers.","wordCount": 4,"isHard": false,"isVeryHard": false,"longWords": [],"manySyllableWords": [],"adverbs": []}]}
💳 Pricing
This Actor uses pay-per-event pricing. It charges one word-analyzed event for each word successfully analyzed after text or file extraction. Failed inputs, unsupported files, and empty extracted documents do not emit dataset rows or charge analyzed-word events.
⚠️ Limits and caveats
- PDF support is for text-based PDFs. Scanned or image-only PDFs need OCR before readability analysis.
- The Actor analyzes one pasted text or one uploaded file per run.
- It does not fetch website URLs or crawl pages. Use a webpage text extractor first if your content lives on public web pages.
- It does not rewrite text, generate AI suggestions, judge tone, or score audience fit.
- Formula scores are deterministic readability metrics, not legal, medical, educational, or accessibility advice.
❓ FAQ
📄 Can I analyze a PDF?
Yes, when the PDF contains selectable text. Scanned PDFs and image-only PDFs need OCR first.
🧮 Does this Actor use AI?
No. It uses deterministic readability formulas and text statistics. It does not send your text to an LLM.
🌐 Can I analyze a web page URL?
No. This Actor analyzes pasted text or uploaded files. Extract web page text first, then paste or upload the extracted text.
📦 Why do I get one dataset row?
The product is a document-level readability audit. Sentence details are included inside the row so exports keep the full analysis together.
📝 Changelog
- 1.0: Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Other actors
- Webpage Text Extractor ↗ - Extract clean text from public web pages before readability analysis.
- Profanity Checker ↗ - Check submitted text for blocked words and match evidence.
- Unicode Text Inspector ↗ - Find hidden Unicode characters, bidi controls, and homoglyphs in text.
- YAML Validator & Converter ↗ - Validate and convert YAML, JSON, and TOML documents.
- XML JSON Converter ↗ - Convert XML and JSON for API workflows and exports.
Made with ❤️ by Maxime Dupré