Privacy Policy

Last updated September 29, 2026

This policy describes how Daniel Currey handles information when you use Debate Evaluator. It applies to the public site and to signed-in use.

The rules for using the service are in the Terms of Service. Questions go to danielcurrey.com.

Who we are

Daniel Currey operates Debate Evaluator, a web app for building debate trees, transcribing source material, and scoring claims with language models.

This policy explains what information the service handles. The Terms of Service explain the rules for using it. Privacy questions go to danielcurrey.com.

Account information

You sign in with Google, Microsoft, GitHub, or Discord. From that sign-in we store your name, email address, and profile image, along with the provider account id and the access, refresh, and id tokens that provider returns so the account stays connected.

When you create an account we store the IP address of the registration request. That address is used to limit the one-time signup credit grant to one grant per address. We keep that grant record after the account is deleted, so the same address cannot receive the signup credit again.

Content and transcripts

The service stores the debate trees, arguments, comments, votes, and evaluation criteria you create. It also stores video metadata, including the original file name, title, duration, thumbnail, and channel name; transcript text and the transcription provider's raw response; live-session state; argument text kept so a score can be reused; and an audit log of language-model calls. That log includes the system prompt, the user prompt, the raw response, the provider, the model, and token counts. The tree owner and collaborators with admin access can read those logs.

Audio and video you upload, up to 500MB, are sent to AssemblyAI for transcription. We keep the transcript and file metadata. We do not keep the uploaded file itself. A YouTube address is sent to Firecrawl so we can obtain a short-lived audio address, which is then sent to AssemblyAI. We do not keep that temporary audio address.

During a live conversation, audio is streamed from your browser to AssemblyAI after the server issues a short-lived streaming token.

How content is shared

Trees start private. You choose who else can see one:

  • Private: you and the collaborators you add.
  • Link: anyone who has the link can view it.
  • Public: the tree appears in the public library and in the site map.

A collaborator's role controls whether they can view, edit, or administer the tree. If you turn on public editing, any signed-in person can edit a public or link-shared tree.

A live overlay link works without an account. Anyone with that link can see the session title, topic, status, active topic, steelmans, latest claim, and the argument being formed. The live page tells participants that the conversation is being transcribed.

Billing and API keys

If you buy credits or a subscription, Stripe processes the payment. We store your Stripe customer id, subscription id, price id, and current period end, plus your credit balance and credit transactions. Checkout sends Stripe your email address and user id.

If you add your own model API keys, we store them encrypted and use them only to call model providers on your behalf through the Vercel AI Gateway. We store a short hint of each key so you can recognize it.

How we use information

We use the information above to:

  • Run debate trees, transcription, scoring, and live sessions.
  • Keep you signed in and apply your credits and plan.
  • Limit signup credit grants to one per registration IP address.
  • Process payments and show billing history.
  • Protect the service, enforce rate limits, and diagnose errors.
  • Measure page visits in aggregate.

We do not sell your personal information.

Service providers

We send information to companies that process it for us so the service can run:

  • Google, Microsoft, GitHub, and Discord, for the sign-in you choose.
  • Vercel, for hosting and page analytics.
  • Supabase, for the database that holds account and content data, and for live updates. The browser receives a short-lived token that includes your user id and email so those updates can be authorized.
  • Vercel AI Gateway and the model providers you select. Prompts, transcripts, and argument text are sent to them to draft and score claims. If you use your own key, that key is sent to the gateway for those calls.
  • Firecrawl, which receives YouTube addresses.
  • AssemblyAI, which receives uploaded files, short-lived audio addresses, and live audio from the browser.
  • Stripe, which receives checkout and subscription details.
  • Sentry, which receives error reports and masked session replays. Default personal data is turned off, cookies and authorization headers are removed, overlay tokens in addresses are redacted, and replay masks text, inputs, and media.
  • Upstash Redis, which stores rate-limit keys such as a user or provider identifier.

The service does not send mail through an email provider. Collaborator notices stay inside the app.

Cookies and local storage

Sign-in uses a session cookie named authjs.session-token, plus the usual Auth.js CSRF and callback cookies. Those cookies keep you signed in. The session itself is a signed token that carries your user id, role, credit balance, and plan.

Vercel Analytics records page visits. Theme preference is stored in local storage on your device, not in a cookie. The site does not show a cookie-consent banner.

How long we keep information

We keep account information and content while your account exists and while the related tree exists. Deleting a tree removes that tree and the content stored with it, including its transcript and model logs.

While you are signed in, Settings lets you download a JSON copy of your data or delete your account. The download includes your profile, the trees you own (including transcript text), and comments and votes you made on other people's trees. It does not include sign-in tokens, encrypted model API keys, model prompts and responses, model call logs, evaluation error logs, or other people's account ids. Comment authors and collaborators are listed by name. The transcription provider's raw response is left out; the transcript text is included.

Deleting the account is permanent. It removes the account, the trees you own and the transcripts and model logs stored with them, comments you wrote, votes, API keys, and the billing identifiers and credit history we store. It cancels a Stripe subscription if you have one. It does not remove the registration IP grant described above, copies already sent to model providers, AssemblyAI, Firecrawl, or Sentry, or payment records Stripe keeps.

To ask for a correction, or for a request these controls cannot complete, contact danielcurrey.com. We will respond to requests we are able to fulfill.

Children

Debate Evaluator is not directed at children under 13, and we do not knowingly collect personal information from them. If you believe a child under 13 has given us personal information, contact danielcurrey.com and we will delete it.

Changes to this policy

We may update this policy. When we do, we change the date at the top of this page. Continued use of the service after that date means the updated policy applies.

Contact

Daniel Currey publishes contact details at danielcurrey.com. Use that site for privacy requests and other questions about this policy.