Cookies and storage

Cookies and storage

Last updated September 21, 2026Previous versions →

Every cookie and every key Wendy keeps in your browser, where it is set, for how long and why. There is no banner because nothing here needs your consent.

1.The notice

Wendy sets no cookie on any marketing page. Six cookies exist, all strictly necessary and none used for tracking: __session keeps you signed in after you sign in (14 days); wendy_ch holds the sign-in code challenge for the 10 minutes it takes you to type the code we emailed you; wendy_rn holds the one-time nonce from a resume link you opened from an email, for 5 minutes and only on the one address that spends it; wendy_oauth_{provider} (for example wendy_oauth_microsoft) protects a connection to one of your accounts for the 10 minutes it takes you to approve it at the provider, and is removed as soon as you come back; and wendy_preview lets a browser we handed a preview link see the site before it is published, for 30 days, and carries no identity. On the demo pages a cookie named wendy_v holds a random visitor id so the demo can limit turns per visitor; it is set only there and only for the demo.

The app also keeps a few things on your device under keys that start with wendy.: your unfinished assessment answers until you sign in, and a random id for them; your set-up answers while you type them; small preferences such as which side of Wendy you opened last, whether you installed the app, and the address this browser registered for check-ins; the values that carry a sign-in across a redirect to Google or Microsoft, for that tab only; a short note of whether you have a report, so the page header shows the right button; and a workspace invite or a team intent while you take the assessment. The demo keeps its own transcript on your device under wendy.demo. only while the tab is open. The sign-in library keeps its own record of your sign-in in your browser under its own name, and the installed app keeps the unread count for its icon in a store named wendy-badge. None of that leaves your device until you choose to save or sign in, and every key is listed below.

Our analytics run without cookies and without storing anything in your browser; events are recorded by our servers under your account id or the demo visitor id, and never include your answers, scores, names or text. We use no advertising cookies and no third-party tracking. Because nothing here needs your consent under EU or UK rules, there is no banner. If that changes, we will ask first.

2.Every key, listed

NameKindSet onLifetimePurpose
__sessioncookiePOST /api/auth/session, after you sign in14 daysKeeps you signed in.
wendy_chcookiePOST /api/auth/code/start, when we email you a sign-in code10 minutesTies the code you type to the code we sent.
wendy_rncookieGET /r/{token}, when you open a resume link from an email5 minutes; spent by the one request it is sent withProves the resume link was opened in this browser.
wendy_oauth_{provider}cookiePOST /api/connect/{provider}/start, when you connect an account10 minutes; cleared on the callbackBinds the connection you approve at the provider to the one you started.
wendy_vcookie/demo/* and /api/demo/* only1 yearA random visitor id so the demo can limit turns per visitor.
wendy_previewcookieA preview link we hand out before the site is published, or /api/admin/preview for staff30 daysLets that browser see the unpublished site. It carries no identity.
wendy.draft.{bankVersion}.{uid}.{mode}local storage/assessmentUntil the draft is claimed at sign-in or clearedYour unfinished assessment answers, on this device.
wendy.localUidlocal storage/assessment, when the browser cannot open an anonymous sessionUntil you clear site dataA random id for the draft above, so it has somewhere to live.
wendy.probelocal storage/start and /assessmentRemoved in the same instant it is writtenChecks whether this browser lets us keep a draft at all.
wendy.context.{uid}.{mode}local storageThe set-up screensUntil the answers are saved, or you sign outYour set-up answers while you type them.
wendy.auth.sessionAtlocal storageAny signed-in page, when the sign-in is refreshedUntil you sign out; it stands in for a day at mostWhen this device last refreshed your sign-in, and for which account.
wendy.tz.keptlocal storage/coachUntil changedRemembers that you kept your check-ins' time zone when your phone's clock showed another.
wendy.checkins.laterlocal storage/coach7 daysRemembers that you put off choosing a check-in time, so the offer waits a week.
wendy.installedlocal storageThe first open of the installed appPermanentNotes that the installed app has opened once, so we count it once.
wendy.push.endpointlocal storageProfile & settings, when you turn check-ins onUntil you turn check-ins offThe address this browser registered for notifications, so turning them off can find it.
wendy.mesession storageThe marketing pages, when you are signed inThe tabWhether you have a report and a plan, so the header shows the right button.
wendy.demo.{persona}session storage/demo/{persona}The tabThe demo transcript and its state.
wendy.auth.nextsession storage/sign-in, before a redirect to Google or MicrosoftThe tab; cleared when the redirect returnsThe page to open once you come back from the provider.
wendy.auth.anonUidsession storage/sign-in, before a redirect to Google or MicrosoftThe tab; cleared when the redirect returnsThe anonymous session your draft belongs to, so signing in keeps it.
wendy.auth.providersession storage/sign-in, before a redirect to Google or MicrosoftThe tab; cleared when the redirect returnsWhich provider you left for, so the return is handled once.
wendy.intentsession storage/start, when you arrive from Set up a teamThe tabThat you came to set up a team, so the report ends with that card.
wendy.plansession storage/start, when you arrive from Set up a team with a plan picked on the pricing pageThe tabThe plan you picked, so the set-up sheet opens on it after your report.
wendy.pairsession storage/start, when you arrive from a compare linkThe tabThe compare you were invited to, so your report can end with it.
wendy.pairTokensession storage/start, when you arrive from a compare linkThe tabThe compare link you arrived on, so the card can open it again.
wendy.pairFirstsession storage/start, when you arrive from a compare link that names its senderThe tab; cleared by Not now on the report, or when you acceptThe first name of the person who invited you, so your report can say who is waiting.
wendy.invitesession storage/join/{token}, when the invite is still openThe tabThe invite link you arrived on, so the join screen can accept it.
wendy-badgeIndexedDBThe installed app, when a notification arrivesUntil you remove the app or clear site dataThe unread count the app icon shows.
firebaseLocalStorageDbIndexedDBAny page, once you sign inUntil you sign outThe sign-in library's own record of your sign-in, under its own name.
firebase:pendingRedirect:{app}session storage/sign-in, before a redirect to Google or MicrosoftThe tab; cleared when the redirect returnsThe sign-in library's note that a redirect is in progress.

A new cookie or key is added to this list in the same change that writes it, or our build fails. Two rows are set by the sign-in library under its own name; the rest are ours.

3.Pages that are not ours

When you pay, you are on a page Stripe serves, and when you connect an account or sign in with a provider, you are on that provider’s page for a moment. Those pages set their own cookies under their own notices; ours sets none of them and reads none of them.

4.How to clear them

Signing out removes the session cookie and the sign-in library’s record. Everything else clears with your browser’s site data for askwendy.ai, and a draft on your device is deleted on its own once it is saved to your account.

WHAT WE PROMISE

  • Your answers are never shown. Only the report.
  • No email until your report is on screen.
  • Learned from your communications, no messages are ever kept.
  • Your data is yours. Export or delete everything under Profile & settings, in one tap.

The full list of what we keep →