Essential site storage
Essential storage keeps the site secure, remembers your theme choice, keeps a session working and supports the features you actively use, such as dd_consent (12 months, records your consent choices) and datadove-theme (remembers your chosen theme, covered by the appearance exception). It cannot be switched off, because the site could not work without it, and it does not require consent under the rules for strictly necessary storage.
Security and forms
Form security and duplicate-submission controls use only the storage and request data needed to protect the service you asked for, such as recognising a form that has already been submitted. None of it is used for advertising or tracking.
Stripe and Turnstile
Online checkout is not offered at present; the terms for it are published before it opens. Once it does, Stripe may set its own cookies on its own domain when you reach a payment page, which DataDove does not control, and Stripe's own privacy notice applies to them. Cloudflare Turnstile runs only on pages that carry a form, to tell people apart from automated spam without the tracking a traditional CAPTCHA needs. Both are treated as strictly necessary to the service requested.
Chatwoot
When chat is offered on this site, the Chatwoot chat widget is not active until you give consent. Once granted, it stores a conversation identifier in your browser so a conversation can continue if you return to the page; withdrawing consent removes it.
Analytics
Vercel Web Analytics counts visits and popular pages in aggregate. It does not use cookies; instead it identifies a visit by a hash created from the request, which is valid for a single day and then reset, so a visitor cannot be tracked across days or sites. It does not run until you choose to accept the analytics category, and declining it does not affect how the site works.
Cookie and storage table
Every technology this site can use, whether it is a cookie or a record kept in your browser storage, with its provider, its category and how long it is kept.
dd_consent. Provider: DataDove (first party). Category: Necessary. Purpose: Records your consent choices. Kept: 12 months. Withdrawal: Not applicable; strictly necessary to honour your own choice.
datadove-consent. Provider: DataDove (first party). Category: Necessary. Purpose: Holds your consent choices in browser storage, beside the dd_consent cookie. Kept: Until you change your choices or clear site data. Withdrawal: Not applicable; strictly necessary to honour your own choice.
datadove-theme. Provider: DataDove (first party). Category: Necessary (appearance). Purpose: Remembers your chosen theme. Kept: Until cleared. Withdrawal: Not applicable; exempt under the appearance exception.
customers-token. Provider: DataDove (first party). Category: Necessary. Purpose: Keeps a signed-in customer account signed in. Kept: 4 hours. Withdrawal: Not applicable; sign out or let the session expire.
Turnstile challenge. Provider: Cloudflare. Category: Necessary. Purpose: Spam protection on forms; runs only when a form is on the page. Kept: Session. Withdrawal: Not applicable; strictly necessary for the form you asked for.
Stripe Checkout. Provider: Stripe. Category: Necessary (checkout only). Purpose: Payment on Stripe's hosted page, once online checkout is offered. Kept: Set by Stripe. Withdrawal: Not applicable on DataDove's site; managed by Stripe on its own domain.
Vercel Web Analytics script. Provider: Vercel. Category: Analytics. Purpose: Aggregate statistics about site use. Kept: No cookie set; visit hash reset each day. Withdrawal: Cookie preferences (top of this page); switch Analytics off at any time.
Chatwoot widget. Provider: Chatwoot. Category: Chat. Purpose: Live chat and AI assistant conversation identifier, applying only when chat is offered on this site. Kept: Consent-based. Withdrawal: Cookie preferences (top of this page); switch Chat off to remove the identifier.
datadove-enquiry-enums. Provider: DataDove (first party). Category: Necessary. Purpose: Resumes an in-progress enquiry. Kept: 7 days. Withdrawal: Not applicable; clears itself on success or after 7 days.
datadove-enquiry-session. Provider: DataDove (first party). Category: Necessary. Purpose: Holds enquiry contact fields and free text for the current tab. Kept: Session. Withdrawal: Not applicable; clears when the tab closes.
datadove-onboarding-<reference>-v2. Provider: DataDove (first party). Category: Necessary. Purpose: Keeps an in-progress onboarding draft in the tab. Kept: Session. Withdrawal: Not applicable; clears on submission.
datadove-dove-game. Provider: DataDove (first party). Category: Chat. Purpose: Keeps your best score in the support panel's waiting game, applying only when chat is offered on this site. Kept: Until cleared. Withdrawal: Cookie preferences (top of this page); switch Chat off and the record is removed.
Your controls
You can accept or reject anything that is not strictly necessary when you first visit, and change your mind at any time using the Cookie preferences button at the top of this page. Rejecting a category does not affect anything in the Necessary rows of the table above, and the site works fully either way. Browser settings can also block or delete storage directly; doing so may affect features such as resuming an in-progress enquiry or staying signed in.
