Cookie policy
Last updated: 8 October 2026
This page lists everything this website stores in your browser: what sets it, what it is for, what it holds, and how long it lasts. Every duration below was measured in a browser on this site rather than copied from a vendor's documentation. It is a companion to our privacy policy, which describes the processing behind these items and the legal basis for each.
Two things worth knowing first
Every item below is stored under our own domain, the analytics ones included. Google's and Hotjar's scripts run inside your browser and keep their identifiers here, not on a domain of their own, so there is no third-party cookie on this site at all. What reaches those companies reaches them as network requests instead — which is why your consent, rather than where a cookie sits, is what governs them.
Nothing in the section "Only after you agree" is written until you choose "Accept". Until you choose, and permanently if you choose "Reject", those items are never created. You can change your answer whenever you like with the "Cookie preferences" button in the footer of any page.
Set before you choose
One thing is stored without asking you first. It holds a random identifier but nothing about who you are, and it is not used to measure or profile anything.
va-consent-v1 — local storage, not a cookie
Set by: us, at the moment you answer the consent banner.
Purpose: to remember your answer so we stop asking, to keep the analytics tools switched off for as long as that answer is "Reject", and to file each answer you give under the same identifier in our record of consent.
Contains: your choice, the time you made it and a randomly generated identifier. When you answer, those three are sent to us once, with the banner's text and the page you were on, and kept for two years as the record of your consent — our privacy policy describes that record in full.
Expires: local storage carries no expiry date of its own, so this entry stays until you change your choice or clear this site's browser storage.
Only after you agree
These appear the moment you press "Accept", or tick "Analytics & session recording" under "Customize" and save — and not one second earlier. All of them serve analytics: which pages get read, and where people get stuck. None is used for advertising, and Google's advertising signals are set to "denied" on every page load however you answer.
_ga
Set by: Google Analytics 4.
Purpose: to tell one browser from another, so somebody returning is not counted as somebody new.
Contains: a randomly generated identifier.
Expires: 400 days. Google asks for two years; browsers cap any cookie at 400 days, and 400 is what we measured.
_ga_ plus our property's identifier
Set by: Google Analytics 4. Its full name ends in the identifier of the particular Analytics property the site reports to, which differs between our live site and our testing one.
Purpose: to hold the state of your visit for that property — when it started, and whether what you are doing now is still the same visit.
Contains: a session number and a timestamp.
Expires: 400 days.
_cs_id, _cs_s and _cs_c
Set by: Hotjar, our session-recording tool. The script arrives from Hotjar, but Hotjar belongs to Contentsquare and now uses Contentsquare's tracker — which is why these three say "cs" rather than "hj". If you are checking this page against what your browser shows you, those are the names you will find.
Purpose: _cs_id is a random identifier for your browser, so a second visit is recognised as a second visit; _cs_s holds the session you are in now; _cs_c records that the recording was consented to.
Contains: a randomly generated identifier, a session number, and a consent flag. What the recording itself captures — and what it deliberately does not, such as anything you type into a form — is set out in the privacy policy.
Expires: around 13 months for _cs_id and _cs_c; 30 minutes for _cs_s.
Hotjar also runs a global opt-out that works across every site using it, independently of the choice you make here.
Services you can reach from here, which set their own
One service is not loaded with our pages but can be reached from them. It sets its own cookies in its own context, under its own domain, once you use it — so it is governed by its policy rather than this one.
Calendly — the booking window. Its code is fetched at the moment you open it and never before, and anything it stores belongs to calendly.com. See Calendly's privacy notice.
Changing your mind, or blocking all of it
The "Cookie preferences" button in the footer of every page reopens the banner, and withdrawing consent there stops the analytics tools immediately and for good, until you say otherwise.
Independently of anything we offer, your browser can block or delete cookies for this site, and clearing its storage for us removes every item on this page — including the record of your own consent, which is why the banner will greet you again afterwards. Google publishes a browser add-on that opts you out of Analytics everywhere.
Blocking the two items under "Set before you choose" costs you nothing important: the site works without them, it will simply ask about cookies again on your next visit and may show you the other version of the homepage.
Changes to this page
If we add or drop a tool, this list changes with it, and so does the date at the top of it.