Cookie Policy
Version 2026-10 · Effective 1 October 2026 · Anvilfy Ltd
In short
- Necessary cookies keep the site secure and keep you signed in. Analytics and marketing wait for your consent.
- You can change your choice at any time from the cookie settings; what you turn off is deleted from your device.
This summary is for convenience and is not part of the cookie policy.
01What cookies are
Cookies are small files a website stores in your browser. Similar technologies, such as local storage and session storage, work the same way; this policy covers them too. Anvilfy Ltd uses them on https://eyecaptain.io and in the EyeCaptain application.
02Your choices
When you first visit, we ask whether you accept analytics and marketing cookies. In the UK, the European Economic Area and Switzerland they stay off until you choose. Elsewhere analytics is on until you turn it off; marketing is always off until you accept it.
While analytics is off, Google Analytics may still receive a basic, cookieless signal that a page was viewed (Google Consent Mode). It carries no identifier and stores nothing on your device; Google uses it to estimate overall traffic.
Our own statistics also count visits while analytics is off, without cookies and without storing anything on your device. To tell one day's visits apart, our server combines your IP address and browser type with a random value that changes every day and is then deleted, and keeps only the result. It cannot be used to recognise you on another day, is not linked to your account, and neither your IP address nor your browser details are kept.
You can change your choice at any time with the "Cookie settings" link in the footer. When you turn a category off, we delete from your device everything in it that our site set. Cookies set by another company on its own domain (marked "third party" below) can only be removed by that company or by you in your browser settings. Blocking necessary cookies will stop sign-in from working.
We ask again every six months, and whenever the categories change.
03Necessary
Keep the site secure, keep you signed in, remember your cookie choice and the settings you pick in the app. Always on. Always on. They make the site and the service work; the law does not require consent for them.
| Name | Type | Provider | Purpose | Duration |
|---|---|---|---|---|
| sb-*-auth-token | Local storage | EyeCaptain (Supabase) | Keeps you signed in. | Until you sign out; at most 12 hours |
| sb-*-auth-token-code-verifier | Local storage | EyeCaptain (Supabase) | Completes a Google sign-in securely. | A few minutes |
| ec_last_activity | Local storage | EyeCaptain | Time of your last activity, so you are signed out after 8 hours without any. | Until you sign out |
| ec_signed_out_reason | Session storage | EyeCaptain | Why you were signed out, shown once on the sign-in page. | Until the tab closes |
| device_token | Local storage | EyeCaptain | Recognises this device for two-step verification. | Until cleared |
| ec_extension_return | Local storage | EyeCaptain | Brings you back to connect EyeCaptain for Chrome after you sign up or sign in from it. | 2 hours, removed once used |
| ec_extension_id | Local storage | EyeCaptain | Remembers which EyeCaptain for Chrome extension you connected, so an audit page can ask it to capture a page our servers cannot read. | Until you clear it |
| ec_auth_return | Session storage | EyeCaptain | Takes you back to the page you opened after you sign in. | 1 hour in this tab, removed once used |
| ec_connections_return | Session storage | EyeCaptain | Takes you back to the page you connected an analytics tool from. | This tab, removed once used |
| login_rate_limit | Local storage | EyeCaptain | Counts failed sign-in attempts to slow down password guessing. | 15 minutes |
| eyecaptain_cookie_consent | Local storage | EyeCaptain | Your cookie choice. | 6 months |
| eyecaptain_cookie_consent_timestamp | Local storage | EyeCaptain | When you made your cookie choice, so we ask again after 6 months. | 6 months |
| eyecaptain_cookie_consent_version | Local storage | EyeCaptain | Which version of the cookie choices you answered. | 6 months |
| eyecaptain-theme | Local storage | EyeCaptain | The light or dark mode you chose. | Until cleared |
| sidebar:state | Cookie | EyeCaptain | Whether you keep the app sidebar open. | 7 days |
| ec.workspace.* | Local storage | EyeCaptain | The workspace you used last. | Until cleared |
| ec.reportLanguage | Local storage | EyeCaptain | The report language you chose. | Until cleared |
| cro-audit-draft* | Local storage | EyeCaptain | An audit you started but did not run yet. | Until you run it or sign out |
| cro-screenshot-session-draft* | Session storage | EyeCaptain | Screenshots you added to an audit you are setting up. | This tab |
| eyecaptain.v3.watchedRuns | Local storage | EyeCaptain | Audits still running, so we can tell you when they finish. | Until they finish |
| ec-pdf-meta:* | Session storage | EyeCaptain | Cover details you typed for a PDF. | This tab |
| selectedPlan | Local storage | EyeCaptain | The plan you picked before checkout. | Until checkout or sign out |
| appliedDiscount | Local storage | EyeCaptain | A discount you applied before checkout. | Until checkout or sign out |
| onboarding_preselection | Local storage | EyeCaptain | The plan you picked before creating your account. | Until onboarding ends |
| ec_purchase_intent_dismissed | Local storage | EyeCaptain | That you closed the plan reminder. | Until cleared |
| ec_pending_promo | Local storage | EyeCaptain | A promo code from a link you opened, until it is applied. | 14 days |
| ec_promo | Cookie | EyeCaptain | A promo code from a link you opened, until it is applied. | 14 days |
| ec_pending_offer | Local storage | EyeCaptain | A special offer link you opened (and its access code, if it has one), so you return to it after signing up or in to pay. | 14 days |
| ec_offer | Cookie | EyeCaptain | A special offer link you opened, so you return to it after signing up or in to pay. | 14 days |
| eyecaptain_referral | Cookie | EyeCaptain | The referral link you arrived with, so your discount applies. | 30 days |
| eyecaptain_referral_discount | Cookie | EyeCaptain | The referral discount you were offered. | Until the offer ends |
| eyecaptain_popup_offer_discount | Cookie | EyeCaptain | A discount you accepted in an offer popup. | The offer's length, usually hours |
| free_cro_token_* | Session storage | EyeCaptain | Access to your free audit result. | This tab |
| eyecaptain_chat_session | Session storage | EyeCaptain | Your conversation in the chat, while the tab is open. | This tab |
| chunk_reload | Session storage | EyeCaptain | Reloads the page once after we release an update. | This tab |
| exit_intent_session_start | Session storage | EyeCaptain | Keeps pop-ups from appearing too soon or too often. | This tab |
| exit_popup_early_shown | Session storage | EyeCaptain | Keeps pop-ups from appearing too soon or too often. | This tab |
| exit_popup_offer_shown | Session storage | EyeCaptain | Keeps pop-ups from appearing too soon or too often. | This tab |
| eyecaptain_popup_session_* | Session storage | EyeCaptain | Keeps pop-ups from appearing too soon or too often. | This tab |
| referral_popup_shown_* | Session storage | EyeCaptain | Keeps pop-ups from appearing too soon or too often. | This tab |
| referral_banner_dismissed | Session storage | EyeCaptain | That you closed the referral banner. | This tab |
| ec-referral-nudge-dismissed | Session storage | EyeCaptain | That you closed the referral reminder. | This tab |
| ec_getting_started_dismissed | Local storage | EyeCaptain | That you closed the getting-started checklist. | Until cleared |
| newsletter_subscribed | Local storage | EyeCaptain | That you already subscribed, so we stop asking. | Until cleared |
| admin_preview_settings | Local storage | EyeCaptain | EyeCaptain staff only: preview settings. | Until cleared |
| ec_internal | Local storage | EyeCaptain | EyeCaptain staff only: keeps our own visits out of the statistics. | Until cleared |
| trixy_generation_jobs | Local storage | EyeCaptain | EyeCaptain staff only: content tools. | Until cleared |
| ec.funnel.testEmail | Local storage | EyeCaptain | EyeCaptain staff only: test settings. | Until cleared |
| ec.qa.runs.v1 | Local storage | EyeCaptain | EyeCaptain staff only: the internal test runs started from Admin. | Until cleared |
| ec.qa.quickcheck.v1 | Local storage | EyeCaptain | EyeCaptain staff only: the internal Quick Check test runs started from Admin. | Until cleared |
| __stripe_mid | Cookie | Stripe | Fraud prevention on the payment page. | 1 year |
| __stripe_sid | Cookie | Stripe | Fraud prevention on the payment page. | 30 minutes |
| __cf_bm | Cookie | Cloudflare | Tells people and bots apart, to protect the site. | 30 minutes |
| _cfuvid | Cookie | Cloudflare | Rate limiting, to protect the site. | Session |
| cf_clearance | Cookie | Cloudflare | Remembers that you passed a security check. | Up to 1 year |
04Analytics
Show us which pages help and where visitors get stuck (Google Analytics, Microsoft Clarity and our own visit counter). Only with your consent. Without it no analytics cookie or identifier is stored on your device.
| Name | Type | Provider | Purpose | Duration |
|---|---|---|---|---|
| _ga | Cookie | Google Analytics | Tells visits from the same browser apart. | Up to 2 years |
| _ga_* | Cookie | Google Analytics | Keeps track of the current visit. | Up to 2 years |
| _gid | Cookie | Google Analytics | Tells visits from the same browser apart. | 24 hours |
| _gat* | Cookie | Google Analytics | Limits how often data is sent. | 1 minute |
| _clck | Cookie | Microsoft Clarity | Tells visits from the same browser apart. | 1 year |
| _clsk | Cookie | Microsoft Clarity | Joins the pages of one visit into one recording. | 1 day |
| _cltk | Session storage | Microsoft Clarity | Keeps track of the current visit. | This tab |
| CLID | Cookie | Microsoft Clarity (third party) | Recognises the browser across sites that use Clarity. | 1 year |
| cvn_visitor_id | Local storage | EyeCaptain | A random id that tells visits from the same browser apart in our own statistics. | Until cleared |
| cvn_session_id | Session storage | EyeCaptain | A random id for the current visit in our own statistics. | This tab |
| ec_ft | Local storage | EyeCaptain | The campaign or site that first brought you here. | 90 days |
| ec_lt | Local storage | EyeCaptain | The campaign or site that last brought you here. | 90 days |
| ec_evt:* | Local storage | EyeCaptain | Counts a one-off event, such as a sign-up, only once. | Until cleared |
| ec_login:* | Session storage | EyeCaptain | Counts a sign-in once per visit. | This tab |
05Marketing
Measure our advertising and let Google and Microsoft link visits across their services. Only with your consent.
| Name | Type | Provider | Purpose | Duration |
|---|---|---|---|---|
| MUID | Cookie | Microsoft (via Clarity) (third party) | Recognises the browser across Microsoft services, for advertising and measurement. | 1 year |
| MR | Cookie | Microsoft (via Clarity) (third party) | Refreshes the MUID cookie. | 7 days |
| SM | Cookie | Microsoft (via Clarity) (third party) | Syncs the MUID cookie between Microsoft domains. | Session |
| ANONCHK | Cookie | Microsoft (via Clarity) (third party) | Checks whether the MUID cookie was passed on. | 10 minutes |
| SRM_B | Cookie | Microsoft (via Clarity) (third party) | Recognises the browser across Microsoft services. | 1 year |
| IDE | Cookie | Google (doubleclick.net) (third party) | Links your visit to your Google account activity for advertising reports (Google signals). | 13 months |
| _gcl_* | Cookie | Google Ads | Measures which ad brought a visit. Not in use today; listed in case we advertise. | 90 days |
06Sign-in sessions
For your security you are signed out after 8 hours without activity, and in any case 12 hours after you signed in.
07Questions
Write to hello@eyecaptain.io. More about how we use personal data is in our Privacy Policy.