Cookies and Privacy Choices
Last updated: 4 November 2026
Essential storage supports features you request. Vercel Web Analytics and Google Analytics load on every visit with JavaScript. Google's consent platform manages advertising privacy messages and choices in applicable regions, including consent signals for Google tags. Creating or viewing a celebration does not require accepting ads.
| Storage | Purpose and duration |
|---|---|
| whb_session and whb_user | Secure account session and account display. Their expiry follows the session cookie; signing out clears them. |
| Browser draft and selected-file state | Keep work while you use the builder. Birthday Story saves privately on our server when moving between steps or using Save and exit. Current-step changes can be lost before saving finishes. Clear site data to remove persistent browser state; this does not delete a server draft. |
| Payment-attempt session storage | Recover checkout attempts and prevent duplicate payments for the current browser session. |
| Google consent storage | Google's consent platform remembers your privacy choices using its own cookies or browser storage and retention settings. Our former custom advertising-choice record is no longer read or updated. |
| Vercel Web Analytics | Measures website use on every visit without analytics cookies. We remove query strings and personal celebration paths from Vercel analytics URLs. |
| Google Analytics | Measures visits and traffic sources. Google tags load on every visit; analytics cookies and measurement follow Google's consent settings where applicable. Limited consent-mode measurement requests may be sent when consent is denied. |
| Google advertising | AdSense loads Google's advertising and consent tools. Google's consent platform handles regional messages and advertising choices. Google may use advertising cookies with its own expiry according to the applicable choices. |
Use Google's privacy message to review and change advertising choices where it is shown. For European messages, Google provides a "Privacy and cookie settings" link to reopen the message. We do not show a separate advertising consent banner. Rejecting ads does not stop Vercel analytics. Shopify’s gift store has separate controls. Third-party cookies already stored on their domains may also need clearing through your browser.
Browser storage choices are separate from server retention. We retain uploaded celebrations privately for one calendar year after their original public window ends, or from creation for saved drafts that never publish, unless deleted sooner. This does not subscribe anyone to reminder emails. See the privacy policy for cleanup and exceptions.
You can permanently delete your own celebration or Birthday Story from your dashboard using Permanent delete. This removes its public page, private content, guest wishes and uploaded photos or recordings that are not used by another entry. This cannot be undone. Failed media cleanup remains queued for retry. Required account and payment records, provider backups and copies saved by guests follow their separate retention rules.
Razorpay loads when you deliberately open payment checkout. Shopify loads when you visit the separate shop. Their necessary payment/store processing is described in their notices. Read our privacy policy.
