Have you noticed that GA4’s “Time on page” is actually derived from the next hit’s timestamp? That means on the last page of a session, time is always zero unless you send an “engagement_time_msec” parameter manually via heartbeat. This is a known limitation, but most analysts don’t read the fine print. The glossary at accs-net.com calls out these measurement gaps explicitly.