Skip to main content

Free Reading Time Calculator

Estimate how long it takes to read any text. Choose a reading speed, get word count, sentence count, and speaking time estimates.

Works offline once loaded
Reading time
51 sec
@ 238 wpm
Speaking time
1 min 33 sec
@ 130 wpm
Slow1 min 21 secAverage51 secFast35 secRead aloud1 min 33 sec
202
Words
1,093
Characters
10
Sentences
1
Paragraphs

Average speeds: Adults read at 200–250 wpm silently. Audiobooks are narrated at 120–150 wpm. Speed readers can reach 500–700 wpm with comprehension drop-off.

Medium articles: ~1,200 words (~5 min). Long-form: ~2,500 words (~10 min). Books average 70,000–90,000 words (~5–6 hours at 250 wpm).

Common uses

  • Reading Time for Blog PostsCalculate accurate reading time estimates for blog articles to add reading time badges and set reader expectations.
  • Reading Time for Emails and NewslettersEstimate reading time for email newsletters and business emails to optimise length and improve open-to-click rates.
  • Reading Time for Presentations and ScriptsCalculate speaking time for presentation scripts, speeches, and voiceovers based on words per minute.
  • Word Count for Social Media CopyCheck the word count, character count, and estimated reading time for social media captions and posts.
  • Estimate Reading Time for Books and ChaptersPaste a chapter or excerpt to estimate how long it takes to read at different reading speeds.

How It Works

Reading time is calculated entirely in your browser using a hand-written word-count algorithm and simple arithmetic β€” no library, no server call. A built-in speed test uses the browser's high-resolution performance.now() timer and requestAnimationFrame to measure how fast you personally read, then feeds that measured WPM back into the estimate.

  1. 1
    Whitespace tokenization
    Your pasted text is split on the regex /\s+/ to count words. Sentence boundaries are detected by matching .!? punctuation runs; paragraph breaks are found by splitting on blank lines. All of this is a few lines of plain JavaScript with zero external libraries.
  2. 2
    Division by reading speed
    Reading time is wordCount Γ· WPM, computed live on every keystroke via a React useMemo hook. Speaking time uses a fixed 130 WPM baseline (a standard rate for out-loud narration). The tool also pre-computes times for four common speeds simultaneously so you can see the full range at a glance.
  3. 3
    Optional personal speed test
    Switching to the Speed Test tab reveals a prose passage (one of five originals, ~180-220 words each). The passage is blurred until you press Start; at that point performance.now() captures a start timestamp and requestAnimationFrame drives a live mm:ss counter. When you press Done, elapsed milliseconds are divided by passage word count to get your actual WPM.
  4. 4
    Sanity check and feedback loop
    Runs shorter than 10 seconds or faster than 1500 WPM are flagged as suspect and excluded. A valid measured speed appears as a chip in the Estimate tab that you can activate with one click, replacing the generic preset with your real reading rate.

Related Tools

Frequently Asked Questions