← debateai.com
Tip: this page is print-styled. Use Save as PDF in the print dialog.
Product Report · May 2026

Debate AI

A voice-first sparring partner that argues against you in real time, scores you the way a debate judge would, and gets sharper every night.

Live at debateai.com Founded by Aidan Hollinger-Miles Solo, since Sept 2025 Updated 2026-05-13
7,074 Monthly active users
115 Countries reached
$0.09 Blended CAC
11 Debate formats
4 AI brains, 16 voices
01 · Product

What this is.

If you read nothing else, read this. One paragraph on the product, one block on what it isn't.

Debate AI is a voice-first adversarial-argument trainer. You pick a motion, pick a format, and an AI opponent gives a real timed speech against you. You speak back. It interrupts you, takes points of information, and hits the next speech on the clock. When the round ends, the same engine writes you a judge's ballot: where you won, where you lost, what to fix.

The product is voice. The chat box exists for fallback. The moat is that the AI sounds format-correct: an APDA round sounds nothing like a Policy round, a WSDC bench sounds nothing like a Congress speech. That is the part every other AI debate tool has skipped, and the part that matters to the user who actually does this for sport.

Is

An adversarial sparring partner. A round simulator with a clock. A judge that hands you a written RFD. A learning loop that compounds across rounds.

Isn't

A chatbot. A grammar tool. A writing assistant. A research engine. Not built to agree with you; built to attack.

02 · Wedge

Why this exists.

Five things, ranked by how hard they are to copy. The first one is the moat.

1 · Format accuracy

Policy gets tagged-card delivery and evidence rules. LD gets value and criterion. BP gets extensions and whip structure. APDA stays impromptu with no fabricated citations. WSDC gets reply speeches; Congress gets gavel-conscious decorum; MUN gets diplomatic register. Every other AI debate tool speaks generic "Harvard debate society" English. This requires actually knowing the formats, not just wrapping GPT.

2 · Voice round + judge RFD

Sub-200ms turn-taking. You can interrupt, take points of information, run out of time, get cut off. At the end of the round you get a written ballot with magnitude, probability, and timeframe weighing. That is the moat against ChatGPT: voice plus timer plus format-correct ballot.

3 · Built by a national champion

Most AI-product founders can say "I used AI to build this." Very few can say "I actually argued in this format at the top of the country." The voice prompts are extracted from real APDA notes, real cross-x patterns, real ballots.

4 · Four brains, real voice

Claude, GPT, Gemini, Grok. Streaming TTS on the paid tier through ElevenLabs, Inworld, and Cartesia, with OpenAI gpt-4o-mini-tts as the per-persona-steered free tier. BYOK lets power users bring their own Anthropic key for a dollar a month.

5 · A learning loop that gets sharper every night

Every typed AI turn and every voice-round transcript writes to Firestore. The next time a user picks the same motion in the same format, the system pulls the highest-rated past rounds into the prompt as reference exemplars. A nightly Haiku pass distills the top rounds per format into a "patterns that work" block injected on every subsequent generation. The AI on a given motion today is meaningfully different from the AI on that motion last month. (Section 5 explains the architecture.)

03 · Audience

Who uses it.

The primary user is a competitive debater. The same engine extends to anyone whose job is arguing out loud. The geographic fact is that the product found a market in India before it found one in the US.

Primary · competitive debaters

High school through college, format-accurate across APDA, BP, Policy, LD, PF, World Schools (WSDC), Asian Parliamentary, Congress, MUN, plus a Quick Clash format for newcomers and a Viva format for oral exams. The 80% Indian skew shifted the product's center of gravity: copy now leads with Asian Parli, WSDC, and BP, which is what the Indian school and college circuits actually run.

Secondary · same engine, different room

The India fact

68.5% of MAU is India. 8.3% is the US. The remaining 23% is spread across 113 other countries. India is where the product compounds at $0.09 per acquired user; the US is where ARPU multiplies on the $30 team tier. The product runs both at once.

04 · Surfaces

What you actually do in it.

Every distinct surface in the app, what it does, and where it lives. If you only have two minutes, the first three are the ones to know.

