We use a client-side marker in sessionStorage and a server endpoint to increment views.