Privacy

What we collect, what we don’t, and how we handle your data.

The short version

Seba is anonymous by default. You can read the public library, ask Sebastian, and use the dream room without giving us your name, email, phone number, or payment details. We do not render your name, photograph, or email anywhere in the public interface. We do not sell data. We do not run third-party trackers or advertising pixels. The site works without sign-in.

Without sign-in, Seba can still keep browser-level continuity: conversations and saved items are tied to a randomly generated identifier stored in your browser. Sebastian’s private rolling memory starts when you sign in. Google sign-in links your records to your account so they follow you across devices. Optional donations, newsletter signup, feedback, or support emails collect only the information needed to handle that specific request.

What we store on the server

These categories may live on the Seba server, keyed either by the browser identifier on this device or by your account if you sign in.

Chat threads. Your conversations with Sebastian — the messages, the order they were sent, and timestamps. So you can come back on the same browser and pick up where you left off.

Saved readings and notes. Dream interpretations, tarot / I Ching / astrology readings you saved, and any Sebastian responses you bookmarked. Without sign-in, these are primarily device-local. When you sign in, they can sync to your profile.

Profile memory for signed-in readers. A short prose summary Sebastian writes about you over time, so the next conversation is not a cold start. It draws on your signed-in conversations across the site — chat with Sebastian and the experience flows (dream, tarot, astrology, and I Ching readings) can all contribute to it. It is short by design, lives in your profile record only, and is not created for signed-out readers.

Anonymous dream-theme counts. We keep anonymous daily counts of common dream themes (like teeth or water) to understand what themes people bring — never the words of a dream, and never tied to a person or account.

The memory records themselves do not store your IP address, and they are not visible to other users. Separate service logs (described below under “What we collect”) may use a hashed IP address for rate limiting and reliability. We do not sell or share any of this.

What we collect

Analytics. We run a self-hosted instance of Umami to understand how pages perform. It records page URL, referrer, screen size, browser, and country — nothing that identifies you personally. It does not set cookies. It does not log your IP address in identifiable form.

Campaign attribution. When a campaign link brings you to Seba, your browser may keep a bounded first-touch record for up to 30 days so we can understand whether that visit later led to a reading, saved item, membership, or donation. The record contains only allowlisted campaign labels and the landing-page path. It never contains your dream, question, reading, full URL, query string, or referrer string, and it stays in your browser’s local storage.

Sign-in (optional). If you sign in with Google, we receive your Google account identifier, email, display name, and profile-photo URL from Google’s sign-in service. We use the identifier to link your records to your account so they follow you across devices. We do not render your name, photograph, or email anywhere in the public interface. We do not email you directly without your opt-in through the newsletter form.

Newsletter (optional). If you subscribe to our newsletter, we store your email address with our email provider so we can send you occasional dispatches. You can unsubscribe at any time from any email we send.

Donations (optional). Donations are handled by Stripe. Seba does not see or store your card number. To recognize supporters and suppress donation nudges, the site may send Stripe the anonymous browser identifier stored under seba.anon_uuid, then store a supporter flag keyed to that identifier and, when available, a short-lived IP-based key. Seba also stores a Stripe Checkout Session reference for reconciliation. These supporter records are kept for about one year. Your card statement should show SEBA.HEALTH or similar, depending on your bank.

Estate membership (optional). Membership checkout, recurring billing, and the manage-or-cancel portal are hosted by Stripe. Seba stores an opaque member key, your anonymous Seba profile identifier, the Stripe subscription and customer references needed to recognize access and open that portal, and the membership start date. Seba does not store your card number or copy Stripe’s billing identity into the estate ledger. Stripe retains the billing records required to operate the subscription.

Dream-reading credits (optional, when offered). One-off credit checkout is hosted by Stripe. Seba sends an opaque browser identifier, then stores the verified Checkout Session marker and credit balance against that browser identifier and, when available, a short-lived IP-based key. Credits expire after about ninety days. Seba does not store your card number or copy Stripe’s billing identity into the credit record.

Feedback / Report a problem. If you use the “Report a problem” form on /profile or the site-wide feedback banner, we store the message you wrote, the optional contact email if you provided one, the page URL you were on, your browser’s user agent, and your profile identifier if one is present in your browser. We use this to debug the problem and to reply to you if you left an email. Reports are stored in our support queue and may be forwarded to our team’s inbox; we do not share them.

Service logs. When you ask Sebastian or use any of the public AI endpoints (chat, dream, tarot, I Ching, astrology, matchmaker), the backend may store the query text or a short request label, a timestamp, a hashed form of your IP address, your user agent, the response status, and duration / cost metadata. We use these logs for rate limiting, abuse prevention, debugging, and keeping the service reliable. Service logs are kept separate from your profile memory; they are not used to enrich Sebastian’s memory of you, and your profile memory does not contain a hashed IP.

On-device storage. Your browser stores a session token (if you signed in), your reading palette preference, and an anonymous identifier under the key seba.anon_uuid. That identifier is the only thing that lets your browser retrieve browser-linked chat threads and saved items from the server. Clearing your browser storage removes the identifier; the server-side records remain but become unreachable from that browser. To remove them, see “How to delete your data” below.

How long we keep data

Profile memory, saved readings, notes, and browser-linked threads remain until you delete them or ask us to delete them, because their purpose is continuity. Service logs are shorter lived: usage events and public Oracle query logs are purged after about 90 days; expired sessions and magic sign-in links are purged after about 30 days; forwarded feedback reports are purged after about 12 months. Donation/supporter records are kept for about one year, as described above. Dream-reading credit balances and their redemption markers expire after about ninety days. Aggregate daily-cost rows are not personal records.

Practitioner interview submissions are kept for editorial review and removed when a correction/removal request requires it; public directory pages are handled through the directory correction and removal process.

What we don’t collect

No advertising cookies. No fingerprinting. No session recording. No third-party analytics (Google Analytics, Facebook Pixel, etc.). No sale of data to any party.

How to delete your data

Anonymous visitors. Your records on the server are keyed only by an opaque identifier — we have no way to look you up by name or email. To request deletion, email cody@seba.health and include your identifier. You can find it in your browser’s devtools under localStorage, the key seba.anon_uuid. We will delete every record under that identifier.

Signed-in accounts. Email cody@seba.health from the address you signed up with and we will delete the account and all associated records.

Payment, supporter, and reading-credit records. If you donated or purchased a reading credit and want the associated records removed, include the browser identifier and, if you have it, the Stripe receipt or Checkout Session reference. Records linked to the browser identifier can be removed. IP-keyed marks are only removable when the exact key is identifiable; otherwise they expire automatically.

Newsletter. Use the unsubscribe link in any email we send.

Clearing your browser’s site storage for seba.health removes the identifier from this device but does not delete the server-side records on its own — without the identifier we can’t find them to delete them. If you want them gone, send the identifier first.

Contact

Seba is operated by 702 Alliance LLC, doing business as Seba Health. Questions about privacy go to cody@seba.health. We respond to privacy and deletion requests within 30 days.