Voice debate /voice-debate
Live WebRTC round through OpenAI's Realtime API. Sub-200ms turns. Server-side voice activity detection means the AI cuts in when you slow down, the way a real opponent would. Five modes: full round, cross-examination only, POI drill, opening only, closing only. Five-mode selector + post-round RFD generated by the same engine. Six rounds per hour per IP, App Check gated.
Format library /debate-ai
Eleven formats with full speech-by-speech timings: Quick Clash, APDA, BP, Asian Parli, Worlds (WUDC), LD, PF, Policy, Congress, Viva, MUN. Each format carries its own evidence rules (Policy uses tagged cards; APDA forbids fabricated citations), structure, register, and timing. Selecting a format swaps the AI's system prompt to the format-specific voice block.
Sixteen AI personas across the app
The Professor, Closer, Surgeon, Veteran, Firebrand, Diplomat, Debater, Philosopher, Prosecutor, Storyteller, Statesman, Barrister, Upstart, Heckler, Disruptor, Tactician. The Counter extension adds Dr. Iyer, an Indian-English measured academic register for vivas. Each persona has its own voice (ElevenLabs / Inworld / Cartesia on Pro; OpenAI gpt-4o-mini-tts with per-persona instructions on Free) and its own argumentative tendencies in the system prompt.
Four AI brains across the app
Claude, GPT, Gemini, Grok, each routed through its own Netlify function (claude.mjs, openai-chat.mjs, gemini.mjs, grok.mjs). User can pick the brain or let the app default. Free tier runs the cheaper sibling models; Pro switches to the flagship. BYOK is Anthropic-only, labeled accordingly.
Judge RFD any round
After any round (voice or typed) the same engine writes you a debate-judge-style ballot. Magnitude, probability, timeframe. Specific drops cited. What to fix next. The ballot is the retention moment.
Devil's Advocate /devils-advocate
Single-AI sparring mode. Paste a claim, an essay, a pitch, a cold email; the AI returns the meanest honest counterargument a skeptical reader would make, ranks attacks by severity, and flags claims that won't survive scrutiny. Faster shape for users who don't want a full timed round.
Live human rounds /live, /live-round
Daily.co video rooms for human-vs-human debate, judged by the same AI ballot engine. Schedule-or-go-now flow, auto-mic toggle on the speaker panel, AI judge generates the RFD when the round ends. Solves the "I have no one to spar with at 11pm before a tournament" problem.
Topics Hub + Motions
Rolling topic bank for the four formats that use one: PF, LD, Policy, Congress. APDA is impromptu so it routes to the random motion generator instead. Updated against current event cycles.
Disclosures /disclosures
Opencaselist-style community case board. Three privacy lanes (Private, Team, Public). Users publish their cases for any signed-in debater to read or import; vote up the strong ones. Quality floor on publish (length, profanity, link-spam). Content compounds without us writing copy.
Counter chrome extension /extension
A separate front door for the same engine, branded "Counter: Oral Exam Trainer (by Debate AI)." Students highlight a passage on any page, hit Connect, and defend it out loud against Dr. Iyer. Built for the viva use case across CBSE/ICSE board exams, IIT/NEET interviews, and dissertation defense; loads voice-debate.html?ext=1&mode=counter in the side panel.
Leaderboard + Vocab Quiz, Learn
Public ranking with consent-gated opt-in (writers can flip only their own UID). A 52-term vocab quiz spanning debate flow, Policy theory, philosophy, and elevated vocabulary. Multiple-choice or flashcard mode, localStorage streak. /learn indexes the format guides and case-prep walkthroughs.
Profile dashboard /profile
Per-user XP, streak, format-mastery breakdown, achievements, and recent rounds, all judged on the same AI ballot the leaderboard uses. The retention surface; gives a returning user a reason to come back the next day rather than the next week.
Geo landings /india, /us
Audience-tuned entry pages for the two largest segments. /india leads with Asian Parli, WSDC, BP and India-coded palette. /us leads with PF, LD, Policy, Worlds, Congress and tournament names (TOC, Glenbrooks, Harvard, Berkeley, Greenhill, Emory). Same engine, different door.
Per-user admin /admin
Pull any user's full activity timeline: sessions, page views, generations, conversions, every gtag event mirrored through the per-user app_event log. Profile header, KPI strip, event-mix table, 200-event scrollback. Support and debugging links resolve directly with ?uid=.
05 · Learning Loop

