Group name

Website heatmap

Behavior analytics

Voice of customer

Research methods

User journey map

Research methods

User behavior analytics

Behavior analytics

Usability testing

Research methods

Trust signals

Page levers

Tree testing

Research methods

Time on page

Metrics and funnel

Survey design

Research methods

Social proof

Page levers

Session replay

Behavior analytics

Session recording

Behavior analytics

Segmentation analysis

Metrics and funnel

Scroll map

Behavior analytics

Scroll depth

Behavior analytics

Revenue per visitor

Metrics and funnel

Rage click

Behavior analytics

PIE framework

Research methods

Mobile conversion rate

Metrics and funnel

Micro conversion

Metrics and funnel

Message match

Page levers

Macro conversion

Metrics and funnel

LIFT model

Research methods

ICE score

Research methods

Hotjar

Tools

Hick's law

Page levers

Goal completion

Metrics and funnel

Funnel analysis

Metrics and funnel

Form analytics

Behavior analytics

Form abandonment

Behavior analytics

Five second test

Research methods

Fitts's law

Page levers

Exit rate

Metrics and funnel

Event tracking

Metrics and funnel

Drop-off rate

Metrics and funnel

Dead click

Behavior analytics

CRO audit

Research methods

Conversion funnel

Metrics and funnel

Cohort analysis

Metrics and funnel

Cognitive load

Page levers

Click map

Behavior analytics

Cart abandonment

Metrics and funnel

Bounce rate

Metrics and funnel

Average order value

Metrics and funnel

Attention map

Behavior analytics

Anchoring bias

Page levers

Above the fold

Page levers
This is some text inside of a div block.
Created:
updated:

What is time on page?

Time on page is the duration between a visitor arriving on a page and moving to the next one. The classic implementation cannot measure the final page of a session, because it derives duration from the gap between two pageview timestamps and no second timestamp exists. GA4 replaced it with engagement time, which measures active foreground time directly.

Why can the old metric not measure the last page?

Because it is calculated by subtraction, not by observation.

Universal Analytics recorded the timestamp of each pageview and computed time on page as the difference between consecutive ones. A visitor viewing page A at 10:00 and page B at 10:03 spent three minutes on A.

When the visitor leaves from page B, there is no next timestamp. Time on page for B is recorded as zero. Those zeros then enter the average, dragging reported time on page down on exactly the pages where sessions end.

The consequence is systematic and large. Any page where visitors commonly finish, which includes most good content pages, has its measured time on page depressed by a mechanism unrelated to how long anyone actually read.

What did GA4 change?

GA4 measures engagement time directly rather than by subtraction. The page reports how long it was in the foreground and receiving attention, using visibility events and periodic heartbeats.

Improvements this brings:

  • Final pages are measured, removing the zero problem
  • Background tabs do not count, so a page left open behind other tabs stops accruing time
  • Engaged sessions become definable, which is what GA4's bounce rate is built on

Remaining limits: a visitor who leaves the page open and walks away still accrues some time before the heartbeat stops, and foreground presence is still not the same as reading.

Historical note that catches people: engagement time and Universal Analytics time on page are different metrics with different definitions, so a trend spanning the migration is an artifact rather than a change in behavior.

Is time on page worth using?

As a supporting signal, never as a target.

Legitimate uses:

  • Detecting a sudden drop after a change, which usually indicates something broke
  • Comparing versions of the same page in a test, where the definition is constant
  • Distinguishing skim from read when paired with scroll depth, since depth without time means scrolling and time without depth means stalling

Why it fails as a target: long time on page is ambiguous. It can mean engagement, or confusion, or a form the visitor cannot complete. A checkout page with rising time on page is usually getting worse. Optimizing to increase it can mean optimizing for confusion.

Related terms

Bounce rate · Scroll depth · Exit rate · Event tracking · Attention map

Service: Conversion Rate Optimization.

FAQ

What is a good average time on page?

A page's purpose sets the answer, and it sets the direction too. A pricing page should be read quickly and acted on, so a rising number there is usually a warning. A technical guide should hold attention for minutes, where a falling number is the warning instead. Read the direction against the page's own history, since the level on its own says nothing.

Why does GA4 not show time on page?

GA4 replaced it with average engagement time, which counts foreground, in-focus time instead of the gap between pageviews. Expect numbers to move in both directions after a migration: exit pages read higher because they are finally measured at all, and pages people leave open in a background tab read lower because that time no longer counts.

Does time on page affect SEO?

Search engines do not use it as a direct ranking factor, and they cannot observe it on most sites. The behaviors correlated with very short times, such as slow loading and poor relevance, do relate to signals engines measure.

Ask AI about this term

Want more revenue from your existing traffic?

We run CRO for Webflow sites — from audit to A/B testing.

Work with us

Work with us