Docs Getting started
How OpL Insights works
Sites, what the script collects, and the few things your server needs to allow.
Sites
Everything in OpL Insights belongs to a site: one website, shop or web app, with its own ID, addresses, time zone and currency.
A site lists the addresses people use to reach it, such as https://www.example.com and https://example.com. Recordings and heatmaps are only accepted from listed addresses, so a site that is also reached through another hostname (a live domain and a master node, for example) needs every one of them listed.
The script
One script, opl-insights.js, does all the collecting:
- page views, site search and e-commerce events;
- the session recording, sent in small compressed pieces every few seconds;
- click and scroll positions for heatmaps;
- console messages and network requests, attached to the recording;
- errors and slow or failed requests, counted for diagnostics.
It loads asynchronously and does nothing until cookie consent is given, if you configure a consent cookie.
Who is signed in
OpL Insights never looks up users on your behalf. Your site tells the script who is signed in, as a login, e-mail address or customer number, and that value appears as the user ID in reports and next to each recording. See identify signed-in users.
Privacy
Recordings are masked in the visitor's browser before anything is sent. Password, card number and CVV fields are never recorded, whatever the settings, and payment-provider iframes can't be recorded at all. Personal fields such as names, e-mail addresses and phone numbers are masked by default. See privacy and masking.
What your server needs to allow
- Script and data: pages must be able to load scripts from, and send data to,
https://insights.opl-web.com. Most sites need nothing; if you send a Content-Security-Policy, see the hosting checklist. - Fonts: recordings are replayed on the OpL Insights server, which loads your fonts from your site. Your server must allow that with
Access-Control-Allow-Originon font files, or icons show as text in the player.