The system gets sharper every night.

This is the part most people miss in a one-glance demo. Three layers, all shipped, all running in production as of 2026-05-13.

Layer 1 · Capture every turn

Every typed AI turn (case, opp_attack, rebuttal, judge, debate-chat, casual, vision, resolution) writes the full prompt-to-output triple to the generations Firestore collection. Voice rounds flush the entire turn-by-turn transcript to /api/log-generation on session end. Signed-in usage only; anon users can't pollute the corpus.

Layer 2 · Reference rounds injected at runtime

When a user starts a round, the server pulls 1–3 admin-weighted past rounds matching the same motion + format + side and prepends them as REFERENCE ROUNDS to the system prompt. The four AI-brain functions all read this before applying voice guidelines. A 1-hour in-memory cache keeps per-request Firestore reads near zero.

Layer 3 · Nightly distillation

Every night at 04:00 UTC, a scheduled function runs Claude Haiku over the previous 30 days of top-rated generations per format (rating ≥ 4 or saved). It extracts a "patterns that work" block per format and writes it to learning_distillations/{format}. Every subsequent generation reads that doc and appends a LEARNED PATTERNS block to the system prompt.

Final system-prompt order at runtime: [reference rounds] + base system + [learned patterns] + [voice guidelines]. Voice rules come last so they always win conflicts.

"This is the only way an AI debate product compounds. Generic LLMs forget every round. Ours remembers what won."
06 · Architecture

How it's built.

For technical readers. Skip if you trust that it works. The short version: one repo, Netlify edge, four LLM providers, four TTS providers, Firebase for state.

Single-repo React via CDN Netlify Functions Claude · GPT · Gemini · Grok ElevenLabs · Inworld · Cartesia · OpenAI TTS OpenAI Realtime · WebRTC Firebase Auth + Firestore Stripe + Razorpay PWA · service worker

Front end

One large single-file React app (app/debate-ai.html) using React via CDN with a el(tag, props, ...children) alias for React.createElement. No JSX, no build step, intentional. The landing page, voice-debate page, live rooms, and extension iframe are sibling HTML pages sharing the same CSS tokens.

Voice path

For voice, the server mints an ephemeral OpenAI Realtime client secret (POST /v1/realtime/client_secrets), the browser exchanges WebRTC SDP directly with OpenAI (POST /v1/realtime/calls), and session config is pushed over the data channel. The server is never in the audio path, so latency is OpenAI-direct.

Text path

