Text tool

Reading Time Calculator

Paste text and compare disclosed planning estimates. Defaults are source estimate parameters, not academic reading-speed facts or language-aware word segmentation.

In-browser processingNo account requiredPrivacy details ↗

Paste text and compare disclosed planning estimates. Defaults are source estimate parameters, not academic reading-speed facts or language-aware word segmentation.

Source estimate parameters (editable)

Reading profiles default to 150, 238, 350 and 700 WPM; audio defaults to 130 WPM. The custom rate starts at 200 WPM. Images default to 12 seconds each with the first image excluded; code blocks default to 30 seconds each. These are editable heuristics from the source contract, not researched facts about the pasted content or every language.

Words are nonempty runs after trimming and splitting on JavaScript whitespace. Sentences are groups matching [.!?]+; they are punctuation groups, not grammar analysis. Paragraphs are blocks separated by blank lines. Characters are UTF-16 code units. This is not semantic segmentation; Chinese, Japanese and Korean counts may differ substantially from linguistic words.

Extra seconds = max(0, images − excluded first image) × image seconds + code blocks × code seconds. Every reading profile, custom rate and audio estimate uses words ÷ WPM × 60 + the same extras. Total seconds are rounded upward only after addition. Image and code counts are entered manually, not detected from text.

Text: 100,000 UTF-16 code units; rates: finite 50–2,000 WPM; image/code counts: whole numbers 0–1,000; seconds per item: finite 0–3,600. Everything runs locally and input is not uploaded or saved. Actual time depends on language, familiarity, layout and pauses.

Toolbox Online

A QUICK WALKTHROUGH

How to use this tool

  1. Paste up to 100,000 UTF-16 code units.
  2. Set a custom rate, image/code counts and optional source estimate parameters.
  3. Review text statistics, shared extra seconds, reading profiles and audio time.

Explicit counting rules

Words are nonempty runs after trimming and splitting on JavaScript whitespace. Sentences are groups matching [.!?]+; they are punctuation groups, not grammar analysis. Paragraphs are blocks separated by blank lines. Characters are UTF-16 code units. This is not semantic segmentation; Chinese, Japanese and Korean counts may differ substantially from linguistic words.

Source estimate parameters (editable)

Reading profiles default to 150, 238, 350 and 700 WPM; audio defaults to 130 WPM. The custom rate starts at 200 WPM. Images default to 12 seconds each with the first image excluded; code blocks default to 30 seconds each. These are editable heuristics from the source contract, not researched facts about the pasted content or every language.

Shared extra time

Extra seconds = max(0, images − excluded first image) × image seconds + code blocks × code seconds. Every reading profile, custom rate and audio estimate uses words ÷ WPM × 60 + the same extras. Total seconds are rounded upward only after addition. Image and code counts are entered manually, not detected from text.

Bounds and privacy

Text: 100,000 UTF-16 code units; rates: finite 50–2,000 WPM; image/code counts: whole numbers 0–1,000; seconds per item: finite 0–3,600. Everything runs locally and input is not uploaded or saved. Actual time depends on language, familiarity, layout and pauses.

GOOD TO KNOW

Common questions

Does this count real words in every language?

No. Whitespace tokens and ASCII punctuation groups follow disclosed mechanical rules; they do not identify linguistic words or sentences.

Shared extra time

Extra seconds = max(0, images − excluded first image) × image seconds + code blocks × code seconds. Every reading profile, custom rate and audio estimate uses words ÷ WPM × 60 + the same extras. Total seconds are rounded upward only after addition. Image and code counts are entered manually, not detected from text.

Source estimate parameters (editable)

Reading profiles default to 150, 238, 350 and 700 WPM; audio defaults to 130 WPM. The custom rate starts at 200 WPM. Images default to 12 seconds each with the first image excluded; code blocks default to 30 seconds each. These are editable heuristics from the source contract, not researched facts about the pasted content or every language.