Text & Data🌐 YAS server-sideAPI availableintermediate
Readability Score
Computes Flesch Reading Ease and grade level for any text.
Processed by YAS · not stored
Ready to runInstant execution
Result
—What does this tool do?
Computes Flesch Reading Ease and grade level for any text.
Why would I use it?
- You want your content to match your audience's reading level.
- You are auditing marketing copy or docs.
- You are comparing drafts.
Real-life example
Input
This is a simple sentence.
Output
Flesch Reading Ease ~91 (very easy) · Grade ~4
Short sentences and common words score higher.
Input → Process → Output → Next
- Input
- Paste text.
- Process
- YAS counts syllables, words and sentences, then scores.
- Output
- Reading ease and grade level.
- Next action
- Simplify long sentences to lower the grade level.
Common mistakes
- Applying readability formulas to code or mixed text.
- Trusting the score alone — formulas are heuristics.
- Ignoring that technical content legitimately scores higher.
What the result means
The grade level approximates the education years needed to read the text.
Privacy & security
Your input is sent to YAS infrastructure because the tool requires server-side processing or public network queries. Input is not stored.
API
Endpoint
POST https://yas.sh/api/v1/tools/readability-score
Request Header
Content-Type: application/json
cURL
curl -X POST "https://yas.sh/api/v1/tools/readability-score" \
-H "Content-Type: application/json" \
-d '{"input":"The quick brown fox jumps over the lazy dog."}'JavaScript
const res = await fetch("https://yas.sh/api/v1/tools/readability-score", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
"input": "The quick brown fox jumps over the lazy dog."
}),
});
const data = await res.json();Python
import requests
r = requests.post("https://yas.sh/api/v1/tools/readability-score", json={"input":"The quick brown fox jumps over the lazy dog."})
data = r.json()| Field | Type | Required | Description |
|---|---|---|---|
| input | string | Yes | Any English text |
Success response
{ "result": { "sentences": 1, "words": 9, "syllables": 11, "fleschReadingEase": 70.2, "gradeLevel": 6.2 } }Flesch Reading Ease + Flesch-Kincaid grade level + sentence/word stats.
Error responses
400 VALIDATION_ERROR— invalid input or unsupported option.413 PAYLOAD_TOO_LARGE— input exceeds the 64 KB limit.429 RATE_LIMIT_EXCEEDED— rate limit exceeded (60 req/min).
Limits
- Maximum input: 64 KB per request.
- Rate limit: 60 requests/min per IP address.
- Authenticated accounts benefit from higher tier quotas.
Related tools