Each LLM provider has its own Netlify function (claude.mjs, openai-chat.mjs, gemini.mjs, grok.mjs) that prepends the format-specific voice block from lib/voice-guidelines.mjs (server-side so view-source can't scrape it), then layers reference rounds and learned-patterns blocks per Section 5.

TTS

The tts.mjs function routes by tier: ElevenLabs eleven_turbo_v2_5 as Pro default, Inworld inworld-tts-1.5-max and Cartesia sonic-2 as Pro opt-ins, OpenAI gpt-4o-mini-tts with per-persona instructions for Free and fallback. Intensity, premium flag, and persona key flow from the client.

Data + payments

Firebase Auth (Google only), Firestore for user state, App Check gated on the sensitive endpoints, rate-limited 6 rounds/hr/IP on Realtime. Payments via Stripe, with Razorpay landing for India before the next paid push.

07 · Pricing

Five tiers.

$5/mo Individual is the conversion target. The other four tiers exist to funnel toward it or to capture an edge segment the $5 tier misses.

Tier Price What you get · why it exists
Free $0 5 anonymous requests + 5 more on sign-in. The appetizer that proves the wedge in 60 seconds.
BYOK $1/mo Unlimited Claude on the user's own Anthropic key. Inference-cost hedge for emerging markets; converts "love it, can't pay" into revenue without us bleeding.
Individual $5/mo 250 requests/mo, all four brains, HD voice. The PPP-friendly tier that unlocks the 68% Indian base; the price every comparable consumer SaaS has converged on.
Lifetime $14.99 once Same 250 requests/mo forever, no recurring charge. For the impulse-buy converter who'd rather not think about it again.
Team $30/mo 1,500 requests, 50 seats. Debate clubs, law-school clinics, sales teams. Phase 2 for the schools sales motion.

Blended gross margin at target mix is ~80%, comparable to Grammarly, Notion, early Duolingo. The $1 BYOK tier is the inference-cost hedge; the $5 Individual is the volume conversion; Lifetime collects upfront cash and seeds the reference class; Team is where school licensing lives.

08 · Traction

Where we are, honestly.

The acquisition curve is the headline. The funnel is the problem. Both are real, both are diagnosed, the relevant fixes are shipping. Numbers are from Firebase Analytics through 2026-04-19; the next traction refresh is due.

Acquisition

Retention

The funnel

Two known leaks, both diagnosed, neither hidden.

Revenue

MRR is $0 as of writing. Stripe is wired but the conversion-tracking allowlist was broken in three layers; all three patched this week, plus the customer.subscription.created webhook for billing-portal upgrades. Razorpay lands before the next paid push so India can convert in INR.

Spend to date

$877.60 total. $660 ads, the rest infrastructure. Solo-built, no payroll, no co-founder.

09 · Roadmap

Where this goes.

Six-month view. Order matters. The first thing is the gate to everything else.

Now → Month 2 · Monetize the existing base

Razorpay for India. First paid conversions. Validate the $1 BYOK and $5 Individual tiers in the 80% of traffic that's already here. Floor MRR target before opening a pre-seed.

Month 2 → Month 6 · US Pro tier + schools beachhead

LinkedIn outbound to 1L/2L law students for the $30/mo tier (US ARPU multiplier). "Coach Pro Forever" free for any verified debate coach, no questions asked, gating the per-seat school sale. Pilot programs with the first 3 US Urban Debate Leagues and the first 18 UWC schools.

Month 6 → Month 12 · Native mobile

Capacitor wrap of the existing PWA. Six-week MVP. Structurally fixes the in-app-browser auth bug and unlocks push notifications, which is the missing retention lever.

SEO + content engine, in parallel

Organic search is currently near zero because the splash interstitial at root was indexing an empty page. Root now serves the full landing again. SoftwareApplication + FAQPage structured data is in. Search Console verification placeholder is wired; once verified, the queries this site already ranks for become visible. Distinct from this: a TikTok + Instagram content engine (5 pillars, 30 posts in 30 days) is the consumer-acquisition lever next to paid.

The ESL line

Core TAM is ~575,000 competitive debaters globally. Adjacent (forensics, MUN, mock trial, law students) is ~8M. The stretch is the 1.5 billion people learning English. Speak hit $20M ARR at ~2M MAU on the AI-English-tutor thesis; Duolingo did 100M MAU at $84/yr on grammar. "Practice speaking English by arguing with an AI" is the same thesis applied to argumentation. If the data supports it, the debate market becomes a rounding error.

10 · Founder

Who's building this.

Investors want to know "why this person for this problem." Here.

Aidan Hollinger-Miles. Sophomore at the University of Chicago, philosophy + business economics. Four-year parliamentary debater, national champion (AU ProAms). Built the first version of Debate AI as a sparring partner for himself, shared it with his circuit, and watched the first 100 users turn into 7,000 across 115 countries on $660 of ad spend.

Solo founder for eight months. Six weeks full-time since the public launch. UChicago leave of absence for autumn 2026 is the plan if the funding cycle requires it. UWC alum; that network is the warmest non-circuit channel for the schools track.

The reason the format-accuracy moat is hard to copy: every other AI debate tool was built by someone who can ship product but didn't argue at the top of the country. The voice prompts are extracted from real APDA notes, real ballots, real cross-x patterns. Vibes alone don't get you there.

"The leverage in AI isn't in the model. It's in the workflow around it. Which prompt produces sharp critique, not generic hedging. When to let the agent push back versus defer. How to surface useful output in 30 seconds. That middle layer is where Debate AI lives."