Cookie Policy
What browser storage RaceFinder uses and how to manage it.
Last updated: 30 October 2026
What is used
RaceFinder does not use advertising, profiling, or cross-site tracking cookies, and does not share data with advertising networks. Only the browser storage detailed below is used.
| Item | Type | Purpose | Duration |
|---|---|---|---|
| Session and sign-in state (sb-…-auth-token from Supabase and racefinder.keepSignedIn, local storage; racefinder.browserSession, session storage) | Technical, necessary | Keeping the session signed in according to the "Keep me signed in" option | sb-…-auth-token: until logout or until the session expires (with "Keep me signed in" off, it ends when the browser is closed); racefinder.keepSignedIn: persistent until deleted; racefinder.browserSession: until the tab is closed |
| Email address of the last sign-in or sign-up (racefinder.lastLoginEmail, local storage) | Technical, necessary | Showing again the address a confirmation link was sent to, so the link can be resent if it expired or was already used | Until logout |
| Confirmation email resend counter (racefinder.verify.resend.…, local storage, one per address) | Technical, necessary | Limiting how often the confirmation email can be resent from this device; only the time of each attempt is kept | Persistent until deleted; only attempts from the last hour count |
| Consent banner choice (racefinder.consent.analytics, local storage) | Technical, necessary | Remembering whether RaceFinder's own analytics was accepted or rejected | Persistent until deleted |
| Back to the list (rf:explore-return, rf:results-return and rf:last-list, session storage) | Technical, necessary | Making the "Back" link of a competition page return to the list the visitor came from, with its filters, order and page (for results, also the marks entered in the search) | Until the tab is closed |
| Pending actions (racefinder:pending-save and rf.findiRouteRequest, session storage) | Technical, necessary | Finishing an action the visitor started: saving a competition after signing in, or opening in My Season the season route requested from Findi | Until the action is completed, at most until the tab is closed |
| Language preference (rf-lang cookie and racefinder:settings, local storage) | Technical, necessary (at the user's request) | Remembering the language you pick in the language selector, or the one saved in your account, so pages open in it from the first view. The cookie is only written when you pick a language or when your account has one saved; until then, pages follow the browser's language | rf-lang cookie: 12 months from when it is written; local storage: persistent until deleted |
| Theme and display settings (racefinder:settings, local storage) | Preference | Remembering the light/dark theme and the other settings chosen (date and time format, units, indoor or outdoor by default, Findi in the header, change notices) | Persistent until deleted |
| Search profile (racefinder.state.v1:…, local storage; one per account and one for browsing without an account) | Technical, necessary (at the user's request) | Remembering on this device the athlete details used to search (event, gender, marks and, if entered, name and country). Without an account it is only written once the visitor chooses something, and it is removed when the search goes back to its starting values; the search and its filters are not restored on a later visit | Persistent until deleted |
| Comparison (racefinder.compare.v1, local storage) | Technical, necessary (at the user's request) | Remembering the competitions the user adds to the comparison. It is only written when a competition is added or removed | Persistent until deleted; removed when the comparison is emptied |
| My Season view (racefinder:season-view, local storage) | Preference | Remembering whether My Season is shown as a list, a calendar or a route | Persistent until deleted |
| Findi button position (findi:launcher-position:v2, local storage) | Preference | Remembering where the Findi button was moved to | Persistent until deleted |
| Last Findi conversation (findi:last:…, local storage, one per account) | Preference | Reopening the last Findi conversation used on this device; only the conversation's identifier is kept, not its messages | Persistent until deleted |
| Findi hint closed (findi:nudged, session storage) | Preference | Not showing the Findi hint again once it has been closed | Until the tab is closed |
| Visitor and session identifiers (racefinder.analytics.anon, local storage; racefinder.analytics.session, session storage) | In-house measurement, only with consent | Random visitor and session identifier, with no direct personal data. They exist only while RaceFinder's own analytics is accepted | Visitor: persistent until analytics is rejected or the storage is deleted; session: until the tab is closed, with a new one after 30 minutes without activity |
| Search identifier (racefinder.analytics.search, session storage; not a cookie) | In-house measurement, only with consent | Random identifier of a search that links it to its results and to the competitions opened from it, with no direct personal data. It exists only while RaceFinder's own analytics is accepted | Until the tab is closed; replaced on every new search and deleted when analytics is rejected or accepted again |
| __cf_bm (Cloudflare) | Technical, necessary | Distinguishing automated traffic from human traffic in order to protect the site | 30 minutes |
| __dpl (Lovable) | Technical, necessary | Keeping the visitor's requests on the same published version of the site | 24 hours |
| Paddle payment window (Paddle, third party) | Technical, necessary | Only when the Pro checkout is opened: the payment window is served by Paddle, which may use its own cookies or storage to process the payment and prevent fraud | Set by Paddle under its own policy: https://www.paddle.com/legal/privacy |
Consent
The consent banner gates RaceFinder's own analytics. RaceFinder only measures that usage with its own first-party, pseudonymous analytics after you accept it in the banner. Until you accept, RaceFinder creates no visitor identifier of its own and sends none of its own usage data, and while you have not answered it keeps none: one left by an earlier visit is deleted. When you accept, RaceFinder creates a new visitor identifier of its own; it never reuses one created before you answered. If you reject, any visitor identifier from earlier visits is deleted. Your choice is stored in the browser and you can change it at any time on this page. Strictly necessary storage (the session, your choice in the banner, the __cf_bm and __dpl cookies, and what is only written at your request: the rf-lang language cookie, the comparison and the search profile) does not need consent and always works. Nor do the preferences you choose yourself (theme and display, My Season view, Findi), which are only stored once you choose them.
How to manage it
Your browser lets you block or delete local storage and cookies. Blocking technical storage may stop you staying signed in. You can accept or reject RaceFinder's own usage analytics at any time with the buttons on this page, and analytics also stays off when your browser sends the "Do Not Track" signal.
Usage analytics