A single-page website can change its visible page without a full browser reload. Analytics may record a page view on a browser-history change, but the implementation must be tested so navigation is neither missed nor counted twice.
Work through the decision
Use a small, dated sample before applying the method across a whole site or team. Record the exact input and intended outcome so another reviewer can reproduce the decision. The example below illustrates the method; it is not a claimed Megvi client result.
| Step | Practical check |
|---|---|
| Map navigation modes | List first load, internal route change, back button, hash jump and modal state. |
| Inspect configuration | Check GA4 enhanced measurement and any manual page_view tags for overlapping history triggers. |
| Run a controlled session | Navigate a known path with consent state recorded; note expected page locations and referrers. |
| Compare outputs | Check DebugView or test reports against the route log, then remove duplicate or missing triggers. |
Worked example
Illustrative session: a visitor loads /services/, opens /services/crm/ through client-side routing, then presses Back. Expected page views are three distinct route states if each navigation represents a page. If both enhanced measurement and a custom history listener fire on the CRM route, the middle step appears twice and needs one source removed.
When this approach can fail
Hash changes and modals do not always represent a new page. Decide from user meaning, not merely from the URL mutation.
Verification checklist
Test first load, forward, back, reload and consent-off states. Save the expected route ledger and actual event IDs before changing production tags.
Next step
Use the resulting page-view evidence to choose meaningful events in Choosing Which Website Actions Deserve an Analytics Event. To apply this to a live business, review Megvi’s Google Ads service and bring the current page, report or workflow plus the result you want to verify.
Reference: Google Analytics: Enhanced measurement events, checked 23 October 2026. The example above is illustrative; check the current platform and site configuration before acting.