Docs › Use the dashboard
Events, links and downloads
Count clicks and actions with a data attribute or one line of JavaScript, and see outbound links, downloads, time on page and scroll depth.
Custom events
Count actions such as a sign-up or a click on a button, with extra properties.
Without code, put data-event on any element:
<button data-event="signup" data-event-plan="pro">Start free</button>
Every data-event-* attribute becomes a property (plan: "pro").
Or from your own code:
window.nvivio?.track('signup', { plan: 'pro' });
Limits:
- Event names: letters, digits, spaces, dot, colon, hyphen or underscore, up to 64 characters.
- Up to 20 properties per event; names up to 40 characters, text up to 200 characters.
Calling nvivio.track() before the script has loaded? Add the queue for early calls.
Events appear in Reports › Events, in the route of each visit, on Live and as goals: turn an event into a goal with one click.
Outbound links and downloads
A click on a link to another site, or on a file, is counted together with the text of the link (up to 80 characters). File types: pdf, zip, doc, docx, xls, xlsx, ppt, pptx, csv, dmg, exe, mp3 and mp4.
They appear as the events outbound and download in Reports › Events, in the route of a visit and on Live. A visit that ends this way says so: “left via ‘Book now’ to booking.com”.
This is on by default. Turn it off in Settings › What the script measures; your visitors get the new script within ten minutes, without changing your code.
Time on page and scroll depth
For each page, the script measures how long it was in view and how far the visitor scrolled, in steps of 25%. The measurement is sent when the visitor leaves the page or hides the tab. You see it in Reports › All pages (the columns time on page and scroll) and at every step of a visit.
Single-page apps
Navigation without a reload (through history.pushState, back and forward) counts as a pageview by itself, in React, Vue, Svelte and other single-page apps. A jump to #section on the same page does not count as a new page. Sites that switch pages with #/page can count those routes as pages; see Script reference.