Ajouter

Lorem ipsum

Lorem ipsum

Easter egg

3 views

3 min

How to Display a Dynamic Remaining Reading Time in Webflow

Learn how to display a reading time indicator that updates as you scroll in Webflow with JavaScript.

In this tutorial, Sandro, cofounder of Gemeos Webflow agency, shows you how to display a dynamic remaining reading time that updates as you scroll in Webflow.

Example

Scroll the page — the counter appears in the bottom-right corner

📖
Calculating...
0%
VariableValueDescription
WPM200Words per minute (average reading speed)
wordsCounted automaticallyNumber of words in .article-content
totalMinCalculatedTotal reading time in minutes
remainingUpdated on scrollMinutes left based on progress

1. Add the elements in Webflow

Create a Text Block with the ID reading-time-left wherever you want to display the remaining time (article header, sticky sidebar...). Add the article-content class to your content area.

2. Add the script in Footer code

(function() {
var content = document.querySelector('.article-content');
var display = document.getElementById('reading-time-left');
if (!content || !display) return;

var words = content.innerText.trim().split(/\s+/).length;
var WPM = 200;
var totalMin = Math.ceil(words / WPM);

function update() {
var scrolled = window.scrollY;
var docH = document.documentElement.scrollHeight - window.innerHeight;
var pct = Math.min(1, scrolled / docH);
var wordsRead = Math.floor(words * pct);
var remaining = Math.ceil((words - wordsRead) / WPM);
if (remaining <= 0) {
display.textContent = 'Article finished ✓';
} else if (remaining === totalMin) {
display.textContent = totalMin + ' min read';
} else {
display.textContent = remaining + ' min remaining' + (remaining > 1 ? 's' : '');
}
}

update();
window.addEventListener('scroll', update, { passive: true });
})();

3. Variant: combined progress bar

Combine it with the reading progress bar for a complete visual and text indicator.

good to know

Average reading speed is 200 to 250 words per minute for technical content. Adjust WPM based on your audience: 180 for dense content, 250 for lighter content. The calculation is based on page scroll, not the actual time spent on the article: a user who leaves the article open without scrolling will still see the total time.

Conclusion

Remaining reading time helps reduce drop-off by giving readers a clear goal. Use cases:

  • Long blog posts (5 min+)
  • Technical guides and tutorials
  • Documentation pages

Published on

You might be interested in these tutorials

Similar tutorials

SEO / GEO

5 min read

5 views

How to Set Up a Redirect in Webflow? (2026)

Updated on 19.12.2025 by Sandro DA SILVA

SEO / GEO

5 min read

5 views

Add structured data to your Webflow site?

Updated on 21.08.2025 by Sandro DA SILVA

No-code

5 min read

5 views

How to Obfuscate a Link in Webflow

Updated on 23.04.2025 by Sandro DA SILVA

Let’s f*****G GO !!

Ready to launch
Your business?

Alexandre

Max

Enora

Bryan

Cannelle

Tiphaine

You'll :heart: our collaboration...