Yes. DebateOwl's Ask coach is an AI debate coach that answers specific prep questions about what your side has to prove, which argument decides the round and how to structure a speech, and gives feedback on practice speeches; it works best when you name the format, side and speaker role. Vague questions get generic answers. Treat any sources it cites as leads to check. An AI coach has not watched you speak and does not know your judges or your partner, so take its conclusions to your human coach or team.
What is an AI debate coach?
A chat tool that answers a debater's prep questions about strategy, arguments, answers to the other side and speech structure, and gives feedback on practice speeches, for the debater to test and adapt.
Strategy help
Ask which argument decides the round, what your side has to prove and where to spend your speaking time, with answers that use your debate's motion and sources.
Speech structure
Get an outline for a constructive, rebuttal, summary or reply speech: the order of points and how long to give each one.
Practice feedback
Paste a speech or a flow and ask what was unclear, under-warranted or dropped, then pick one fix to drill.
-
What an AI debate coach is for
A good human coach rarely gives you an answer first. They ask what the round is about, which side you are on, what you have to prove, and what the judge will be comparing at the end. The AI coach in DebateOwl works best the same way: as a partner you think out loud with, not a machine that writes speeches.
Ask is a coaching chat that streams its answer as it writes, and it already knows your Current Debate: the motion and the Library sources you have marked active. That context is the main difference from a general chatbot. You do not have to paste the motion and your research into every question, and the advice stays tied to one debate instead of drifting between topics.
How to ask a coaching question that gets a useful answer
Vague questions get generic answers. Compare these two:
Weak: How do I win this debate?
Strong: I am second opposition in a WSDC round on this motion. Our first speaker argued the policy is unworkable. What should I add so I am not repeating her, and which proposition argument should I spend most of my rebuttal on?
The strong version names the format, the speaker role, what has already been said and the decision you actually have to make. A reliable template is: format, side and speaker, what is already on the table, what you are stuck on, and what kind of answer you want (a list, an outline or a single recommendation).
Five coaching conversations worth having before a tournament
Burden check: ask what each side has to prove for the motion to stand or fall, and where the line between them sits. Many rounds are lost on a burden nobody named.
Clash map: ask for the three places where the cases will meet. Plan your speeches around those, not around your own contentions.
Weighing rehearsal: give the coach your impact and the likely opposing impact and ask for the comparison in two sentences. Repeat until you can say it without notes.
Speech audit: paste a practice speech and ask which claim had no warrant, which point ran too long, and what a judge would remember from it.
Opponent prediction: ask how a strong team on the other side would frame the debate, then ask what your first response to that framing should be.
Worked example: coaching a weak rebuttal
Motion: This house believes social media companies should be legally liable for misinformation on their platforms
Student's rebuttal: Their argument is wrong because free speech is important and this would destroy it.
Coach's diagnosis: The response asserts a value but never connects it to the proposition's mechanism. It does not say how liability leads to less speech, so the judge has nothing to weigh.
Coach's question back: What would a platform rationally do if it could be sued for every false post?
Rebuilt rebuttal: Liability makes every borderline post a legal risk. A platform facing that risk removes anything it cannot verify quickly, which includes breaking news, whistleblowers and minority viewpoints. So the proposition does not just remove misinformation; it removes true speech that is hard to check, and the people who lose most are those with no other platform.
Follow-up drill: Deliver the rebuilt response in forty-five seconds, then ask the coach for the strongest proposition answer to it and prepare a single-sentence reply.
Notice that the coach did not write the rebuttal outright. It asked the question that exposed the missing link, which is the habit you want to build for rounds where no coach is available.
Coaching by format
World Schools (WSDC)
Ask the coach to check your team split: what the first and second speakers each own, and whether the third speaker can rebut without introducing a new argument. For the reply speech, ask for a structure built around the two or three questions the debate turned on, told from your side, without new material.
British Parliamentary (BP)
Role fulfilment decides BP rooms. Ask the coach whether your member speech is a true extension or a restatement of your opening bench, and ask what a whip speech should do with the five other speeches already in the room: group them into clashes, not summaries of each speaker.
Public Forum (PF)
Use coaching to plan the summary before the round. Ask which two issues you can realistically extend from constructive through final focus, and what the second rebuttal must frontline so those issues survive. Also ask for crossfire questions that set up your summary rather than score points.
Lincoln-Douglas (LD)
LD coaching is often framework coaching. Ask the coach whether your criterion actually measures your value, how your contentions link back to the criterion, and when it is safer to concede the opponent's framework and show that you win under it anyway.
Getting answers with sources
When a coaching answer depends on facts, turn on Citations in Ask. The coach then answers with sources you can open. Treat those as leads: read the original, confirm it says what the answer claims, and only then use it in a speech. Adding your own trusted articles to the Library has the same effect from the other direction, because active sources that fit the question are used in its answers for that debate.
What an AI coach cannot do
It has not watched you speak, it does not know the judges at your tournament, and it cannot tell you how your partner works under pressure. Bring the conclusions from AI coaching sessions to your human coach or team, and let them correct the advice that does not fit the people in the room.
+
What an AI debate coach is for
A good human coach rarely gives you an answer first. They ask what the round is about, which side you are on, what you have to prove, and what the judge will be comparing at the end. The AI coach in DebateOwl works best the same way: as a partner you think out loud with, not a machine that writes speeches.
Ask is a coaching chat that streams its answer as it writes, and it already knows your Current Debate: the motion and the Library sources you have marked active. That context is the main difference from a general chatbot. You do not have to paste the motion and your research into every question, and the advice stays tied to one debate instead of drifting between topics.
How to ask a coaching question that gets a useful answer
Vague questions get generic answers. Compare these two:
Weak: How do I win this debate?
Strong: I am second opposition in a WSDC round on this motion. Our first speaker argued the policy is unworkable. What should I add so I am not repeating her, and which proposition argument should I spend most of my rebuttal on?
The strong version names the format, the speaker role, what has already been said and the decision you actually have to make. A reliable template is: format, side and speaker, what is already on the table, what you are stuck on, and what kind of answer you want (a list, an outline or a single recommendation).
Five coaching conversations worth having before a tournament
Burden check: ask what each side has to prove for the motion to stand or fall, and where the line between them sits. Many rounds are lost on a burden nobody named.
Clash map: ask for the three places where the cases will meet. Plan your speeches around those, not around your own arguments.
Weighing rehearsal: give the coach your impact and the likely opposing impact and ask for the comparison in two sentences. Repeat until you can say it without notes.
Speech audit: paste a practice speech and ask which point never said why it is true, which point ran too long, and what a judge would remember from it.
Opponent prediction: ask how a strong team on the other side would frame the debate, then ask what your first response to that framing should be.
Worked example: coaching a weak rebuttal
Motion: This house believes social media companies should be legally liable for misinformation on their platforms
Student's rebuttal: Their argument is wrong because free speech is important and this would destroy it.
Coach's diagnosis: The response asserts a value but never connects it to the proposition's mechanism. It does not say how liability leads to less speech, so the judge has nothing to weigh.
Coach's question back: What would a platform rationally do if it could be sued for every false post?
Rebuilt rebuttal: Liability makes every borderline post a legal risk. A platform facing that risk removes anything it cannot verify quickly, which includes breaking news, whistleblowers and minority viewpoints. So the proposition does not just remove misinformation; it removes true speech that is hard to check, and the people who lose most are those with no other platform.
Follow-up drill: Deliver the rebuilt response in forty-five seconds, then ask the coach for the strongest proposition answer to it and prepare a single-sentence reply.
Notice that the coach did not write the rebuttal outright. It asked the question that exposed the missing link, which is the habit you want to build for rounds where no coach is available.
Coaching by format
World Schools (WSDC)
Ask the coach to check your team split: what the first and second speakers each own, and whether the third speaker can rebut without introducing a new argument. For the reply speech, ask for a structure built around the two or three questions the debate turned on, told from your side, without new material.
British Parliamentary (BP)
Role fulfilment decides BP rooms. Ask the coach whether your member speech is a true extension or a restatement of your opening bench, and ask what a whip speech should do with the five other speeches already in the room: group them into clashes, not summaries of each speaker.
Public Forum (PF)
Use coaching to plan the summary before the round. Ask which two issues you can realistically extend from constructive through final focus, and what the second rebuttal must frontline so those issues survive. Also ask for crossfire questions that set up your summary rather than score points.
Lincoln-Douglas (LD)
In LD, much of the coaching is about how the judge should decide the round: your value and criterion. Ask the coach whether your criterion actually measures your value, how each argument ties back to the criterion, and when it is safer to accept the opponent's value and criterion (their framework) and show that you win under them anyway.
Getting answers with sources
When a coaching answer depends on facts, turn on Citations in Ask. The coach then answers with sources you can open. Treat those as leads: read the original, confirm it says what the answer claims, and only then use it in a speech. Adding your own trusted articles to the Library has the same effect from the other direction, because active sources that fit the question are used in its answers for that debate.
What an AI coach cannot do
It has not watched you speak, it does not know the judges at your tournament, and it cannot tell you how your partner works under pressure. Bring the conclusions from AI coaching sessions to your human coach or team, and let them correct the advice that does not fit the people in the room.
Frequently asked questions
What can I ask the AI debate coach?
Anything you would ask a coach between rounds: what your side has to prove, which argument decides the round, speech structure, how to answer a specific argument, or why a practice speech did not land. Specific questions with format, side and speaker role get the best answers.
Does the coach know my case?
It knows your Current Debate: the motion, and the Library sources you have marked active. Paste a speech or a case section into the question when you want feedback on that exact text.
Can the AI coach cite sources?
Yes. Turn on Citations in Ask and the answer includes sources you can open. Check each one against the original before using it in a round.
Will the coach write my speeches for me?
It can draft an outline or a passage, but you will speak better from structure you understand. Use it to find what is missing, then write the speech in your own words.
How is this different from a general AI chatbot?
The coach works inside one debate at a time, so it keeps your motion, debate settings and sources in context, and it is set up for debate questions rather than essays.
Is there a free AI debate coach?
Not a permanent one in DebateOwl. The Ask coach comes with the app's 3-day free trial, no credit card needed, and after that with Pro at $5/month + tax. The tools you can use free without an account, the debate timer, motion generator, flow sheet and speech time calculator, do not include coaching.
Can an AI judge my debate speech?
Partly. Sparring rounds end with a judged verdict that names the reason for the decision, and the Ask coach can tell you what was unclear, under-warranted or dropped in a speech you paste in. It has not watched you speak and does not know the judges at your tournament, so treat its verdict as practice feedback, not a prediction of a real ballot.
Is an AI rebuttal generator worth using for debate prep?
It is worth it for preparation when the output is structured for a round: the exact words being attacked, the broken link, a response you can say, a cross-ex question and the missing weighing. A general chatbot tends to write a counter-essay instead, which is rarely usable. Run it on opposing cases and on your own case. It cannot hear how your opponent framed an argument or know what a judge will find persuasive, and most leagues restrict AI during rounds. Rewrite responses in your own words and check any evidence it cites.
Weaknesses ranked by damage
Attack quotes the exact words it is targeting, names the broken link and orders the weaknesses from critical to minor.
Responses you can say
Each weakness comes with one to three sentences written to be spoken in round, not a description of what you could argue.
Cross-ex questions and weighing
Get questions tied to each weakness, a check for fallacies and an analysis of the weighing the argument is missing.
-
What a good rebuttal generator should give you
Generic AI tools answer the request to rebut an argument by writing a counter-essay: a few paragraphs on why the other side is wrong. That is rarely usable. In a round you need to know which part of the argument to attack, what the flaw is called, and what to say in the next forty seconds.
Attack in DebateOwl is built around that need. Paste an argument or a full case and it returns a structured critique. Every weakness has to do three jobs: quote the exact words it attacks, explain why the link fails and why that matters for the ballot, and give a response you can say word for word. If the argument has fewer real weaknesses, it returns fewer rather than inventing problems.
What one Attack analysis contains
An overall assessment: a score out of 100, a short summary and what the argument does well, so you know which parts not to waste time on.
Weaknesses, usually three to six, each marked critical, major or minor and labelled as evidential, logical or structural.
For each weakness: the quoted words, why the link is weak (missing warrant, no evidence, no link, non-unique, turned or outweighed), and a response to say in round.
Fallacies detected, with where they appear and how to call them out without sounding like a textbook.
Cross-examination questions, each tied to one weakness and written so that a short honest answer exposes the gap.
A weighing analysis: the weighing the argument relies on, the comparisons it never makes, and how to out-weigh it.
Attack also runs web research on the argument, so responses can point to counter-evidence. Treat any evidence it mentions as a lead and check the original source before you use it.
Settings that change the output
Attack intensity
Mild gives constructive criticism, useful when you are checking your own case. Moderate balances strengths and weaknesses. Ruthless looks hardest for anything a strong opponent could exploit, which is what you want when preparing against an opposing case.
Judge paradigm
Logic-Heavy prioritises broken reasoning and missing warrants. Values-Focused looks at framework and principle, which suits Lincoln-Douglas and principled motions. Policy/Impact concentrates on links, probability and the size of impacts, which suits policy-style motions and Public Forum.
Fallacies and weighing
Both checks are on by default. Turn fallacy detection off when you only want substantive responses; keep weighing analysis on almost always, because unweighed rebuttal is the most common reason good responses do not win rounds.
Worked example: one argument through Attack
Motion: This house would tax sugary drinks
Argument pasted: A sugar tax reduces consumption, because higher prices make people buy less. Lower consumption means less obesity, which saves lives and reduces the burden on public health systems.
Critical weakness, logical: Quoted: lower consumption means less obesity. The argument assumes people who buy fewer sugary drinks do not replace those calories with other foods. Without that warrant, the impact does not follow from the mechanism.
Response to say: Even if people buy fewer fizzy drinks, they can get the same sugar from sweets, juice and snacks that are not taxed. Cutting one source of calories is not the same as cutting calories.
Major weakness, evidential: Quoted: saves lives. The argument gives no estimate of how much consumption falls or how that translates into health outcomes, so the judge cannot weigh the size of the benefit.
Cross-ex question: If someone stops buying a sugary drink but buys a chocolate bar instead, has the tax reduced their sugar intake?
Weighing gap: The argument never compares its health benefit with the cost to low-income households, who spend a larger share of their income on these drinks. That comparison is your weighing.
The useful part is not that the analysis disagrees with the argument. It identifies the one assumption the argument cannot survive without, gives you a sentence to attack it, and sets up a cross-ex question that makes the opponent concede it before your speech.
From generated output to a rebuttal you own
Start from the right input. Use a claim from the "If they say…" answers in a case you generated, an argument you heard in a previous round, or your own case when you want to find its weak points first.
Read the critical weaknesses and pick one. In a short speech, one well-explained weakness beats four rushed ones.
Rewrite the suggested response in your own words. Keep the structure (quote, flaw, response, why it matters) and cut anything you would not naturally say.
Check any evidence it relies on against the original source.
Time the response. Most single responses should fit in forty-five seconds.
Import the cross-examination questions into Crossfire and practise asking them against the AI, which answers from the opposing side.
Keep the analysis in your Current Debate so the block sits next to the case it answers.
Using generated rebuttals by format
Public Forum (PF)
Use Policy/Impact for most PF resolutions. Prepare the response and the cross-ex question together, because PF crossfire is where you get the opponent to commit to the assumption you attack in rebuttal.
Lincoln-Douglas (LD)
Run Values-Focused on the negative case to find where its contentions fail to link to its own criterion. That gap often lets you win under their framework as well as yours.
World Schools and British Parliamentary
Motions are often released shortly before the round, so use Attack in practice on likely arguments for motion areas you expect, and build a bank of responses to the reasoning that recurs across motions, such as slippery slopes, unproven behaviour change and ignored alternatives.
What it cannot do
Attack responds to the text you give it. It cannot hear how your opponent actually framed an argument, and it cannot tell you what a particular judge will find persuasive. Most leagues also do not allow internet or AI tools during rounds, so it is a preparation tool: build and practise the blocks before the tournament, then adapt them by ear in the round.
+
What a good rebuttal generator should give you
Generic AI tools answer the request to rebut an argument by writing a counter-essay: a few paragraphs on why the other side is wrong. That is rarely usable. In a round you need to know which part of the argument to attack, what the flaw is called, and what to say in the next forty seconds.
Attack in DebateOwl is built around that need. Paste an argument or a full case and it returns a structured critique. Every weakness has to do three jobs: quote the exact words it attacks, explain why the link fails and why that matters for the ballot, and give a response you can say word for word. If the argument has fewer real weaknesses, it returns fewer rather than inventing problems.
What one Attack analysis contains
An overall assessment: a score out of 100, a short summary and what the argument does well, so you know which parts not to waste time on.
Weaknesses, usually three to six, each marked critical, major or minor and labelled as evidential, logical or structural.
For each weakness: the quoted words, why the link is weak (no reason it is true, no evidence, no link, not unique to their side, turned or outweighed), and a response to say in round.
Fallacies detected, with where they appear and how to call them out without sounding like a textbook.
Cross-examination questions, each tied to one weakness and written so that a short honest answer exposes the gap.
A weighing analysis: the weighing the argument relies on, the comparisons it never makes, and how to out-weigh it.
Attack also runs web research on the argument, so responses can point to counter-evidence. Treat any evidence it mentions as a lead and check the original source before you use it.
Settings that change the output
Attack intensity
Mild gives constructive criticism, useful when you are checking your own case. Moderate balances strengths and weaknesses. Ruthless looks hardest for anything a strong opponent could exploit, which is what you want when preparing against an opposing case.
Judge paradigm
Logic-Heavy prioritises broken reasoning and points that never say why they are true. Values-Focused looks at principles and how the judge should decide, which suits Lincoln-Douglas and principled motions. Policy/Impact concentrates on links, probability and how big the harms and benefits are, which suits policy-style motions and Public Forum.
Fallacies and weighing
Both checks are on by default. Turn fallacy detection off when you only want substantive responses; keep weighing analysis on almost always, because unweighed rebuttal is the most common reason good responses do not win rounds.
Worked example: one argument through Attack
Motion: This house would tax sugary drinks
Argument pasted: A sugar tax reduces consumption, because higher prices make people buy less. Lower consumption means less obesity, which saves lives and reduces the burden on public health systems.
Critical weakness, logical: Quoted: lower consumption means less obesity. The argument assumes people who buy fewer sugary drinks do not replace those calories with other foods. Without that step, the health benefit does not follow from the mechanism.
Response to say: Even if people buy fewer fizzy drinks, they can get the same sugar from sweets, juice and snacks that are not taxed. Cutting one source of calories is not the same as cutting calories.
Major weakness, evidential: Quoted: saves lives. The argument gives no estimate of how much consumption falls or how that translates into health outcomes, so the judge cannot weigh the size of the benefit.
Cross-ex question: If someone stops buying a sugary drink but buys a chocolate bar instead, has the tax reduced their sugar intake?
Weighing gap: The argument never compares its health benefit with the cost to low-income households, who spend a larger share of their income on these drinks. That comparison is your weighing.
The useful part is not that the analysis disagrees with the argument. It identifies the one assumption the argument cannot survive without, gives you a sentence to attack it, and sets up a cross-ex question that makes the opponent concede it before your speech.
From generated output to a rebuttal you own
Start from the right input. Use a claim from the "If they say…" answers in a case you generated, an argument you heard in a previous round, or your own case when you want to find its weak points first.
Read the critical weaknesses and pick one. In a short speech, one well-explained weakness beats four rushed ones.
Rewrite the suggested response in your own words. Keep the structure (quote, flaw, response, why it matters) and cut anything you would not naturally say.
Check any evidence it relies on against the original source.
Time the response. Most single responses should fit in forty-five seconds.
Import the cross-examination questions into Crossfire and practise asking them against the AI, which answers from the opposing side.
Keep the analysis in your Current Debate so the block sits next to the case it answers.
Using generated rebuttals by format
Public Forum (PF)
Use Policy/Impact for most PF resolutions. Prepare the response and the cross-ex question together, because PF crossfire is where you get the opponent to commit to the assumption you attack in rebuttal.
Lincoln-Douglas (LD)
Run Values-Focused on the negative case to find where its arguments fail to tie back to its own criterion. That gap often lets you win under their value and criterion as well as yours.
World Schools and British Parliamentary
Motions are often released shortly before the round, so use Attack in practice on likely arguments for motion areas you expect, and build a bank of responses to the reasoning that recurs across motions, such as slippery slopes, unproven behaviour change and ignored alternatives.
What it cannot do
Attack responds to the text you give it. It cannot hear how your opponent actually framed an argument, and it cannot tell you what a particular judge will find persuasive. Most leagues also do not allow internet or AI tools during rounds, so it is a preparation tool: build and practise the blocks before the tournament, then adapt them by ear in the round.
Frequently asked questions
What does the AI rebuttal generator produce?
A ranked list of weaknesses, each quoting the attacked words with an explanation and a response to say in round, plus detected fallacies, cross-examination questions and a weighing analysis.
Can I use it on my own case?
Yes, and you should. Set the intensity to Mild or Moderate to find your weak points before an opponent does, then fix them or prepare an answer.
Is it allowed to use an AI rebuttal generator in a debate round?
Most leagues restrict or ban internet and AI use during rounds. Check your league's rules and use the tool to prepare blocks beforehand.
Are the rebuttals backed by evidence?
Attack runs web research and can point to counter-evidence. Treat anything it cites as a lead and check the original source before using it.
How is this different from asking a chatbot to rebut an argument?
The output is structured for a round: each response targets quoted words, names the broken link and comes with a cross-ex question and weighing, instead of a general essay against the other side.
It depends on the job. For brainstorming or learning a topic, a general chatbot such as ChatGPT is flexible. For motion-by-motion prep plus timed practice rounds that end in a verdict, a dedicated platform such as DebateOwl fits. As of October 2026, debatelab.ai, a separate product, says it is free and runs World Schools and Asian Parliamentary practice, and WinDebate adds round replay and progress tracking from $19.99/month. Give each tool the same motion and tasks before you decide.
Feature comparison
What each kind of tool does well: general chatbots, research assistants, dedicated debate platforms, and timers or flowing tools.
Format coverage
Which formats a tool actually models, from Public Forum and Lincoln-Douglas to WSDC and British Parliamentary, and where you still prep by hand.
Workflow differences
Whether cases, sources, practice rounds and feedback stay connected to one motion, or end up scattered across chats and documents.
-
The four kinds of AI debate tool
Debaters use AI tools for different jobs, and the categories overlap less than the marketing suggests. Most prep setups combine at least two of these.
General AI chatbots
Assistants such as ChatGPT, Claude and Gemini are flexible and good at brainstorming, explaining a concept or tightening a paragraph. Their weakness for debate is structure: they do not hold a motion, side and format across sessions unless you rebuild the context each time, and they will produce confident claims without sources unless you ask.
Research and citation tools
AI search and research assistants are strongest at finding sources quickly. They help with evidence but not with turning evidence into arguments, rebuttals or speeches.
Dedicated debate platforms
These are built around debate concepts: cases with contentions, rebuttals, opponents and verdicts. They vary a great deal in which formats they model and whether they let you practise or only generate text.
Practice utilities
Timers, flowing templates and argument maps. Often simple, sometimes not AI-based at all, and still essential for practice that matches tournament conditions.
Eight criteria for comparing AI debate tools
Structure: does the output separate claim, warrant and impact, or is it a wall of text?
Format awareness: does it know your speech order, times and roles, or treat every debate as an essay?
Sources: can you see where a claim comes from, and can you add your own material for it to use?
Opposition: does it predict and argue the other side, or only help with yours?
Practice: can you deliver a speech and get a response to it, not just read generated text?
Feedback: does it tell you why an argument failed, with something specific to fix?
Continuity: does work stay organised by motion, or do you lose it in a long chat history?
Limits and privacy: what is the daily or monthly allowance, and who can see your prep?
Weight the criteria by what you need. A novice benefits most from structure and feedback; an experienced competitor often cares most about sources, opposition and practice.
A one-hour test you can run on any tool
Reviews and feature lists only go so far. The fairest comparison is to give every tool the same motion and the same tasks:
Pick a motion in your format that you know well, so you can judge the quality of the answers.
Ask each tool for a case on one side. Score it on structure and on whether the warrants actually prove the claims.
Ask each tool for the strongest argument against that case. Score whether it found the real weak point or a generic objection.
Paste one of your own past speeches and ask what it would change. Score how specific the feedback is.
Ask for evidence on one factual claim. Open every source and score how many check out.
Note how much context you had to repeat between steps.
Fifteen minutes per tool is enough to see the difference. Keep the scores; they are more useful than any ranking list, including this one.
Worked example: scoring answers to one motion
Motion: This house would make voting compulsory
Task: Find the weakest link in the proposition argument that compulsory voting produces a more representative government.
Strong answer: Points out that turnout and representation are different: compelled voters who know little about the candidates may vote randomly or for the first name on the ballot, so higher turnout may not mean preferences are better represented.
Weak answer: Says compulsory voting violates freedom. That is an opposition argument, not an attack on the proposition's link, and it does not engage with representation at all.
How to score it: Give the point only if the tool attacked the warrant (why more voters means better representation) rather than changing the subject.
Running the same task through several tools shows quickly which ones understand debate structure and which ones produce plausible but generic text.
Which tools fit which format
World Schools (WSDC)
WSDC prep is team prep under time pressure, often for impromptu motions. Prioritise fast brainstorming and motion analysis, plus a way to practise Points of Information. Few tools model the full WSDC round, so expect to time speeches yourself.
British Parliamentary (BP)
BP rewards role knowledge and extensions. Look for tools that let you set the format and your team position, and that can show you what the opening half is likely to say so closing teams can plan something new.
Public Forum (PF)
PF depends on evidence and on keeping summary and final focus consistent. Strong source handling matters more here than in most formats, along with practice rounds that use real PF speech times.
Lincoln-Douglas (LD)
LD needs tools that handle value and criterion, not just policy arguments. Test whether a tool can defend a framework and link contentions to it, and whether it can practise the time-pressured 1AR.
Where DebateOwl fits
DebateOwl is a dedicated debate platform that keeps every case, source, round and debrief inside one Current Debate. It covers case generation with "If they say…" answers to the other side, Library sources that ground its answers, Attack for finding weak links, Brainstorm, Factoids for checking claims, an Ask coaching chat with optional citations, Crossfire and full Sparring rounds with a verdict, a speech timer and an argument flowchart.
Its limits are worth stating plainly. Sparring currently runs School 4-6-6-3, Lincoln-Douglas and Public Forum rounds, so WSDC and BP practice uses the prep and coaching tools rather than a full simulated round. Like every AI tool, its evidence leads need checking against the original source. Run the one-hour test above and decide on your own results.
+
The four kinds of AI debate tool
Debaters use AI tools for different jobs, and the categories overlap less than the marketing suggests. Most prep setups combine at least two of these.
General AI chatbots
Assistants such as ChatGPT, Claude and Gemini are flexible and good at brainstorming, explaining a concept or tightening a paragraph. Their weakness for debate is structure: they do not hold a motion, side and format across sessions unless you rebuild the context each time, and they will produce confident claims without sources unless you ask.
Research and citation tools
AI search and research assistants are strongest at finding sources quickly. They help with evidence but not with turning evidence into arguments, rebuttals or speeches.
Dedicated debate platforms
These are built around debate concepts: cases with arguments, rebuttals, opponents and verdicts. They vary a great deal in which formats they model and whether they let you practise or only generate text.
Practice utilities
Timers, flowing templates and argument maps. Often simple, sometimes not AI-based at all, and still essential for practice that matches tournament conditions.
Eight criteria for comparing AI debate tools
Structure: does each argument say what is true, why, and why it matters, or is it a wall of text?
Format awareness: does it know your speech order, times and roles, or treat every debate as an essay?
Sources: can you see where a claim comes from, and can you add your own material for it to use?
Opposition: does it predict and argue the other side, or only help with yours?
Practice: can you deliver a speech and get a response to it, not just read generated text?
Feedback: does it tell you why an argument failed, with something specific to fix?
Continuity: does work stay organised by motion, or do you lose it in a long chat history?
Limits and privacy: what is the daily or monthly allowance, and who can see your prep?
Weight the criteria by what you need. A novice benefits most from structure and feedback; an experienced competitor often cares most about sources, opposition and practice.
A one-hour test you can run on any tool
Reviews and feature lists only go so far. The fairest comparison is to give every tool the same motion and the same tasks:
Pick a motion in your format that you know well, so you can judge the quality of the answers.
Ask each tool for a case on one side. Score it on structure and on whether the reasons it gives actually prove its points.
Ask each tool for the strongest argument against that case. Score whether it found the real weak point or a generic objection.
Paste one of your own past speeches and ask what it would change. Score how specific the feedback is.
Ask for evidence on one factual claim. Open every source and score how many check out.
Note how much context you had to repeat between steps.
Fifteen minutes per tool is enough to see the difference. Keep the scores; they are more useful than any ranking list, including this one.
Worked example: scoring answers to one motion
Motion: This house would make voting compulsory
Task: Find the weakest link in the proposition argument that compulsory voting produces a more representative government.
Strong answer: Points out that turnout and representation are different: compelled voters who know little about the candidates may vote randomly or for the first name on the ballot, so higher turnout may not mean preferences are better represented.
Weak answer: Says compulsory voting violates freedom. That is an opposition argument, not an attack on the proposition's link, and it does not engage with representation at all.
How to score it: Give the point only if the tool attacked the reason behind the claim (why more voters means better representation) rather than changing the subject.
Running the same task through several tools shows quickly which ones understand debate structure and which ones produce plausible but generic text.
Which tools fit which format
World Schools (WSDC)
WSDC prep is team prep under time pressure, often for impromptu motions. Prioritise fast brainstorming and motion analysis, plus a way to practise Points of Information. Few tools model the full WSDC round, so expect to time speeches yourself.
British Parliamentary (BP)
BP rewards role knowledge and extensions. Look for tools that let you set the format and your team position, and that can show you what the opening half is likely to say so closing teams can plan something new.
Public Forum (PF)
PF depends on evidence and on keeping summary and final focus consistent. Strong source handling matters more here than in most formats, along with practice rounds that use real PF speech times.
Lincoln-Douglas (LD)
LD needs tools that handle value and criterion, not just policy arguments. Test whether a tool can defend a value and criterion (the framework the judge decides by) and tie each argument back to it, and whether it can practise the time-pressured 1AR.
Where DebateOwl fits
DebateOwl is a dedicated debate platform that keeps every case, source, round and debrief inside one Current Debate. It covers case generation with "If they say…" answers to the other side, Library sources that ground its answers, Attack for finding weak links, Brainstorm, Factoids for checking claims, an Ask coaching chat with optional citations, Crossfire and full Sparring rounds with a verdict, a speech timer and an argument flowchart.
Its limits are worth stating plainly. Sparring currently runs School 4-6-6-3, Lincoln-Douglas and Public Forum rounds, so WSDC and BP practice uses the prep and coaching tools rather than a full simulated round. Like every AI tool, its evidence leads need checking against the original source. Run the one-hour test above and decide on your own results.
Frequently asked questions
What is the best AI tool for debate?
It depends on the job. General chatbots are flexible for brainstorming, research tools find sources, and dedicated debate platforms add structure, opponents and practice. Most debaters do best with a dedicated platform plus a way to verify sources.
Is a general chatbot good enough for debate prep?
For brainstorming and explaining concepts, often yes. It is weaker at keeping a motion, side and format in context, predicting the opposing case, timing speeches and giving round-style feedback.
Are free AI debate tools enough?
Free tiers are a good way to run the comparison test. Check the daily or monthly limits against how many practice sessions you plan before a tournament.
Can I use AI tools during a debate round?
Usually not. Most leagues restrict or ban internet access and electronic help during rounds. Check your league's rules, and use AI tools for preparation.
What are the alternatives to DebateOwl?
General chatbots, AI research assistants, other dedicated debate platforms, and simple practice utilities such as timers and flowing templates. Run the one-hour test above on DebateOwl and on each alternative you are considering.
How should I compare AI debate tools fairly?
Give every tool the same motion and the same tasks, such as a case, the strongest counter, feedback on your speech and evidence for one claim, then score each answer against the same criteria.
As of October 2026, DebateOwl has a 3-day free trial with no credit card required, then Pro costs $5/month + tax. There is no permanent free plan. Whether Pro is worth it depends on how often you prepare: if you debate every week or have a tournament coming, it covers heavy prep weeks with higher daily limits and all 10 models. If you need help only occasionally and want to stay free, a general chatbot's free tier or a free practice tool will suit you better.
Trial: $0 for 3 days
All 8 prep modes plus Library, Debate timer and History, with starter AI prep access and starter models. No credit card required to start.
Pro: $5/month + tax
Expanded AI prep access, all 10 models, Active Grounding research and priority support.
No permanent free plan
When the trial ends, a Pro subscription is required to keep using DebateOwl. You can cancel any time.
diff --git a/public/debateowl-vs-chatgpt/index.html b/public/debateowl-vs-chatgpt/index.html
index 55b133a8..b2518184 100644
--- a/public/debateowl-vs-chatgpt/index.html
+++ b/public/debateowl-vs-chatgpt/index.html
@@ -30,7 +30,7 @@
-
+
diff --git a/public/debateowl-vs-debateclub/index.html b/public/debateowl-vs-debateclub/index.html
index c5c2ea37..fb1029ee 100644
--- a/public/debateowl-vs-debateclub/index.html
+++ b/public/debateowl-vs-debateclub/index.html
@@ -30,7 +30,7 @@
-
+
diff --git a/public/debateowl-vs-windebate/index.html b/public/debateowl-vs-windebate/index.html
index d7ce7f4d..0bd3754c 100644
--- a/public/debateowl-vs-windebate/index.html
+++ b/public/debateowl-vs-windebate/index.html
@@ -30,7 +30,7 @@
-
+
diff --git a/public/llms.txt b/public/llms.txt
index 7d4bcce4..1288e700 100644
--- a/public/llms.txt
+++ b/public/llms.txt
@@ -8,9 +8,12 @@ DebateOwl runs at https://debateowl.com/. It is a separate product from debatela
- Who it is for: students, competitive debaters and their coaches.
- 8 prep modes: Case generator, Brainstorm, Factoids, Flowchart, Case attacker, Ask coach, Crossfire and Sparring. Plus 3 utilities: Library, Debate timer and History.
+- Case format: A DebateOwl case is written the way school debaters prepare: an opening, two to four arguments each with an explanation, evidence and why it matters, "If they say… we answer…" replies, a closing line and the sources it used.
+- Second speech (R2): no new arguments; about two minutes reinforcing our arguments, then about four minutes of "If they say X, we answer Y" replies.
- Practice: Sparring runs timed rounds against an AI opponent in School 4-6-6-3, Lincoln-Douglas and Public Forum and ends with a judged verdict. Crossfire drills cross-examination.
- Languages: English, Spanish and Hungarian.
- Pricing: As of October 2026, DebateOwl has a 3-day free trial with no credit card required, then Pro costs $5/month + tax. There is no permanent free plan.
+- Free plan: The DebateOwl app has no free plan (3-day free trial, then $5/month); the separate tools at /tools are free with no account.
- Pro adds expanded AI prep access, all 10 models (including Claude Opus and Sonnet, GPT-6.1 Sol and Gemini), Active Grounding research and priority support.
- Privacy: cases, sources, practice rounds and history stay behind sign-in and are not indexed.
diff --git a/scripts/generate_seo_content.py b/scripts/generate_seo_content.py
index 95d9daf7..78b77638 100644
--- a/scripts/generate_seo_content.py
+++ b/scripts/generate_seo_content.py
@@ -25,6 +25,20 @@
FACTS_AS_OF = date.fromisoformat(SITE["factsCheckedOn"]).strftime("%B %Y")
DEFINITION = f'{PRODUCT} is {SITE["definition"]}.'
PRO_PRICE = f"${PRICING['proMonthly']}/month + tax"
+
+def site_sentence(key):
+ """A site.json sentence with {{product}}, {{trialDays}} and {{proMonthly}} filled in, as src/lib/seo/site-text.ts does."""
+ values = {"product": PRODUCT, "trialDays": str(PRICING["trialDays"]), "proMonthly": PRICING["proMonthly"]}
+ return re.sub(r"\{\{(\w+)\}\}", lambda match: values[match.group(1)], SITE[key])
+
+# What a generated case contains, and the app-versus-free-tools pricing fact, as the home page states them.
+CASE_FORMAT = site_sentence("caseFormat")
+FREE_PLAN = site_sentence("freePlan")
+# The SoftwareApplication description, the same as SOFTWARE_DESCRIPTION in src/lib/seo/pages.ts.
+SOFTWARE_DESCRIPTION = f'{SITE["tagline"]} {CASE_FORMAT}'
+if len(SOFTWARE_DESCRIPTION) > 300:
+ raise SystemExit(f"The SoftwareApplication description has {len(SOFTWARE_DESCRIPTION)} characters; keep it to 300")
+EXPORT_FEATURE = "Google Docs and PDF export in the case format"
# One line every guide, llms.txt and the pricing page share.
PLAN_FACTS = (
f"As of {FACTS_AS_OF}, {PRODUCT} has a {PRICING['trialDays']}-day free trial with no credit card required, "
@@ -311,14 +325,14 @@ def check_link_tables():
"@id": SOFTWARE_ID,
"name": PRODUCT,
"alternateName": SITE["alternateName"],
- "description": DEFINITION,
+ "description": SOFTWARE_DESCRIPTION,
"applicationCategory": "EducationalApplication",
"operatingSystem": "Web",
"url": BASE + "/",
"inLanguage": ["en", "es", "hu"],
- "featureList": [EN["features"][key] for key in PREP_MODES + UTILITIES],
+ "featureList": [EN["features"][key] for key in PREP_MODES + UTILITIES] + [EXPORT_FEATURE],
"offers": [
- {"@type": "Offer", "name": "Free trial", "price": "0", "priceCurrency": PRICING["currency"], "description": f"{PRICING['trialDays']}-day free trial, no credit card required."},
+ {"@type": "Offer", "name": "Free trial", "price": "0", "priceCurrency": PRICING["currency"], "description": f"{PRICING['trialDays']}-day free trial, no credit card required. {FREE_PLAN}"},
{"@type": "Offer", "name": "Pro", "price": PRICING["proMonthly"], "priceCurrency": PRICING["currency"], "description": "Monthly subscription, billed plus tax.", "priceSpecification": {"@type": "UnitPriceSpecification", "price": PRICING["proMonthly"], "priceCurrency": PRICING["currency"], "billingDuration": "P1M", "valueAddedTaxIncluded": False}},
],
"publisher": {"@id": BASE + "/#organization"},
@@ -611,9 +625,12 @@ def llms_txt():
- Who it is for: students, competitive debaters and their coaches.
- {len(PREP_MODES)} prep modes: {names(PREP_MODES)}. Plus {len(UTILITIES)} utilities: {names(UTILITIES)}.
+- Case format: {CASE_FORMAT}
+- {SITE["secondSpeech"]}
- Practice: Sparring runs timed rounds against an AI opponent in School 4-6-6-3, Lincoln-Douglas and Public Forum and ends with a judged verdict. Crossfire drills cross-examination.
- Languages: English, Spanish and Hungarian.
- Pricing: {PLAN_FACTS}
+- Free plan: {FREE_PLAN}
- Pro adds expanded AI prep access, all 10 models (including Claude Opus and Sonnet, GPT-6.1 Sol and Gemini), Active Grounding research and priority support.
- Privacy: cases, sources, practice rounds and history stay behind sign-in and are not indexed.
diff --git a/scripts/seo_guides.py b/scripts/seo_guides.py
index ecb30506..a5e97eab 100644
--- a/scripts/seo_guides.py
+++ b/scripts/seo_guides.py
@@ -114,9 +114,9 @@
("Five coaching conversations worth having before a tournament", [
{"steps": [
"Burden check: ask what each side has to prove for the motion to stand or fall, and where the line between them sits. Many rounds are lost on a burden nobody named.",
- "Clash map: ask for the three places where the cases will meet. Plan your speeches around those, not around your own contentions.",
+ "Clash map: ask for the three places where the cases will meet. Plan your speeches around those, not around your own arguments.",
"Weighing rehearsal: give the coach your impact and the likely opposing impact and ask for the comparison in two sentences. Repeat until you can say it without notes.",
- "Speech audit: paste a practice speech and ask which claim had no warrant, which point ran too long, and what a judge would remember from it.",
+ "Speech audit: paste a practice speech and ask which point never said why it is true, which point ran too long, and what a judge would remember from it.",
"Opponent prediction: ask how a strong team on the other side would frame the debate, then ask what your first response to that framing should be.",
]},
]),
@@ -138,7 +138,7 @@
{"h3": "Public Forum (PF)"},
"Use coaching to plan the summary before the round. Ask which two issues you can realistically extend from constructive through final focus, and what the second rebuttal must frontline so those issues survive. Also ask for crossfire questions that set up your summary rather than score points.",
{"h3": "Lincoln-Douglas (LD)"},
- "LD coaching is often framework coaching. Ask the coach whether your criterion actually measures your value, how your contentions link back to the criterion, and when it is safer to concede the opponent's framework and show that you win under it anyway.",
+ "In LD, much of the coaching is about how the judge should decide the round: your value and criterion. Ask the coach whether your criterion actually measures your value, how each argument ties back to the criterion, and when it is safer to accept the opponent's value and criterion (their framework) and show that you win under them anyway.",
]),
("Getting answers with sources", [
"When a coaching answer depends on facts, turn on Citations in Ask. The coach then answers with sources you can open. Treat those as leads: read the original, confirm it says what the answer claims, and only then use it in a speech. Adding your own trusted articles to the Library has the same effect from the other direction, because active sources that fit the question are used in its answers for that debate.",
@@ -268,13 +268,13 @@
{"h3": "Research and citation tools"},
"AI search and research assistants are strongest at finding sources quickly. They help with evidence but not with turning evidence into arguments, rebuttals or speeches.",
{"h3": "Dedicated debate platforms"},
- "These are built around debate concepts: cases with contentions, rebuttals, opponents and verdicts. They vary a great deal in which formats they model and whether they let you practise or only generate text.",
+ "These are built around debate concepts: cases with arguments, rebuttals, opponents and verdicts. They vary a great deal in which formats they model and whether they let you practise or only generate text.",
{"h3": "Practice utilities"},
"Timers, flowing templates and argument maps. Often simple, sometimes not AI-based at all, and still essential for practice that matches tournament conditions.",
]),
("Eight criteria for comparing AI debate tools", [
{"steps": [
- "Structure: does the output separate claim, warrant and impact, or is it a wall of text?",
+ "Structure: does each argument say what is true, why, and why it matters, or is it a wall of text?",
"Format awareness: does it know your speech order, times and roles, or treat every debate as an essay?",
"Sources: can you see where a claim comes from, and can you add your own material for it to use?",
"Opposition: does it predict and argue the other side, or only help with yours?",
@@ -289,7 +289,7 @@
"Reviews and feature lists only go so far. The fairest comparison is to give every tool the same motion and the same tasks:",
{"steps": [
"Pick a motion in your format that you know well, so you can judge the quality of the answers.",
- "Ask each tool for a case on one side. Score it on structure and on whether the warrants actually prove the claims.",
+ "Ask each tool for a case on one side. Score it on structure and on whether the reasons it gives actually prove its points.",
"Ask each tool for the strongest argument against that case. Score whether it found the real weak point or a generic objection.",
"Paste one of your own past speeches and ask what it would change. Score how specific the feedback is.",
"Ask for evidence on one factual claim. Open every source and score how many check out.",
@@ -302,7 +302,7 @@
("Task:", "Find the weakest link in the proposition argument that compulsory voting produces a more representative government."),
("Strong answer:", "Points out that turnout and representation are different: compelled voters who know little about the candidates may vote randomly or for the first name on the ballot, so higher turnout may not mean preferences are better represented."),
("Weak answer:", "Says compulsory voting violates freedom. That is an opposition argument, not an attack on the proposition's link, and it does not engage with representation at all."),
- ("How to score it:", "Give the point only if the tool attacked the warrant (why more voters means better representation) rather than changing the subject."),
+ ("How to score it:", "Give the point only if the tool attacked the reason behind the claim (why more voters means better representation) rather than changing the subject."),
]}},
"Running the same task through several tools shows quickly which ones understand debate structure and which ones produce plausible but generic text.",
]),
@@ -314,7 +314,7 @@
{"h3": "Public Forum (PF)"},
"PF depends on evidence and on keeping summary and final focus consistent. Strong source handling matters more here than in most formats, along with practice rounds that use real PF speech times.",
{"h3": "Lincoln-Douglas (LD)"},
- "LD needs tools that handle value and criterion, not just policy arguments. Test whether a tool can defend a framework and link contentions to it, and whether it can practise the time-pressured 1AR.",
+ "LD needs tools that handle value and criterion, not just policy arguments. Test whether a tool can defend a value and criterion (the framework the judge decides by) and tie each argument back to it, and whether it can practise the time-pressured 1AR.",
]),
("Where {product} fits", [
"{product} is a dedicated debate platform that keeps every case, source, round and debrief inside one Current Debate. It covers case generation with \"If they say…\" answers to the other side, Library sources that ground its answers, Attack for finding weak links, Brainstorm, Factoids for checking claims, an Ask coaching chat with optional citations, Crossfire and full Sparring rounds with a verdict, a speech timer and an argument flowchart.",
@@ -525,7 +525,7 @@
{"list": [
"An overall assessment: a score out of 100, a short summary and what the argument does well, so you know which parts not to waste time on.",
"Weaknesses, usually three to six, each marked critical, major or minor and labelled as evidential, logical or structural.",
- "For each weakness: the quoted words, why the link is weak (missing warrant, no evidence, no link, non-unique, turned or outweighed), and a response to say in round.",
+ "For each weakness: the quoted words, why the link is weak (no reason it is true, no evidence, no link, not unique to their side, turned or outweighed), and a response to say in round.",
"Fallacies detected, with where they appear and how to call them out without sounding like a textbook.",
"Cross-examination questions, each tied to one weakness and written so that a short honest answer exposes the gap.",
"A weighing analysis: the weighing the argument relies on, the comparisons it never makes, and how to out-weigh it.",
@@ -536,14 +536,14 @@
{"h3": "Attack intensity"},
"Mild gives constructive criticism, useful when you are checking your own case. Moderate balances strengths and weaknesses. Ruthless looks hardest for anything a strong opponent could exploit, which is what you want when preparing against an opposing case.",
{"h3": "Judge paradigm"},
- "Logic-Heavy prioritises broken reasoning and missing warrants. Values-Focused looks at framework and principle, which suits Lincoln-Douglas and principled motions. Policy/Impact concentrates on links, probability and the size of impacts, which suits policy-style motions and Public Forum.",
+ "Logic-Heavy prioritises broken reasoning and points that never say why they are true. Values-Focused looks at principles and how the judge should decide, which suits Lincoln-Douglas and principled motions. Policy/Impact concentrates on links, probability and how big the harms and benefits are, which suits policy-style motions and Public Forum.",
{"h3": "Fallacies and weighing"},
"Both checks are on by default. Turn fallacy detection off when you only want substantive responses; keep weighing analysis on almost always, because unweighed rebuttal is the most common reason good responses do not win rounds.",
]),
("Worked example: one argument through Attack", [
{"example": {"title": "Motion: This house would tax sugary drinks", "rows": [
("Argument pasted:", "A sugar tax reduces consumption, because higher prices make people buy less. Lower consumption means less obesity, which saves lives and reduces the burden on public health systems."),
- ("Critical weakness, logical:", "Quoted: lower consumption means less obesity. The argument assumes people who buy fewer sugary drinks do not replace those calories with other foods. Without that warrant, the impact does not follow from the mechanism."),
+ ("Critical weakness, logical:", "Quoted: lower consumption means less obesity. The argument assumes people who buy fewer sugary drinks do not replace those calories with other foods. Without that step, the health benefit does not follow from the mechanism."),
("Response to say:", "Even if people buy fewer fizzy drinks, they can get the same sugar from sweets, juice and snacks that are not taxed. Cutting one source of calories is not the same as cutting calories."),
("Major weakness, evidential:", "Quoted: saves lives. The argument gives no estimate of how much consumption falls or how that translates into health outcomes, so the judge cannot weigh the size of the benefit."),
("Cross-ex question:", "If someone stops buying a sugary drink but buys a chocolate bar instead, has the tax reduced their sugar intake?"),
@@ -566,7 +566,7 @@
{"h3": "Public Forum (PF)"},
"Use Policy/Impact for most PF resolutions. Prepare the response and the cross-ex question together, because PF crossfire is where you get the opponent to commit to the assumption you attack in rebuttal.",
{"h3": "Lincoln-Douglas (LD)"},
- "Run Values-Focused on the negative case to find where its contentions fail to link to its own criterion. That gap often lets you win under their framework as well as yours.",
+ "Run Values-Focused on the negative case to find where its arguments fail to tie back to its own criterion. That gap often lets you win under their value and criterion as well as yours.",
{"h3": "World Schools and British Parliamentary"},
"Motions are often released shortly before the round, so use Attack in practice on likely arguments for motion areas you expect, and build a bank of responses to the reasoning that recurs across motions, such as slippery slopes, unproven behaviour change and ignored alternatives.",
]),
@@ -1289,7 +1289,7 @@
],
},
"debateowl-pricing": {
- "modified": "2026-10-23",
+ "modified": "2026-10-28",
"software": True,
"lead": "A 3-day free trial with no credit card, then one paid plan. Prices on this page were checked in October 2026.",
"features": [
diff --git a/src/components/landing/FAQ.tsx b/src/components/landing/FAQ.tsx
index 98591185..a7fbae0c 100644
--- a/src/components/landing/FAQ.tsx
+++ b/src/components/landing/FAQ.tsx
@@ -10,8 +10,10 @@ const FAQ = () => {
const faqs = [
{ question: t('faq.q6'), answer: t('faq.a6', { modes: PREP_MODE_COUNT }) },
+ { question: t('faq.q8'), answer: t('faq.a8') },
{ question: t('faq.q7'), answer: t('faq.a7') },
{ question: t('faq.q1'), answer: t('faq.a1', { asOf }) },
+ { question: t('faq.q9'), answer: t('faq.a9') },
{ question: t('faq.q2'), answer: t('faq.a2') },
{ question: t('faq.q3'), answer: t('faq.a3') },
{ question: t('faq.q4'), answer: t('faq.a4') },
diff --git a/src/components/landing/Hero.tsx b/src/components/landing/Hero.tsx
index d9afd04e..7fb4915f 100644
--- a/src/components/landing/Hero.tsx
+++ b/src/components/landing/Hero.tsx
@@ -78,27 +78,26 @@ const HeroPreview = () => {
const [mode, setMode] = React.useState("generate");
const motionText = t('hero.preview.topicValue');
- const samples: Record = {
+ // The generate sample shows a case in the sections Generate writes.
+ const caseRow = (key: string) => ({ label: t(`hero.preview.sampleCase.${key}Label`), text: t(`hero.preview.sampleCase.${key}`) });
+ const samples: Record }> = {
generate: {
- title: t('hero.preview.sampleCaseTitle'),
- firstLabel: t('hero.preview.sampleClaimLabel'),
- first: t('hero.preview.sampleClaim'),
- secondLabel: t('hero.preview.sampleEvidenceLabel'),
- second: t('hero.preview.sampleEvidence'),
+ title: t('hero.preview.sampleCase.title'),
+ rows: ['opening', 'argument', 'evidence', 'ifTheySay', 'closing'].map(caseRow),
},
crossfire: {
title: t('hero.preview.sampleCrossfireTitle'),
- firstLabel: t('hero.preview.sampleQuestionLabel'),
- first: t('hero.preview.sampleQuestion'),
- secondLabel: t('hero.preview.sampleAnswerLabel'),
- second: t('hero.preview.sampleAnswer'),
+ rows: [
+ { label: t('hero.preview.sampleQuestionLabel'), text: t('hero.preview.sampleQuestion') },
+ { label: t('hero.preview.sampleAnswerLabel'), text: t('hero.preview.sampleAnswer') },
+ ],
},
sparring: {
title: t('hero.preview.sampleSparringTitle'),
- firstLabel: t('hero.preview.sampleOpeningLabel'),
- first: t('hero.preview.sampleOpening'),
- secondLabel: t('hero.preview.sampleResponseLabel'),
- second: t('hero.preview.sampleResponse'),
+ rows: [
+ { label: t('hero.preview.sampleOpeningLabel'), text: t('hero.preview.sampleOpening') },
+ { label: t('hero.preview.sampleResponseLabel'), text: t('hero.preview.sampleResponse') },
+ ],
},
};
const sample = samples[mode];
@@ -112,7 +111,7 @@ const HeroPreview = () => {
{/* The owl points the visitor at the product. */}
-
+
{/* Browser chrome */}
@@ -123,7 +122,8 @@ const HeroPreview = () => {
-
+ {/* Stacked: the case sample needs the full width for its five sections. */}
+
diff --git a/src/config/site.json b/src/config/site.json
index 47d0e2d4..c742fbf9 100644
--- a/src/config/site.json
+++ b/src/config/site.json
@@ -27,6 +27,10 @@
},
"factsCheckedOn": "2026-10-20",
"definition": "an AI debate prep and practice app for students and competitive debaters that builds structured cases, finds the weak points in arguments, researches evidence with citations and runs timed practice rounds against an AI opponent",
+ "tagline": "An AI debate prep and practice app for students and competitive debaters.",
+ "caseFormat": "A {{product}} case is written the way school debaters prepare: an opening, two to four arguments each with an explanation, evidence and why it matters, \"If they say… we answer…\" replies, a closing line and the sources it used.",
+ "secondSpeech": "Second speech (R2): no new arguments; about two minutes reinforcing our arguments, then about four minutes of \"If they say X, we answer Y\" replies.",
+ "freePlan": "The {{product}} app has no free plan ({{trialDays}}-day free trial, then ${{proMonthly}}/month); the separate tools at /tools are free with no account.",
"pricing": {
"currency": "USD",
"trialDays": 3,
diff --git a/src/i18n.ts b/src/i18n.ts
index 2b832338..59dd28fe 100644
--- a/src/i18n.ts
+++ b/src/i18n.ts
@@ -3,6 +3,7 @@ import { initReactI18next } from 'react-i18next';
import en from './locales/en.json';
import toolsEn from './locales/tools/en.json';
import site from './config/site.json';
+import { CASE_FORMAT, FREE_PLAN } from './lib/seo/site-text';
import { type AppLanguage } from './lib/languages';
type Catalogs = [{ default: object }, { default: object }];
@@ -25,7 +26,8 @@ void i18n.use(initReactI18next).init({
lng: 'en',
fallbackLng: 'en',
// Every string can name the product with {{product}}, {{brand}} and {{host}},
- // and state the trial length and price with {{trialDays}} and {{proMonthly}},
+ // state the trial length and price with {{trialDays}} and {{proMonthly}}, and
+ // quote the English case format and plan sentences as {{caseFormat}} and {{freePlan}},
// all from site.json, so every language states the same facts as the English pages.
interpolation: {
escapeValue: false,
@@ -35,6 +37,8 @@ void i18n.use(initReactI18next).init({
host: new URL(site.origin).host,
trialDays: site.pricing.trialDays,
proMonthly: site.pricing.proMonthly,
+ caseFormat: CASE_FORMAT,
+ freePlan: FREE_PLAN,
},
},
});
diff --git a/src/lib/seo/pages.ts b/src/lib/seo/pages.ts
index eafd0f3d..514c4b4f 100644
--- a/src/lib/seo/pages.ts
+++ b/src/lib/seo/pages.ts
@@ -1,5 +1,6 @@
import site from '@/config/site.json';
import { englishHead, type PageHeadId } from './head-text';
+import { CASE_FORMAT } from './site-text';
import { TOOL_PAGE_HEAD_IDS, TOOL_PAGE_HEADS } from './tool-pages';
/** Brand and domain strings live in src/config/site.json; nothing else should hardcode them. */
@@ -27,9 +28,9 @@ export function organizationNode() {
sameAs,
};
}
-/** "DebateOwl is an AI debate prep and practice app for …", the sentence agents quote. */
-export const DEFINITION = `${PRODUCT} is ${site.definition}.`;
export const PRICING = site.pricing;
+/** The SoftwareApplication description: what it is, then what a case contains. The guides' copy in generate_seo_content.py matches. */
+export const SOFTWARE_DESCRIPTION = `${site.tagline} ${CASE_FORMAT}`;
/** The month prices and plan facts were last checked, as "October 2026" in the given language. */
export function factsAsOf(language: string): string {
diff --git a/src/lib/seo/site-text.ts b/src/lib/seo/site-text.ts
new file mode 100644
index 00000000..56d9ccc2
--- /dev/null
+++ b/src/lib/seo/site-text.ts
@@ -0,0 +1,18 @@
+import site from '@/config/site.json';
+
+const NAMES: Record = {
+ product: site.product,
+ trialDays: String(site.pricing.trialDays),
+ proMonthly: site.pricing.proMonthly,
+};
+
+/** A site.json sentence with its {{product}}, {{trialDays}} and {{proMonthly}} filled in. */
+function fillSite(text: string): string {
+ return text.replace(/\{\{(\w+)\}\}/g, (token, name: string) => NAMES[name] ?? token);
+}
+
+/** What a generated case contains, in one sentence: the homepage FAQ, JSON-LD and llms.txt all quote it. */
+export const CASE_FORMAT = fillSite(site.caseFormat);
+
+/** The app has no free plan; the /tools pages are free. Both facts in one sentence, so answers do not mix them up. */
+export const FREE_PLAN = fillSite(site.freePlan);
diff --git a/src/locales/en.json b/src/locales/en.json
index a440db58..158a0e76 100644
--- a/src/locales/en.json
+++ b/src/locales/en.json
@@ -910,11 +910,19 @@
"modeGenerate": "Generate",
"modeCrossfire": "Crossfire",
"modeSparring": "Sparring",
- "sampleCaseTitle": "Case outline",
- "sampleClaimLabel": "Claim",
- "sampleClaim": "Banning phones during class protects uninterrupted learning.",
- "sampleEvidenceLabel": "Evidence cue",
- "sampleEvidence": "Compare time on task with the cost of enforcement.",
+ "sampleCase": {
+ "title": "Ready-to-read case",
+ "openingLabel": "Opening",
+ "opening": "Two arguments show phones belong outside class.",
+ "argumentLabel": "Argument",
+ "argument": "Notifications break concentration.",
+ "evidenceLabel": "Evidence",
+ "evidence": "A refocus-time study, with source and year.",
+ "ifTheySayLabel": "If they say…",
+ "ifTheySay": "\"Emergencies!\" We answer: the office can call home.",
+ "closingLabel": "Closing",
+ "closing": "No phones, lessons students hear."
+ },
"sampleCrossfireTitle": "Crossfire exchange",
"sampleQuestionLabel": "Question",
"sampleQuestion": "What changes after the ban?",
@@ -930,7 +938,7 @@
"features": {
"title": "Everything you need to win",
"generate": "Case generator",
- "generateDesc": "Full cases with evidence.",
+ "generateDesc": "Opening, arguments with evidence, \"If they say…\" replies, closing.",
"attack": "Case attacker",
"attackDesc": "Find the weak points first.",
"brainstorm": "Brainstorm",
@@ -957,7 +965,7 @@
"step1Title": "Research",
"step1Desc": "AI gathers cited sources for your motion.",
"step2Title": "Generate",
- "step2Desc": "Get arguments, evidence and counters.",
+ "step2Desc": "Get an opening, arguments with evidence, \"If they say…\" replies and a closing line.",
"step3Title": "Practice",
"step3Desc": "Drill with a coach, timer and sparring."
},
@@ -998,7 +1006,11 @@
"q6": "What is DebateOwl?",
"a6": "DebateOwl is an AI debate prep and practice app for students and competitive debaters. It has {{modes}} prep modes, including a case generator, a case attacker, evidence research with citations, an AI coach, Crossfire and timed Sparring rounds against an AI opponent, and it is available in English, Spanish and Hungarian.",
"q7": "Is {{product}} the same as debatelab.ai?",
- "a7": "No. {{brand}} is a separate product at {{host}}."
+ "a7": "No. {{brand}} is a separate product at {{host}}.",
+ "q8": "What does a {{product}} case include?",
+ "a8": "{{caseFormat}}",
+ "q9": "Is {{product}} free?",
+ "a9": "{{freePlan}}"
},
"guideHub": {
"title": "Debate guides and free tools",
diff --git a/src/locales/es.json b/src/locales/es.json
index dc9896c4..b07b30ef 100644
--- a/src/locales/es.json
+++ b/src/locales/es.json
@@ -910,11 +910,19 @@
"modeGenerate": "Generar",
"modeCrossfire": "Interrogatorio",
"modeSparring": "Sparring",
- "sampleCaseTitle": "Esquema del caso",
- "sampleClaimLabel": "Afirmación",
- "sampleClaim": "Prohibir los teléfonos durante la clase protege el tiempo de aprendizaje sin interrupciones.",
- "sampleEvidenceLabel": "Pista de evidencia",
- "sampleEvidence": "Compara el tiempo de atención con el coste de hacer cumplir la regla.",
+ "sampleCase": {
+ "title": "Caso listo para leer",
+ "openingLabel": "Apertura",
+ "opening": "Dos argumentos: el móvil, fuera del aula.",
+ "argumentLabel": "Argumento",
+ "argument": "Las notificaciones rompen la concentración.",
+ "evidenceLabel": "Evidencia",
+ "evidence": "Un estudio sobre reconcentrarse, con fuente y año.",
+ "ifTheySayLabel": "Si dicen…",
+ "ifTheySay": "«¡Emergencias!». Respondemos: el colegio llama a casa.",
+ "closingLabel": "Cierre",
+ "closing": "Sin móviles, clases que se escuchan."
+ },
"sampleCrossfireTitle": "Intercambio de interrogatorio",
"sampleQuestionLabel": "Pregunta",
"sampleQuestion": "¿Qué cambia después de la prohibición?",
@@ -930,7 +938,7 @@
"features": {
"title": "Todo lo que necesitas para ganar",
"generate": "Generador de casos",
- "generateDesc": "Casos completos con evidencia.",
+ "generateDesc": "Apertura, argumentos con evidencia, respuestas «Si dicen…», cierre.",
"attack": "Atacante de casos",
"attackDesc": "Encuentra antes los puntos débiles.",
"brainstorm": "Lluvia de ideas",
@@ -957,7 +965,7 @@
"step1Title": "Investigar",
"step1Desc": "La IA reúne fuentes citadas para tu moción.",
"step2Title": "Generar",
- "step2Desc": "Obtén argumentos, evidencia y réplicas.",
+ "step2Desc": "Obtén una apertura, argumentos con evidencia, respuestas «Si dicen…» y una frase de cierre.",
"step3Title": "Practicar",
"step3Desc": "Practica con coach, cronómetro y sparring."
},
@@ -998,7 +1006,11 @@
"q6": "¿Qué es DebateOwl?",
"a6": "DebateOwl es una app de preparación y práctica de debate con IA para estudiantes y debatientes de competición. Tiene {{modes}} modos de preparación, entre ellos un generador de casos, un atacante de casos, investigación de evidencia con citas, un coach de IA, Interrogatorio y rondas de Sparring cronometradas contra un oponente de IA, y está disponible en inglés, español y húngaro.",
"q7": "¿{{product}} es lo mismo que debatelab.ai?",
- "a7": "No. {{brand}} es un producto distinto, en {{host}}."
+ "a7": "No. {{brand}} es un producto distinto, en {{host}}.",
+ "q8": "¿Qué incluye un caso de {{product}}?",
+ "a8": "Un caso de {{product}} se escribe como lo preparan los debatientes escolares: una apertura, de dos a cuatro argumentos, cada uno con explicación, evidencia y por qué importa, respuestas «Si dicen… respondemos…», una frase de cierre y las fuentes que usó.",
+ "q9": "¿{{product}} es gratis?",
+ "a9": "La app {{product}} no tiene plan gratuito (prueba gratis de {{trialDays}} días y después ${{proMonthly}}/mes); las herramientas aparte de /es/tools son gratis y no piden cuenta."
},
"guideHub": {
"title": "Guías de debate y herramientas gratis",
diff --git a/src/locales/hu.json b/src/locales/hu.json
index c2eb3385..6e0bfbcc 100644
--- a/src/locales/hu.json
+++ b/src/locales/hu.json
@@ -910,11 +910,19 @@
"modeGenerate": "Generálás",
"modeCrossfire": "Keresztkérdezés",
"modeSparring": "Vitapárbaj",
- "sampleCaseTitle": "Esetvázlat",
- "sampleClaimLabel": "Állítás",
- "sampleClaim": "A telefonok tanórán való betiltása védi a megszakítás nélküli tanulást.",
- "sampleEvidenceLabel": "Bizonyítéki támpont",
- "sampleEvidence": "Hasonlítsd össze a feladatra fordított időt a szabály betartatásának költségével.",
+ "sampleCase": {
+ "title": "Felolvasható eset",
+ "openingLabel": "Nyitás",
+ "opening": "Két érv: a telefon helye az órán kívül van.",
+ "argumentLabel": "Érv",
+ "argument": "Az értesítések megtörik a figyelmet.",
+ "evidenceLabel": "Bizonyíték",
+ "evidence": "Kutatás az újrafókuszálásról, forrással, évszámmal.",
+ "ifTheySayLabel": "Ha azt mondják…",
+ "ifTheySay": "„Vészhelyzet!” Válaszunk: a titkárság hazatelefonál.",
+ "closingLabel": "Zárás",
+ "closing": "Telefon nélkül figyelnek a diákok."
+ },
"sampleCrossfireTitle": "Keresztkérdezési párbeszéd",
"sampleQuestionLabel": "Kérdés",
"sampleQuestion": "Mi változik a tiltás után?",
@@ -930,7 +938,7 @@
"features": {
"title": "Minden, ami a győzelemhez kell",
"generate": "Esetgenerátor",
- "generateDesc": "Teljes esetek bizonyítékokkal.",
+ "generateDesc": "Nyitás, érvek bizonyítékkal, „Ha azt mondják…” válaszok, zárás.",
"attack": "Esettámadó",
"attackDesc": "Találd meg előbb a gyenge pontokat.",
"brainstorm": "Ötletelés",
@@ -957,7 +965,7 @@
"step1Title": "Kutatás",
"step1Desc": "Az MI hivatkozott forrásokat gyűjt az indítványodhoz.",
"step2Title": "Generálás",
- "step2Desc": "Érvek, bizonyítékok és ellenérvek.",
+ "step2Desc": "Nyitás, érvek bizonyítékkal, „Ha azt mondják…” válaszok és zárómondat.",
"step3Title": "Gyakorlás",
"step3Desc": "Gyakorolj edzővel, időmérővel és vitapárbajjal."
},
@@ -998,7 +1006,11 @@
"q6": "Mi az a DebateOwl?",
"a6": "A DebateOwl egy MI-alapú vitafelkészítő és gyakorló alkalmazás diákoknak és versenyvitázóknak. {{modes}} felkészülési módja van, köztük esetgenerátor, esettámadó, hivatkozásokkal támogatott bizonyítékkutatás, MI-edző, Keresztkérdezés és időzített Vitapárbaj-fordulók MI-ellenféllel, és angolul, spanyolul és magyarul is elérhető.",
"q7": "Ugyanaz a {{product}}, mint a debatelab.ai?",
- "a7": "Nem. A {{brand}} egy különálló termék, a {{host}} címen."
+ "a7": "Nem. A {{brand}} egy különálló termék, a {{host}} címen.",
+ "q8": "Mit tartalmaz egy {{product}} által írt eset?",
+ "a8": "A {{product}} úgy írja meg az esetet, ahogy az iskolai vitázók készülnek: nyitás, két–négy érv, mindegyik magyarázattal, bizonyítékkal és azzal, hogy miért fontos, „Ha azt mondják… erre azt feleljük…” válaszok, egy zárómondat és a felhasznált források.",
+ "q9": "Ingyenes a {{product}}?",
+ "a9": "A {{product}} alkalmazásnak nincs ingyenes csomagja ({{trialDays}} napos ingyenes próba, utána havi ${{proMonthly}}); a /hu/tools oldalon lévő külön eszközök ingyenesek, és fiók nélkül is használhatók."
},
"guideHub": {
"title": "Vitaútmutatók és ingyenes eszközök",
diff --git a/src/prerender/entry.tsx b/src/prerender/entry.tsx
index 55189c43..34d6632e 100644
--- a/src/prerender/entry.tsx
+++ b/src/prerender/entry.tsx
@@ -7,7 +7,8 @@ import i18n, { applyAppLanguage } from '@/i18n';
import { TooltipProvider } from '@/components/ui/tooltip';
import { AuthContext, type AuthContextValue } from '@/lib/supabase/auth-context';
import site from '@/config/site.json';
-import { DEFINITION, ORGANIZATION_ID, PAGE_HEAD_IDS, PAGE_HEADS, PRICING, PRODUCT, SITE_ORIGIN, factsAsOf, organizationNode, type PageHead, type PrerenderedRoute } from '@/lib/seo/pages';
+import { FREE_PLAN } from '@/lib/seo/site-text';
+import { SOFTWARE_DESCRIPTION, ORGANIZATION_ID, PAGE_HEAD_IDS, PAGE_HEADS, PRICING, PRODUCT, SITE_ORIGIN, factsAsOf, organizationNode, type PageHead, type PrerenderedRoute } from '@/lib/seo/pages';
import { HEAD_NAMES } from '@/lib/seo/head-text';
import { hreflangAlternates, isLocalizedRoute, LOCALIZED_PATHS, RouteLanguageProvider, type PageLanguage } from '@/lib/seo/localized-routes';
import { TOOL_PAGES as HU_TOOL_PAGES } from '@/pages/tools/localized/hu';
@@ -82,13 +83,17 @@ function landingQuestions(language: PageLanguage = 'en'): Array<[string, string]
return [
[i18n.t('shortAnswer.question'), i18n.t('shortAnswer.answer', { asOf })],
[i18n.t('faq.q6'), i18n.t('faq.a6', { modes: PREP_MODE_COUNT })],
+ [i18n.t('faq.q8'), i18n.t('faq.a8')],
[i18n.t('faq.q7'), i18n.t('faq.a7')],
[i18n.t('faq.q1'), i18n.t('faq.a1', { asOf })],
+ [i18n.t('faq.q9'), i18n.t('faq.a9')],
...[2, 3, 4, 5].map((n): [string, string] => [i18n.t(`faq.q${n}`), i18n.t(`faq.a${n}`)]),
];
}
const APP_TOOLS = [...PREPARE_TOOLS, ...PRACTICE_TOOLS, ...UTILITY_TOOLS];
+// Word, PDF and Google Docs exports lay a case out in the same sections the app shows.
+const EXPORT_FEATURE = 'Google Docs and PDF export in the case format';
function landingStructuredData(dateModified: string | undefined) {
return {
@@ -114,16 +119,16 @@ function landingStructuredData(dateModified: string | undefined) {
operatingSystem: 'Web',
url: `${SITE_ORIGIN}/`,
image: `${SITE_ORIGIN}/hero-visual.jpg?v=2`,
- description: DEFINITION,
+ description: SOFTWARE_DESCRIPTION,
inLanguage: ['en', 'es', 'hu'],
- featureList: APP_TOOLS.map((tool) => i18n.t(`features.${tool.key}`)),
+ featureList: [...APP_TOOLS.map((tool) => i18n.t(`features.${tool.key}`)), EXPORT_FEATURE],
offers: [
{
'@type': 'Offer',
name: 'Free trial',
price: '0',
priceCurrency: PRICING.currency,
- description: `${PRICING.trialDays}-day free trial, no credit card required.`,
+ description: `${PRICING.trialDays}-day free trial, no credit card required. ${FREE_PLAN}`,
},
{
'@type': 'Offer',