Privacy
What Lynq stores, and what it never does.
Lynq measures a website without following the people who use it. This page lists exactly what a visit leaves behind.
One visit, as kept
- path
- /pricing
- referrer
- google.com · Organic Search
- country
- CA · Ontario · Toronto
- device
- desktop · Chrome 128 · macOS
- viewport
- 1440 × 900
- visitor
7f3a9c2e41b8d605- ip address
never kept: 203.0.113.7- cookie
never kept: _ga=GA1.2.1234…- fingerprint
never kept: canvas, fonts, audio- name, email
never kept: —
Sold or shared0
A visit, as stored
Every pageview is recorded as: the page, with only its campaign parameters (utm_* and ref) kept from the query string, where the visitor came from, the country, region and city from the request, the device, browser and operating system, the screen and viewport size, the language, how long the page was engaged with and how far it was scrolled. Page titles are off unless the site turns them on.
Custom events add their name and the properties the site chose to send. Web Vitals add timings, and which element was the largest paint and the slowest interaction. An A/B test adds the test's name and the variant shown. A reported error adds its message, the script, line and function it came from, and its stack, with query strings removed. That is everything.
Who a visitor is
A visitor number is computed when the request arrives, from the IP address, the browser's user agent, the site, and a random salt that changes every day. The IP address is used for that computation, for the location lookup and to check the owner's excluded addresses, then dropped. Lynq never stores it.
Because the salt changes daily, the same person produces a different number tomorrow. Unless the site identifies its users (below), Lynq can count a returning visitor within a day and cannot recognise them across days.
What stays in the browser
Lynq sets no cookies. The script keeps one record in the tab's session storage so a visit can be counted as one session, and on a site that measures accessibility, a second note of whether the tab has used a keyboard or a pointer; both are gone when the tab closes. Two things persist, and only when they apply: an opt-out flag, if the visitor sets one, and on a site running an A/B test, which variant this browser was shown, for 90 days. That is a variant name, not an identifier: it cannot recognise anyone, it is sent only with the test's own event, and opting out removes it.
No canvas, font, or audio fingerprinting. Beyond the page's address, title and referrer, nothing is read from the browser but the screen size, the viewport, and the language.
If a site identifies its users
A site can call lynq.identify(id) for its own logged-in users. The id is hashed with a secret key, together with the site, before it is stored, so the same id gives a different hash on another site; the hash is what the reports use. From that call on, the hash is the visitor's number, and it does not change from day to day, so the site sees the same user across days and devices. In the browser, the id stays in the tab's session record until the visit ends. The raw id is stored only if the site turns that on, which is off by default, and is deleted once that user has not been seen for 90 days.
If a site measures accessibility
With data-a11y on the tag, a session is recorded with whether it was navigated by keyboard, an estimate of the browser zoom as a preset, and whether the browser reported reduced motion or forced colors. What got in the way is recorded per page as the name of the observation, the site's own label for the element, and a count or a size. These are stored with the rest of the visit, under the same visitor number. Never typed text, form values or selectors, and never assistive technology, which cannot be detected. These rows are kept for 35 days and removed. Nothing is shown under 20 sessions, no per-session screen shows the flags, and the site owner accounts for collecting them. It is off unless the site turns it on.
Global Privacy Control and Do Not Track
A browser that sends Global Privacy Control is always treated as anonymous: pageviews are counted, and identify calls are ignored. There is no switch to turn this off.
Do Not Track is honoured when the site asks for it with data-respect-dnt on the script tag, in which case the script sends nothing at all.
What a site owner controls
Retention: events are kept for 24 months and removed after that. Exclusions: the owner can exclude their own IP addresses and any paths, and those visits are never recorded. Export: the report tables export as CSV. Deletion: deleting a site removes every one of its events.
What it is used for
Events are stored for the site's reports and for nothing else; nothing is sold, shared, or used for anything but the site's own reports. Most reports show totals; a few open a single visit: a session's timeline, the live feed, and an error's details.
The tracker's documentation describes every attribute the script accepts.