Skip to content

Squarespace reading-time guide. Updated October 24, 2026.

How to Add Reading Time to a Squarespace Blog

A reading-time label can help someone decide whether to read a longer article now or return later. It is an estimate based on the amount of text and a chosen reading speed. It cannot tell you how long an individual reader will spend with the page.

Start with a simple text label

Paste the article text into the free Reading Time generator, choose a words-per-minute assumption, and review the result. Add a Text block near the beginning of the article with wording such as “About 4 min read.” Recalculate after substantial edits.

Keep author, date, categories, and tags in the native metadata controls where appropriate. Squarespace documents those separately from custom page content. Read the content metadata guide. A reading-time Text block or code badge does not add search metadata.

Understand what the number means

The generator divides the word count by your chosen words per minute and rounds a positive result up to the next whole minute. At the default 200 words per minute, 600 words produce an estimate of 3 minutes; 601 words produce 4 minutes. Empty content produces no estimate.

The default is an editable assumption for English prose, not a measured personal reading speed. A technical explanation, unfamiliar vocabulary, or a diagram can take longer than its word count suggests. Video playback, interactive tasks, and code examples require separate judgment.

The counter uses English word segmentation through the browser's Intl.Segmenter API and includes word-like segments, including numbers. That avoids treating punctuation alone as a word or depending only on spaces. It does not validate reading-speed assumptions for other languages. Read MDN's segmentation documentation.

Create a free automatic badge

Choose a filled badge, plain text, or a clock icon with text. Set the label, font size, and badge color. Filled badges choose black or white text for contrast; the other styles inherit the surrounding text color. Include “About” or “Estimated” so the label communicates its uncertainty.

Preview and code export are free, with no account required. The article text you paste for the preview is not included in the export. The installed badge reads its own published article; it does not reuse the preview text or send that text to this tool.

Choose the complete article area

The article selector must match exactly one element containing the badge. Use article when that describes one full article on the page, or inspect the published markup and choose one class or ID for its content body. Avoid targeting just the first Text block, which can leave later sections out of the count.

The badge stays at the Code block location. It counts visible text across the selected area and excludes H1 headings, site headers and footers, navigation, asides, forms, buttons, code snippets, hidden content, and the supported callouts. If a selected wrapper contains several article elements, it counts only the article containing its own badge.

A title or metadata outside those excluded elements can still enter the count. Select the article body and inspect the result on your actual template. Reading-time estimates do not justify counting navigation, related posts, or comments as article content.

Install and inspect the published result

The automatic export uses JavaScript in an HTML Code block. Squarespace currently supports JavaScript Code blocks on Core, Plus, and Advanced; check legacy-plan support. Turn Display Source off. Read the Code block requirements.

  1. Choose a location inside the article, usually near the opening text, and confirm the content selector.
  2. Copy the complete export into one Code block. Replace old Reading Time snippets, including any older footer injection.
  3. Temporarily show the counted words. Compare a short known passage, then inspect the full article and its excluded content.
  4. Inspect the published page while signed out on narrow and wide screens. Check wrapping, contrast, and ordinary reading order.
  5. Edit the text and check the refreshed estimate. Inspect Back/Forward navigation and pages that contain more than one article.

The badge updates after supported text and visibility changes. It stays hidden if the selected area is missing, ambiguous, or empty, or if JavaScript or browser word segmentation is unavailable. The article remains readable. Missing badges should prompt a scope and plan check, not a fabricated default minute count.

Publishing a generator update does not repair code already pasted into another site. Replace those exports explicitly. This is a badge for each page where you install it, not an automatic change to every blog post.

Measure reader behavior separately

A badge displaying four minutes is not evidence that anyone read for four minutes. Use your analytics to examine actual engagement, useful navigation, and completed inquiries or purchases separately. A reading-time label does not establish search visibility or promise higher conversion.

For longer articles, a clear structure and useful headings may matter more than a precise-looking number. If readers need navigation, compare native section links and a table of contents. Keep the article useful first, then measure whether the extra reading controls help.

Estimate your article reading time