Updated

Cookie Policy

Offer — a product analyst interview trainer
Last updated: October 18, 2026

This policy explains which cookies and similar technologies Offer at offerbeta.com (the "Service") uses, and how you can control them. It complements our Privacy Policy.

Contents
  1. 1. What we mean by cookies
  2. 2. Our approach
  3. 3. Strictly necessary
  4. 4. Analytics
  5. 5. Sign-in providers
  6. 6. Your choices
  7. 7. Changes
  8. 8. Contact

1. What we mean by cookies

Cookies are small text files a website stores in your browser. The Service mostly uses similar technologies instead:

In this policy, "cookies" means all of these.

2. Our approach

3. Strictly necessary

In the names below, <project> stands for the ID of our sign-in service.

NameTypeSet byPurposeKept for
sb-<project>-auth-tokenLocal storageSupabase (sign-in)Keeps you signed in (session tokens)Until you sign out or the session expires
sb-<project>-auth-token-code-verifierLocal storageSupabase (sign-in)Protects the sign-in process (PKCE)Until sign-in completes
offer.save.v1Local storageOfferYour progress on this device (guest mode, and a local copy for signed-in users)Until you delete it or delete your account. If your progress is saved in your account, signing out removes it from this browser
offer.save.v1.broken-*Local storageOfferUp to 5 copies of progress the Service couldn't read or that was replaced, so you can download themUntil you delete them; older copies are removed automatically
offer.sync, offer.deviceLocal storageOfferFor signed-in users: whose progress is on this device, what still needs saving to the account, and a random ID of this deviceoffer.sync — until you sign out; offer.device — until you delete it
offer-syncIndexedDBOfferFor signed-in users: the copy of your progress last saved to the account, and up to 5 earlier versions from this device that you can download in the account settingsUntil you sign out or delete your account
offer.langLocal storageOfferInterface languageUntil you delete it
offer.consentLocal storageOfferYour choice in the cookie banner or in "Share usage analytics" (account settings) and its dateUntil you change it or delete it
offer.split.*, offer.algo.*, offer.editor.v1, offer.practice.list, offer.cheat.last, offer.prep.done, offer.work.nameAsked, offer.bh.micTipLocal storageOfferInterface settings: panel sizes, selected tabs and lists, code editor settings, the last cheat-sheet card, prep steps you've already been told about, tips and questions we've already shownUntil you delete them
offer.screen, offer.return, offer.practice.section, offer.practice.findBug, offer.work.selected, offer.work.view, offer.calibration.selected, offer.cheat, offer.prep.tab, offer.prep.place, offer.prep.bhOpen, offer.mockPreset, offer.storiesPreset, offer.archiveOnLangSwitch, offer.sync.declinedSession storageOfferRemembers the open screen, your selection and "Not now" answers while the tab is open (for example, when you switch the language)Until you close the tab
offer.iv.draft, offer.storyDraft, offer.selfCheckSession storageOfferText you haven't sent or saved yet (an interview answer, a story draft, a practice run without AI), so reloading the page doesn't lose itUntil you close the tab; "Reset progress" also removes it
offer-cacheIndexedDBOfferThe generated practice databases (each week, interview and problem set has its own), so they open in a second instead of being rebuiltUntil you delete site data; older databases are replaced automatically
Python runtime files (Pyodide)Browser cacheYour browser, downloaded from jsDelivrRun Python and pandas exercises in your browser without downloading the runtime every timePer your browser's cache rules
offer.promoLocal storageOfferThe promo code from the link you came by, so it can be applied to your first Pro purchase; the link's channel tags (utm) are kept only if you allowed analytics60 days, or until you remove the code or buy
offer.pendingTxnLocal storageOfferA Pro payment that was still being confirmed when you left, so the Service can tell you when Pro is on1 day
offer.proIntentLocal storageOfferThe pass length you picked on the site, so the purchase window opens after you sign in30 minutes
Bot check (Turnstile)Cloudflare's own frameCloudflareTells people from bots when you sign in by emailAs set by Cloudflare
Payment windowDodo Payments' checkout code (served from our site) and payment frameDodo Payments (loaded only when you start a purchase)Payment processing and fraud preventionAs set by Dodo Payments

The bot check and the payment window are run by Cloudflare and Dodo Payments. Anything they store is governed by their own privacy and cookie policies. Our hosting and DNS set no cookies on our domain.

4. Analytics

Analytics runs only if you allow it. A banner asks you first: "Reject" and "Allow" sit side by side and look the same. Before you choose, and after you reject, analytics isn't loaded and nothing is sent. Signed-in users can also use "Share usage analytics" in the account settings; the account's choice applies wherever you sign in.

We use PostHog (hosted in the EU) to see which pages and features people use and where they leave. What it collects is in section 3 of the Privacy Policy. In the names below, <key> stands for the public key of our analytics project.

NameTypeSet byPurposeKept for
ph_<key>_posthogLocal storage, session storagePostHog (only after you allow analytics)A random ID of this browser, to link the steps of one visit and your later visitsUntil you withdraw consent or delete it
Other keys starting with ph_Session storagePostHog (only after you allow analytics)The current visit and tabUntil you close the tab
__ph_opt_in_out_<key>Local storagePostHog (only if you allowed analytics before)Remembers that analytics is off or onUntil you delete it

When you withdraw consent, analytics stops at once and the random ID is removed. Only the key that remembers your choice stays; the tab keys go when you close the tab.

5. Sign-in providers

If you sign in with Google or GitHub, you are taken to that provider's website, which may set its own cookies there. These are governed by the provider's own cookie and privacy policies, not by this policy.

6. Your choices

7. Changes

We will update this policy when we add or change cookies. If a change needs your consent, we will ask for it.

8. Contact

Kanan Shukurlu, Israel · support@offerbeta.com