On our platform we have some reports which show avg. time on page and avg. session duration metrics for the same page. Why is avg. time on page longer than avg. session duration for the same page in these reports? Is something wrong with tracking or reporting?
This is normal situation if you look at the formulas of both metrics:
Average Session Duration
average session duration = all sessions duration / all sessions
ga:avgSessionDuration = ga:sessionDuration / ga:sessions
All sessions includes also bounce sessions. It means that many sessions included in this calculation have 0 duration.
Average Time on Page
average time on page = time on page for all users / (all pageview - exits)
ga:avgTimeOnPage = ga:timeOnPage / (ga:pageviews - ga:exits)
This way bounce sessions are excluded and do not take part in this calculation.
Large difference between average time on page and average session duration means that there are quite a lot of bounce sessions on this page but if users do not exit they spend some time on page (the time shown in by average session duration metric).