Privacy policy
Last updated 2026-10-04
Who we are
Contraverse (axioms.gg) is a live analysis layer for streamed debates, operated by its founder. Questions about this policy: support@axioms.gg.
What Contraverse does
Each speaker in a debate is recorded on their own microphone through our desktop client, transcribed, and analysed by AI that tracks claims and evidence on a public board. Viewers can create a free account to vote for fact checks. AI processing is the product, if you speak in a debate run through Contraverse, your words are transcribed by machine and analysed by large language models, and the result publishes live with an “AI-generated · unverified” label.
What we do not collect
- No card numbers. Paid plans are billed by Stripe, which holds your card and billing address; we never see them. See Payments below for the little we do keep.
- No advertising trackers, no cross-site tracking, no selling of data. We do use product analytics, but only if you allow it, see Product analytics below.
- No precise location, no contact lists, no device fingerprinting.
- No audio outside a live session, the client's recording indicator is always visible while capturing, and capture stops when the session ends.
What we collect
Account data
Email address, your first and last name, your handle, display name, and account type (streamer or viewer). There is no password: you sign in with a code we email you, or with Google or Discord. At sign-up we ask your date of birth to confirm you are 16 or older; we keep only the fact that you did, never the date, and if you are younger we delete the sign-in you started. Optionally, and only if you provide them: a phone number, a short bio, a job title, links to your streaming channels, and a profile picture. What you enter is self-described and unverified; a phone number, if given, is stored as a contact detail and is not currently used to verify your identity or recover your account.
Profile picture
If you upload one, it is decoded and re-encoded to a small standard image on the way in, which removes any embedded data, and only that re-encoded image is stored. Profile pictures are public.
Speaker data
If you are invited to speak: the email address the invite is sent to, the display name the organiser gave you, your microphone audio during the live debate only, and the transcript made from it. Raw audio is streamed for transcription and never stored anywhere. The transcript, the claims extracted from it, and their timing are stored, they are the debate's public record.
Viewer activity and contributions
If you take part in a board: the comments and questions you write, the votes you cast, and the reports you file, all attached to your account. Published comments and questions are public; your own pending or rejected ones are visible only to you and the board's owner. Vote and thumb totals are public; who cast which is not. We keep a rating derived from these actions, and a history of the events that changed it, which you can see on your own account. Your rating is public; the underlying history is yours alone.
Payments
If you buy a plan, Stripe collects and holds your card and billing details under its own privacy policy; those never reach us. We keep your Stripe customer id, which plan you are on, its status, and the dates of its current period, because the service has to know what you may do. For a streamer on a plan with an overage rate, we send Stripe the number of hours past the cap and the debate's title so the line on your invoice says what it is for. Nothing about a debate's content goes to Stripe.
Verification
If you apply for a verified tag, we collect what you choose to give: your legal name, the profession or expertise you claim, links to public profiles, your education and employer, a short statement, and any documents you attach (a degree, a licence, a resume). Documents are stored in a private bucket, shown only to our reviewers through short-lived links, and deleted 30 days after the decision; the record of the application stays with your account. Free-form links you give are checked against Google Web Risk, a lookup that receives the address and nothing about you. An AI model reads the public pages behind your links and searches the web for your name to help our reviewer; its output is advisory and labelled, and a person decides.
You may also prove your identity through Stripe Identity. Stripe collects a government document and a live selfie in its own flow, under its own privacy policy; those images never reach us. We receive whether they matched and the name Stripe read from the document, and we ask Stripe to redact the session when your account is deleted.
Presence
Live “watching now” counts are anonymous and stored nowhere. If you turn on the presence setting, and only then, streamers you follow may see that you are watching, and short-lived “here now” records are kept while you watch and expire on their own. It is off by default.
Moderation and abuse signals
To keep boards usable we record the outcomes that our automated systems reach on your contributions, and — as an abuse signal only — a hashed, non-reversible form of your network address on the events our systems log. We do not store your raw IP address in these records, and we do not build a profile of you across sites from it. Enforcement records (warnings, restrictions, bans) are kept for as long as your account exists and are used to operate the service, not shared.
Operational logs
Server logs (errors, request metadata) kept by our hosting providers for debugging, on short provider-default retention.
Product analytics, only if you allow it
To find out what works and what confuses people, we measure how the app is used: pages visited, features used, whether an action succeeded, and — on some screens — session recordings of the interface you saw and where you clicked. Our processor for this is PostHog.
This is off until you say yes. Nothing is captured in your browser and no analytics cookie is set unless you choose “Allow analytics” when the app asks. Choose “Essential only” and the only cookies you get are the session ones sign-in cannot work without. You can change your mind by clearing this site’s data in your browser, which makes the app ask again.
Three limits apply whatever you choose:
- The debate console is never recorded. Session replay and click capture are switched off on the page an organiser uses to run a debate, because it displays speaker join links. That is enforced in our code and again in PostHog itself.
- Your IP address is discarded before any analytics event is stored.
- Server-side operational logging is separate and always on. It records that something happened, for example that a rate limit was hit or an invite failed to send. It sets nothing on your device and is the “Operational logs” row above.
Keeping accounts honest
To stop one person creating many accounts to flood a board with comments, we record how an account arrives: the IP address of the request and its address block, the country and city that address resolves to, the browser's user-agent and language headers, and the domain of the email address used. We do not fingerprint your device, we do not read anything from it, and a MAC address is not something a website can see.
Those signals are combined into a score, with a written reason for every point it carries, which tells us when a set of accounts looks like one operation rather than a set of people. The lawful basis is our legitimate interest in preventing abuse of a public board.
- The raw address and the user-agent are kept 90 days and then erased. The address block and the score outlive them, because the question we ask is how many accounts share a neighbourhood, never where anybody lives.
- They are never public and never sold. Only we can read them, through our own admin tool.
- If a score ever restricts an account, the account is told, and the reasons behind the score are ours to explain when you ask.
How data is classified and handled
| Class | Examples | Handling |
|---|---|---|
| Public | Board content, claims, transcripts, handles, stream links | Visible to anyone while a debate is live; part of the public record. |
| Account | Email, account type, votes | Private to you and us; never sold, never shared for marketing. |
| Credentials | Join tokens, session cookies, password hashes | Single-purpose, expiring, never exposed through any public interface. |
| Ephemeral | Live microphone audio | Streamed for transcription in real time; never written to disk. |
| Internal | The AI's working state, cost records, the account-risk signals above | Service-access only; never published. |
AI processing, who sees what
Two kinds of AI providers process debate content, only while a debate is live, and only over authenticated APIs:
- Speech-to-text: one provider transcribes each speaker's audio, whichever the debate is set to use: Deepgram, Soniox or Groq. Every Deepgram request opts out of its model-improvement programme, so the audio is not retained by them and is not used to train their models. Soniox states that it stores no audio sent this way and trains on none. Groq is used with its zero data retention setting on, so it keeps no audio either.
- Language models: transcripts and board state are sent through OpenRouter to the model the debate's organiser selected, to extract claims and maintain the board.
We do not use your data to train AI models, and we send debate content only to API services under commercial terms, not to consumer AI tools. AI output is probabilistic: transcripts and claim tracking can be wrong, and every AI-derived element is labelled as AI-generated and unverified.
Cookies
| Cookie | Purpose | Duration |
|---|---|---|
| sb-* | Your signed-in session (essential; SameSite=Lax) | Session, refreshed while active |
| ph_* | Product analytics (PostHog). Only set if you choose “Allow analytics”; recognises a returning browser so a visit is not counted twice | Up to 1 year |
That is the whole list, and the second row is the only one you are asked about, because it is the only one that is not essential. Say “Essential only” and it is never set. The app and desktop client also keep a few preferences (your analytics choice, dismissed notices, input gain) in your own browser's local storage, which never leaves your machine.
Third-party processors
| Provider | Purpose | Privacy policy |
|---|---|---|
| Supabase | Database, authentication, realtime | supabase.com/privacy |
| Vercel | Web application hosting | vercel.com/legal/privacy-policy |
| Render | Live audio pipeline hosting | render.com/privacy |
| Deepgram | Speech-to-text on live speaker audio | deepgram.com/privacy |
| Soniox | Speech-to-text on live speaker audio, when a debate is set to use it | soniox.com/policies/privacy-policy |
| Groq | Speech-to-text on live speaker audio, when a debate is set to use it | groq.com/privacy-policy |
| OpenRouter | Routes transcript analysis to the selected AI model provider | openrouter.ai/privacy |
| Resend | Sends speaker invite emails | resend.com/legal/privacy-policy |
| Stripe | Payments for paid plans. Stripe holds your card and billing details; we never see the card number. We keep your Stripe customer id, which plan you are on, its status and its renewal date. Stripe Identity, if you choose it, holds the identity document and selfie; we keep only the outcome and the name it read | stripe.com/privacy |
| Google Web Risk | Checks whether a link given in a verification application is known phishing or malware. Receives the address only | policies.google.com/privacy |
| TypeSafe | Judges whether a comment or question is safe to show, through OpenRouter. Receives that text and the debate's title. Nothing else about the account | openrouter.ai/privacy |
| PostHog | Product analytics and session replay, only with your consent. Does not receive debate audio or transcripts | posthog.com/privacy |
| Google Fonts | Serves one typeface file | policies.google.com/privacy |
The model provider behind OpenRouter depends on the model the debate's organiser selects; the selection is shown in the debate's setup. Data submitted through these APIs is governed by each provider's terms and is not used by them to train models under their API terms.
Streams. A board with a stream linked shows the streamer's player from Twitch, YouTube or Kick as soon as you open it. Your browser then connects to that platform, under its own privacy policy. The preview image on a card in the Watch tab comes from our servers. Looking at the Watch tab sends those platforms nothing about you.
Retention
- Microphone audio: never stored, transcribed in transit and gone.
- Transcripts, claims, board content: kept as the debate's record until the organiser deletes the debate. A deleted debate disappears straight away and is erased for good 30 days later.
- Account-risk signals: the IP address and user-agent are erased after 90 days; the address block and the score remain while the account does.
- Join tokens: expire automatically and become useless after the debate ends.
- Account data: kept until you ask us to delete the account.
- Verification documents: deleted 30 days after the application is decided; an upload never attached to an application is deleted after a day. The application record stays with the account.
- Server logs: provider-default short retention, used only for debugging and security.
- Product analytics: if you allowed it, events are kept for 12 months and session recordings for 30 days, then deleted automatically.
Your rights
Wherever you are, email support@axioms.gg to access, correct, export, or delete your data; we respond within 30 days. If you are in the EEA/UK, you additionally have the GDPR rights of access, rectification, erasure, restriction, portability and objection, and the right to complain to your supervisory authority. If you are in California, we do not sell or share personal information as the CCPA defines those terms.
International transfers
Our providers process data in the United States. If you use Contraverse from elsewhere, your data is transferred there under the safeguards in each provider's terms.
Children
Contraverse is not directed at children under 16 and we do not knowingly collect their data. If a child has used it, contact us and we will delete the data.
Security
Everything travels over TLS. Database access is gated by row-level security; board writes happen only from our own services. Join links are long, random, single-purpose and expiring. Passwords are hashed by our auth provider and never touch our code.
Changes
Material changes are posted here with a new date. Keep an eye on the date above.
Contact
support@axioms.gg, we aim to respond within 30 days.