Scroll Depth Calculator
Calculate scroll depth instantly from document height, viewport size, and scroll position โ or track your real live scroll depth on this page. Free browser-based tool with engagement scoring and export for marketers, UX designers, and developers.
Calculation Mode
Scroll Depth (%) = ((Current Scroll + Viewport Height) รท Document Height) ร 100
Scroll Inputs
Scroll Depth โ Result
Most visitors are leaving early without engaging with the main content.
Pixels Viewed
900 px
Pixels Remaining
4,100 px
Reading Completion
18.0%
Recommendation
Formula & Calculation Breakdown
Formula
Scroll Depth (%) = ((Current Scroll + Viewport Height) รท Document Height) ร 100
Calculation
(0 + 900) รท 5000 ร 100 = 18.00%
What Is a Scroll Depth Calculator?
A scroll depth calculator is a free browser-based tool that measures how far a visitor has scrolled through a webpage, expressed as both a percentage and a pixel value. It answers a question every content-heavy website needs to understand: how much of my page do visitors actually see before they leave?
Unlike full analytics platforms that require tracking scripts, dashboards, and historical data, this calculator lets you compute scroll depth instantly from three numbers โ document height, viewport height, and scroll position โ or switch to Live Browser Simulation mode to see the real scroll depth of the page you're on right now, calculated from your actual browser window as you scroll.
This tool is built for digital marketers, SEO professionals, UX designers, product managers, web developers, bloggers, website owners, and analytics professionals who want to understand content engagement, optimize article length, and identify where visitors typically stop reading. It includes engagement scoring, calculation history, scenario comparison, an embeddable JavaScript scroll tracker snippet, and export as CSV, JSON, or a print-ready report โ entirely in your browser.
How the Scroll Depth Calculator Works
In Manual Calculation mode, enter your page's document height, viewport height, and current scroll position (or drag the slider), and the calculator instantly returns the percentage of the page that has been viewed. In Live Browser Simulation mode, the calculator listens to this page's real scroll events and computes your actual scroll depth in real time.
Core Formula
Effective Scroll = Current Scroll + Viewport Height
Scroll Depth (%) = (Effective Scroll รท Document Height) ร 100, clamped 0โ100
- โDocument Height: The total scrollable height of the page in pixels โ the denominator of the formula.
- โViewport Height: The visible height of the browser window. Because a visitor has 'seen' everything from the top of the page down to the bottom of their current viewport, this is added to the scroll position.
- โSticky Header Height: Optional โ reduces the effective viewport, since a fixed header permanently occupies part of the visible screen and isn't new content being read.
- โFooter Height: Optional โ reduces the effective document height, since footer content (links, copyright text) generally isn't the 'content' being measured for engagement.
- โOffset Adjustment: Optional โ a manual pixel correction added to the scroll position, useful for anchor-link offsets or fixed positioning quirks.
How to Use the Scroll Depth Calculator
Step-by-Step Guide
- 1Choose a Calculation Mode: Select Manual Calculation to enter your own numbers, or Live Browser Simulation to track this page's real scroll position.
- 2Try an Example (Optional): Click Blog Post, Landing Page Bottom, or Long-Form Article to instantly load realistic sample figures.
- 3Enter Your Page Dimensions: Type the document height and viewport height, then drag the scroll position slider. Results update instantly with a 150ms debounce.
- 4Set Optional Adjustments: Expand Optional Inputs to account for a sticky header, footer height, or a manual offset adjustment.
- 5Review Scroll Depth and Engagement: Check the gauge, progress bar, pixels viewed and remaining, and engagement rating (Bounced through Completed).
- 6Compare, Export, or Share: Use Compare as A/B to evaluate two pages side by side, export as CSV or JSON, print a formatted report, or copy a shareable URL.
Key Features
- โManual Calculation and Live Browser Simulation modes
- โLive mode tracks this page's real scroll position in real time
- โInteractive circular gauge with color-coded engagement rating
- โSticky header, footer height, and offset adjustment support
- โ5-tier engagement scoring (Bounced to Completed) with recommendations
- โPixels viewed, pixels remaining, and reading completion estimate
- โCopy-ready embeddable JavaScript scroll tracker snippet
- โCompare-as-A/B page comparison mode
- โShareable calculation URL using query parameters
- โExport report as CSV or JSON with full breakdown
- โPrint-ready formatted report
- โCopy full report to clipboard in one click
- โCalculation history โ save and reload up to 20 past results
- โNo signup required โ 100% free to use
- โAll processing runs locally โ no data leaves your browser
Real-World Use Cases
Blog Post Engagement Check
A blogger's post is 6,000px tall with a 900px viewport. At a scroll position of 2,700px, the calculator returns a 60% scroll depth in the Engaged tier โ confirming most readers are reaching well past the introduction.
Landing Page Bottom Reached
A 3,000px landing page with an 800px viewport shows a visitor scrolled to 2,200px, reaching exactly 100% scroll depth โ Completed โ meaning the visitor saw the entire page, including the final call-to-action.
Long-Form Article Drop-Off
A 12,000px long-form article with a 1,000px viewport shows a typical visitor stopping at 3,500px scrolled, a 37.5% scroll depth in the Skimmed tier โ signaling that content and calls-to-action placed near the bottom likely go unseen by most readers.
Accounting for a Sticky Header and Footer
A page with an 80px sticky header and 150px footer is measured with the same raw numbers as the Manual mode default. After the header reduces effective viewport and the footer reduces effective document height, the calculated scroll depth is slightly higher than the raw formula would suggest โ a more accurate reflection of actual content consumed.
Live Page Self-Test
A UX designer switches to Live Browser Simulation mode while reading this very tool's page, watching the scroll depth percentage update in real time as they scroll โ a quick way to sanity-check how the formula behaves against real browser scroll events.
Tips & Best Practices
Pro Tips
- ๐กPlace your most important call-to-action within the scroll depth your typical visitors actually reach โ measure real behavior with analytics rather than assuming everyone scrolls to the bottom.
- ๐กAccount for sticky headers and footers when interpreting scroll depth โ a large sticky header can meaningfully shrink the effective viewport a visitor sees at any given scroll position.
- ๐กUse scroll depth alongside time-on-page โ a visitor who scrolls to 90% instantly by pressing End didn't necessarily read the content, while a slower scroll pattern suggests genuine reading.
- ๐กTest different content lengths and structures on similar pages to see how scroll depth patterns shift with formatting changes like subheadings, images, and shorter paragraphs.
- ๐กUse the embeddable JavaScript snippet as a starting point for real analytics integration โ swap the console.log call for your analytics platform's event tracking call.
Common Mistakes to Avoid
- โDon't measure scroll depth using only the raw scroll position without adding viewport height โ a visitor has 'seen' everything down to the bottom of their screen, not just the exact scroll offset.
- โDon't ignore mobile viewport differences โ a page that shows 100% scroll depth on a tall desktop viewport might show a much lower depth on a short mobile viewport for the same scroll position.
- โDon't place critical content or forms below the depth most visitors realistically reach without first checking real scroll behavior data.
- โDon't forget that document height can change dynamically on pages with lazy-loaded content or infinite scroll โ a static one-time measurement may not reflect the true final page height.
- โDon't treat a single scroll depth snapshot as a trend โ track it across many sessions to understand typical visitor behavior on a page.
Scroll Depth Engagement Table
| Scroll Depth | Engagement Level | What It Means |
|---|---|---|
| 0% โ 25% | Bounced | Visitors are leaving early without engaging with the main content. |
| 25% โ 50% | Skimmed | Visitors are skimming the page but not reaching deeper content. |
| 50% โ 75% | Engaged | Visitors are engaging with a majority of the page content. |
| 75% โ 90% | Highly Engaged | Most visitors are reading through nearly all of the page. |
| 90% โ 100% | Completed | Visitors are reaching the very bottom of the page. |
* Scroll Depth = ((Current Scroll + Viewport Height) รท Document Height) ร 100, clamped between 0% and 100%.
Frequently Asked Questions
What is scroll depth?
Scroll depth is the percentage of a webpage a visitor has scrolled through, measuring how much content they've been exposed to relative to the total page length.
How do I calculate scroll depth?
Add the current scroll position to the viewport height, divide by the total document height, and multiply by 100: Scroll Depth = ((Scroll + Viewport) รท Document Height) ร 100, clamped between 0% and 100%.
Why do you add viewport height to the scroll position?
A visitor has 'seen' everything from the top of the page down to the bottom of their currently visible screen, not just the exact pixel their scroll position sits at. Adding viewport height accounts for the content currently on screen.
What does Live Browser Simulation mode do?
It attaches a real scroll listener to this page and computes your actual scroll depth using your browser's live document height, viewport height, and scroll position โ updating in real time as you scroll, without any manual input.
How do sticky headers and footers affect scroll depth?
A sticky header permanently occupies part of the viewport, so it reduces the effective viewport height used in the calculation. A footer isn't typically considered readable content, so it reduces the effective document height. Both are optional adjustments in this calculator.
What is a good scroll depth for a webpage?
This varies heavily by content type and length, but generally 50%+ scroll depth suggests a majority of visitors are engaging with the main content, while under 25% suggests most visitors are bouncing before reaching meaningful content.
Can I use this calculator to track a live website?
Yes โ use Live Browser Simulation mode to see this page's own real-time scroll depth, or copy the embeddable JavaScript snippet to add basic scroll depth logging to your own site.
Is my data private when using this calculator?
Yes. All calculations run entirely in your browser using JavaScript. Your page dimensions and scroll data are never transmitted to any server, stored in any database, or accessible to anyone other than you. The calculation history feature saves results only to your browser's local storage, which you can clear at any time.
Who Uses This Calculator?
Digital Marketers & SEO Professionals
Understand how far visitors read into content and optimize page structure and calls-to-action accordingly.
UX Designers
Identify where visitors typically stop scrolling to guide layout, content hierarchy, and visual design decisions.
Product Managers
Use scroll depth as a proxy for content engagement when evaluating page redesigns or content strategy changes.
Web Developers
Prototype and sanity-check scroll depth tracking logic before implementing it in production analytics.
Bloggers & Website Owners
Gauge whether readers are making it through long-form content or dropping off early.
Analytics Professionals
Cross-check scroll depth formulas and edge cases against a simple, transparent reference calculator.
Related Tools
Session Duration Calculator
Calculate average session duration and total session time from hours/minutes/seconds, total seconds, or bulk-pasted analytics data โ with CSV and JSON export.
Page Speed Score Calculator
Estimate your website's performance score from Core Web Vitals โ LCP, INP, CLS, FCP, TBT, and Speed Index โ with a weighted score, letter grade, and optimization tips.
Click Heatmap Density Calculator
Visualize click distribution with an interactive canvas heatmap โ upload a screenshot, import CSV/JSON coordinates, and analyze hotspots, cold zones, and density statistics.
Bounce Rate Calculator
Calculate bounce rate percentage.
Engagement Rate Calculator
Calculate engagement rate.
Conversion Rate Calculator
Compute conversion rate from visitors.