How to use Raider Quiz Builder
Four recipes for the most common workflows. Recipes 2 and 3 are the substantive ones — they teach you how to actually prompt AI for a quiz that matches what you taught, not a generic chatbot version of your subject.
Before you start · a note on Canvas imports
If you've never imported a quiz file into Canvas before, here's the basic mental model. You can skip this section if you already know your way around Canvas quiz imports.
- Canvas can import quizzes from a standard file format called QTI (a
.zipfile containing the quiz structure as XML). This isn't a third-party tool or an add-on — it's a built-in Canvas feature that every Canvas course has. - There are two ways in, and they produce different things. Which one you use depends on whether you want a New Quiz or a Classic quiz. Both are spelled out below. Neither needs admin permissions — any teacher with edit access to the course can do either.
- After importing, the quiz appears in your Quizzes page in Canvas. You can edit, preview, add to a module, and assign it the same way you would a quiz you wrote by hand.
So the full pipeline this tool is part of:
- You produce a Canvas QTI
.ziphere in Raider Quiz Builder (from a Word doc, an AI-generated file, or by hand). - You import that
.zipinto Canvas, through one of the two routes below. - The questions appear as a quiz in your course. Tweak settings, due dates, point values, or wording from there.
Route ANew Quizzes
The import drops questions into a quiz you already have open — so the first step is making an empty one.
- Make a blank New Quiz. Quizzes → + Quiz → New Quizzes → Save.
- Open the ⋮ menu at the top right of the Build page → Import Content.
- Drag the
.zipin, or Browse to it, then Import. - Watch the status bar, then preview the quiz before you publish it.
Items land in the quiz you currently have open. Start from a blank New Quiz, not one you've already built — the import adds to whatever is there. New Quizzes accepts QTI 1.2, which is the format this tool produces.
Route BClassic Quizzes
A course-level import. Nothing needs to exist first.
- In your course, Settings → Import Course Content (right sidebar).
- Content Type: QTI .zip file — not Common Cartridge.
- Choose your
.zip→ Import. - The quiz lands in your Quizzes list, and its questions in a question bank.
This route does not produce a New Quiz. Unless your Canvas admin has enabled New Quizzes Migration During Course Import/Copy, it gives you a Classic quiz plus a question bank. That's the right answer if you're using LockDown Browser's Classic workflow or you want a reusable question bank — and the wrong one if you were expecting a New Quiz. If you imported here and got something you didn't want, delete it and use Route A instead. The .zip is the same; only the door changes.
Things that convert differently between the two
- Feedback. Multiple-choice and true/false feedback works in both engines. Feedback on multiple-answer, essay, and file-upload questions renders in Classic only — New Quizzes drops it silently.
- Numerical tolerance. Margin-of-error answers (
= 3.142 +- 0.001) don't reliably survive the trip into New Quizzes. Use the range form (= [99, 101]) if that's where you're headed. - Random draws.
GROUPblocks become Canvas Question Groups, which is a Classic Quizzes construct — see Recipe 4.
Canvas's official documentation if you want the step-by-step with screenshots:
- How do I import a quiz from a QTI package in New Quizzes? — Route A
- How do I import quizzes from QTI packages? — Route B
- How do I import questions from a QTI package into an item bank? — for reusable banks in New Quizzes
- What quiz types can I create in a course? — Classic vs. New Quizzes overview, if you're new to Canvas quizzing
- How do I create a quiz with a question group to randomize quiz questions? — Canvas's documentation of Question Groups (which Raider Quiz Builder's GROUP blocks produce)
Recipe 1Convert a Word doc you already have
You have quiz questions already written somewhere — Word, PDF, a scanned test bank, a list in OneNote. You want them in Canvas without retyping anything. Which path you take depends on one question: is your file already marked up in the format — asterisks on the correct answers, questions numbered, choices lettered? If so, there's nothing to format — skip straight to converting.
Already in the format · just convert it
Best when your file already uses the markers — you wrote it that way, a colleague shared one, or an AI (like the Assistant in Recipe 2) produced it. There's no formatting step here; you're only converting and importing.
- Open Raider Quiz Builder and drop your file (
.docx,.txt, or.md) onto the page. - Read the validation results. Errors come with line numbers so you can locate them in your source file. Fix and re-drop, or proceed if the only flags are advisory notes.
- Click "Convert to Canvas quiz" and download the
.zip. - Import into Canvas. For a New Quiz: open a blank New Quiz, then Build → ⋮ → Import Content. For a Classic quiz: Settings → Import Course Content → QTI .zip file. Both routes are written out at the top of this page.
Not sure whether your file is formatted? Drop it in anyway — the validator tells you immediately. If it comes back with errors because the markers aren't there yet, use one of the two paths below to add them. The manual path includes an example of exactly what a formatted file should look like.
Not marked up yet · have AI convert it for you
Best for teachers who don't want to learn the marker syntax. The AI handles the format translation.
- Grab the For your AI file from the homepage Resources section.
- Open ChatGPT, Claude, Flint, or Gemini. Any AI that accepts file uploads will work.
- Upload both files — the "For your AI" file (the reference) and your Word doc (the source content).
- Ask the AI to convert it. Something like: "Please convert this Word doc into the Raider Quiz Builder format."
- Answer any clarifying questions. If your Word doc doesn't clearly mark correct answers (no asterisks, no answer key at the bottom), the AI will ask which letter is correct for each question. Provide an answer key or tell it inline.
- Download the converted file the AI produces.
- Drop the file into Raider Quiz Builder, click Convert to Canvas quiz, and download the
.zip. - Import into Canvas. For a New Quiz: open a blank New Quiz, then Build → ⋮ → Import Content. For a Classic quiz: Settings → Import Course Content → QTI .zip file. Both routes are written out at the top of this page.
The AI handles whatever format your Word doc uses — answer key at the bottom, inline (Answer: B) markers, bolded correct answers, table format, scanned-text exports. You don't need to learn any syntax. If you also want the AI to add more questions in the same style on top of converting, just ask — it'll convert what you have and then offer to expand.
Not marked up yet · format it by hand
Best for teachers who want full control, whose Word doc is close to the format already, or who prefer not to use AI. (If your file is fully marked up already, you don't need this section — use "Already in the format" above.)
- Open your Word doc. Each question on its own line, numbered
1.,2., etc. Answer choices on separate lines, lettereda),b),c),d). - Mark the correct answer. Put an asterisk directly before the letter of the correct answer.
c) Tokyobecomes*c) Tokyo. No space between the asterisk and the letter. - Save the doc as
.docx. - Open Raider Quiz Builder and drop the file onto the page.
- Read the validation results. Errors come with line numbers so you can locate them in your source file. Fix and re-drop, or proceed if the only flags are advisory notes.
- Click "Convert to Canvas quiz" and download the
.zip. - Import into Canvas. For a New Quiz: open a blank New Quiz, then Build → ⋮ → Import Content. For a Classic quiz: Settings → Import Course Content → QTI .zip file. Both routes are written out at the top of this page.
Example of how your Word doc should look
1. What is the capital of Japan?
a) Beijing
*b) Tokyo
c) Seoul
d) Bangkok
2. The largest ocean on Earth is the Pacific.
*a) True
b) False
Notes for the manual path:
- Word's AutoCorrect will mangle
+-(numerical tolerance) into±. Disable AutoCorrect or use a plain text editor for files with numerical answers. - Don't write questions inside a Word table — the converter reads tables as flat text. (The AI path handles tables fine; the manual path doesn't.)
- See the format reference for the full syntax of all 7 question types.
Recipe 2Have AI write the quiz from a unit summary
The fastest path: open the Raider Quiz Builder Assistant on ChatGPT. It's a custom GPT that walks you through the unit summary below conversationally and produces a ready-to-convert file at the end. Requires a ChatGPT for Teachers account.
If you use a different AI (Claude, Flint, Gemini), download For your AI and drop it into your AI of choice instead. Same result, more steps.
You have a topic in mind but no questions written yet. This is the recipe to spend time on. Generic AI prompts produce generic quizzes that miss what you actually taught, test the wrong misconceptions, and use vocabulary your students never heard. The cure is a unit summary: about five minutes of notes on what you actually taught — the same kind of thing you'd write up for a substitute covering your class — so the AI has enough context to match your classroom instead of the internet's version of your subject.
You'll need: five to ten minutes to put together a unit summary. The AI does the rest.
Step 1 · Write a unit summary
Pull together six pieces of context before you open the AI. The summary can live in a sticky note, an email draft, or a section of your unit plan — the AI doesn't care about formatting, just the substance.
- Scope. Not "the French Revolution" — "the French Revolution, causes through the storming of the Bastille (1770 to July 1789)." Tight scope = focused questions.
- Source materials. Which chapters, sections, readings, lectures, or labs did students actually engage with? "Chapter 18 sections 18.1–18.3 plus the Sieyès reading from Tuesday." This anchors the AI in the right body of knowledge.
- Key terms and concepts. The vocabulary and named ideas your unit emphasized. Five to fifteen items is plenty. "Three Estates, Estates-General, National Assembly, Tennis Court Oath, Cahiers de Doléances, fiscal crisis to political revolution." This is the single biggest quality lever — without it, the AI picks its own vocabulary, often less precise than yours.
- What's out of scope. "Don't include the Reign of Terror, Robespierre, or Napoleon — we cover those next week." Negative scope keeps the AI from drifting into adjacent material.
- Cognitive demand. What mix of thinking do you want? Be explicit. "Most questions should be recall and understanding. Two or three should require applying the causes-and-consequences framework. One should ask students to compare primary sources." Vague terms like "challenging" don't translate — name the cognitive moves.
- Common misconceptions or wrong answers you want tested. This is the secret weapon. "Students confuse the Estates-General with the National Assembly. Students often think the Bastille had hundreds of prisoners when it had seven. Students misattribute the Tennis Court Oath to the Bastille storming." Misconceptions become quality distractors — the wrong answers that make a multiple-choice question actually measure something.
Step 2 · Write the prompt
Open the Raider Quiz Builder Assistant (or paste the AI prompt into Claude, ChatGPT, or Flint) and write the prompt. Treat it like the notes you'd leave a substitute who has to teach the quiz for you.
A full worked example:
Build me a 20-question quiz on the French Revolution, scoped to causes through the storming of the Bastille (1770 to July 14, 1789).
Source materials students covered: Chapter 18 sections 18.1–18.3 of our textbook, plus an excerpt from Sieyès's "What Is the Third Estate?" read in class Tuesday.
Key terms and concepts to test: the three Estates, the Estates-General, the National Assembly, the Tennis Court Oath, the storming of the Bastille, the Cahiers de Doléances, the fiscal crisis (assignats and debt), and the cause-and-effect chain from fiscal crisis to political revolution.
Out of scope: the Reign of Terror, Robespierre, the Directory, Napoleon, and anything after July 1789.
Mix of cognitive demand: 12 questions at recall/understanding level (1 point each); 6 questions requiring application of cause-and-effect reasoning (2 points each); 2 short essay questions asking students to interpret a brief primary source quote (5 points each). Use 4 multiple-choice answer options per question.
For distractors, draw from these student misconceptions: (1) confusing the Estates-General with the National Assembly, (2) mistaking the Tennis Court Oath for the Bastille storming, (3) overestimating the number of prisoners freed at the Bastille (the real answer is 7), (4) attributing later revolutionary actions to the early 1789 period.
Quiz title: "Unit 6 — French Revolution: Causes Check". Description: "Covers sections 18.1–18.3 and the Sieyès reading. 30 minutes, closed-note."
That's the kind of prompt that produces a quiz worth giving.
Step 3 · Review the output critically
Before you convert, scan the AI's output. Three things to check:
- Factual accuracy. AI will confidently misstate dates, names, prisoner counts, and quotes. Verify anything specific against your curriculum materials. If you find one error, look harder — there are usually more.
- Curriculum match. If a question tests something you didn't cover, delete it or rewrite it. Don't be polite about this. A question that "could have been on the test" but wasn't covered is worse than no question.
- Distractor quality. A multiple-choice question is only as good as its wrong answers. If a distractor is obviously absurd ("the storming of the Bastille was caused by a sandwich shortage"), the question is too easy. If a distractor is too plausible without being wrong for a clear reason, it's unfair. Aim for distractors that catch the specific misconceptions you named.
Step 4 · Iterate
The AI revises on request. Specific is better than vague:
Question 7 is too easy — rewrite it to require distinguishing between the Tennis Court Oath and the National Assembly's earlier vote on June 17.
Question 12 has a factual error. Lafayette wasn't at the Bastille; it was led by an angry crowd including some defectors from the National Guard. Fix the question and adjust the distractors.
Add three more application questions that ask students to identify a cause given a primary-source quote.
Step 5 · Convert and import
Once the file looks right, download or copy it into a .txt file. It's already in the format, so follow Recipe 1's "Already in the format" path — drop it into Raider Quiz Builder, convert, and import to Canvas.
Recipe 3Expand a few existing questions into a full bank
You have three to five questions you wrote yourself. You'd like thirty.
This is Recipe 2 with a head start: your existing questions serve as the style and difficulty anchor. The same unit summary still matters — without it, the AI copies the form of your questions but drifts on substance.
Steps
- Write the same summary as Recipe 2 (scope, source materials, key terms, out-of-scope, cognitive mix, misconceptions). Even with example questions, the AI needs this context to stay aligned.
- Paste your existing questions as part of the prompt, along with the summary:
I have these 4 questions already. Build 26 more in the same style, difficulty, and tone, then return all 30 as one quiz file.
[paste your 4 questions here, exactly as you wrote them]
[then paste the unit summary from Recipe 2]
- Review the output as in Recipe 2. Pay extra attention to:
- Drift. Did the AI's new questions stay on topic, or did they wander into adjacent content? Cut anything off-target.
- Repetition. Thirty questions on a focused topic risks overlap. Watch for two questions that test essentially the same thing.
- Style consistency. Did the AI match your question structure (length, formality, level of student-facing scaffolding) or did it slip into a generic AI voice?
- Iterate. Same as Recipe 2 — ask for specific revisions, replacements, or additions.
- Convert and import.
Why this works better than "just make 27 more": your existing questions give the AI a stylistic target. The summary gives it a substantive target. Without both, you get 27 generic questions in the AI's default voice that may or may not match your unit.
Recipe 4Build a randomized exam from question pools
You want a quiz where each student sees a different random selection from named pools. For example: 9 random questions from a Recall pool of 25, plus 3 random from an Application pool of 10 — same exam structure for every student, different specific questions.
This is what GROUP blocks do in the file format. The format reference covers the syntax; this recipe is about how to think about the pool design.
A quick primer on cognitive demand
Before designing your pools, a quick note on why this matters. Most educational frameworks describe a spectrum of cognitive demand — from simple recall up through complex analysis:
- Bloom's Taxonomy (revised, 2001): Remember → Understand → Apply → Analyze → Evaluate → Create. The most widely-used framework in K-12 education.
- Webb's Depth of Knowledge (DOK): Levels 1–4 (Recall → Skill/Concept → Strategic Thinking → Extended Thinking). Common in standardized assessment design.
- The simple version: some questions test what students remember; others test how they apply, analyze, or build on that knowledge.
Why mixing cognitive levels in one exam matters:
- Fairness across student strengths. Some students excel at recall (they study terminology hard); others excel at application (they connect concepts but may struggle with vocabulary). An exam loaded entirely at one level systematically advantages one type of student over another. A mix gives every student a chance to show what they know.
- Valid measurement of understanding. A 30-question recall exam tells you students memorized definitions. It doesn't tell you whether they understand how concepts work together, or can apply them to new situations. If your goal is to measure understanding, you need questions at the application and analysis levels.
- Cognitive load and fatigue. Application and analysis questions take longer and use more mental energy than recall. An exam that's all application questions exhausts students before they finish — which produces worse scores even from students who know the material. Spreading higher-demand questions throughout, balanced with quicker recall items, lets students pace themselves.
Typical proportions depend on what you're testing. As rough starting points:
- Mid-chapter check or unit quiz: ~60% recall and understanding, ~30% application, ~10% analysis. Students just learned the material; emphasis on solid retention of foundations.
- Unit test: ~40% recall and understanding, ~40% application, ~20% analysis. Material is older; focus shifts toward whether students can use it.
- Final exam or AP-style assessment: ~20% recall, ~40% application, ~40% analysis and evaluation. The point is cumulative mastery, not memorization.
These are starting points, not rules. Adjust to match what you actually want to measure. For deeper reading on cognitive levels and example verbs for each, Vanderbilt's Center for Teaching has a clear overview of Bloom's Taxonomy.
Pool design patterns — what teachers actually use this for
GROUP blocks shine when you have natural categories in your unit. Some common patterns:
- Bloom's / cognitive demand pools. Recall pool, Application pool, Analysis pool. Drawing from each guarantees every student gets a balanced exam across thinking levels. Example: 9 random recall + 6 application + 2 analysis = a 17-question mid-chapter check where every student sees the same structure but different questions.
- One pool per text or source. Reading-based courses: questions about each poem, each primary document, each case study, each lab. Example: an English exam covering four poems uses four pools of ~10 questions each, drawing 2-3 from each pool.
- One pool per chapter or section. For unit finals or comprehensive exams. Each chapter gets a pool; the quiz draws a few from each chapter to guarantee coverage of all material.
- Skill pools. For math, languages, or any practice-driven course. Each discrete skill is its own pool: "factoring," "solving for X," "word problems," or "present tense," "past tense," "subjunctive." Mix-and-match to build different practice quizzes from the same source file.
- Easy / medium / hard pools within one topic. Easy, medium, and hard pools on the same content. Drawing some from each guarantees mixed difficulty regardless of luck of the draw.
- Source-based for primary documents. History and social studies exams over multiple primary sources. One pool per document; the random selection ensures every student engages with every source.
The shared pattern: pools become reusable, semantically-meaningful units — not just buckets. Pick the framing that matches how you already think about your unit.
Designing the pools
Each pool should be larger than what you draw from it. If you pick: 9 from a pool of 9, every student sees the same 9 questions — no randomization. Aim for at least 2x the pick number per pool. A pool of 20 for a pick of 9 gives meaningful variation.
Within a pool, questions should be interchangeable in difficulty and weight. All questions in a GROUP block must be worth the same points (per the format), and ideally they should also be at roughly the same difficulty — otherwise some students get a harder draw by chance. Don't mix a 30-second recall question with a 5-minute application problem in the same pool.
Pools should be cognitively coherent. "Recall" is a reasonable pool name. "Application" is a reasonable pool name. "Random stuff I want them to know" is not. Coherent pools make for fair stratification.
Steps using AI
- Write a unit summary as in Recipe 2.
- Add pool specifications to the summary:
Build a randomized exam from question pools on [topic]. Structure it as three pools:
Recall pool: 20 questions, each worth 1 point. Draws 9.
Application pool: 10 questions, each worth 2 points. Draws 3.
Analysis pool: 4 essay questions, each worth 5 points. Draws 1.Each student attempt sees a different random selection: 9 + 3 + 1 = 13 questions, worth 24 points total.
[full unit summary from Recipe 2 follows]
- Review pool by pool. When the AI returns the file, check each
GROUPblock independently:- Is the Recall pool actually all recall-level? Or did the AI sneak in application-level questions?
- Are the Application questions actually application, or are they slightly disguised recall?
- Do the analysis essay prompts open up genuine analysis, or do they fish for a memorized answer?
- Iterate by pool. Easier than iterating per-question: "Replace the three weakest questions in the Recall pool with stronger ones. Most should test specific terminology, not paraphrased general knowledge."
- Convert and import. On the Classic route, Canvas creates Question Groups inside the imported quiz that handle the randomization automatically — see How do I create a quiz with a question group to randomize quiz questions? On the New Quizzes route, open the imported quiz and confirm the draw actually came through before you rely on it — see the callout below.
Steps writing by hand
- Download the GROUP template as scaffolding.
- Write each
GROUPblock with your questions. Make surepick:≤ pool size, and ideally is closer to half. - Save, drop, convert, import.
Question Groups are a Classic Quizzes construct. They import cleanly through Route B (Settings → Import Course Content). If you import the same .zip into a New Quiz through Route A, open the quiz afterwards and check that the random draw is actually there.
If it isn't, you can still get the same result on the New Quizzes side: import the .zip into an item bank instead, then build the quiz with Add from Item Bank → Randomized, N questions. Same pools, same random draw, assembled in Canvas rather than in the file. This is also the better setup if you want pools you'll reuse across several quizzes this semester.
Common issues and how to fix them
"My questions aren't being recognized"
Cause: Almost always leading whitespace. Invisible spaces or tabs before 1., a), or *. The parser treats indented lines as continuations of the line above.
Fix: Open in a plain text editor (Notepad, TextEdit, VS Code). Look at the start of each line. Every marker must begin at column 1, no spaces before. Delete leading whitespace and re-drop.
"Smart quotes broke my file"
Cause: Word and Google Docs auto-replace " with “ ”. The converter normalizes most cases, but edge cases slip through.
Fix:
- Best: Turn off AutoCorrect in Word (File → Options → Proofing → AutoCorrect Options → uncheck "Straight quotes with smart quotes").
- Quick: Paste content through Notepad first, then back to Word.
- Easiest: Watch for "smart quotes normalized" notes after dropping — the validator usually catches them.
"My numerical tolerance broke"
Cause: Word auto-replaces +- with ± (the actual plus-minus symbol). The parser doesn't recognize ±.
Fix: Use plain text for numerical-heavy files, or disable Word's symbol AutoCorrect. The validator normalizes ± back to +-, but it's worth knowing.
"I wanted a New Quiz but got a Classic one"
Cause: You used Route B — Settings → Import Course Content. That's a course-level import, and unless your Canvas admin has enabled New Quizzes Migration During Course Import/Copy, it always produces a Classic quiz plus a question bank.
Fix: Delete what it created if you don't want it, then use Route A: make a blank New Quiz, then on its Build page, ⋮ → Import Content → drop in the same .zip. Nothing about your file needs to change.
"My random draw didn't survive the import"
Cause: GROUP blocks become Canvas Question Groups, a Classic Quizzes construct. They come through cleanly on Route B; on Route A they don't always.
Fix: Check the imported quiz first — if the group is there, you're fine. If it isn't, import the same .zip into an item bank instead, then build the quiz with Add from Item Bank → Randomized, N questions.
"My feedback disappeared"
Cause: You imported into New Quizzes, and the feedback was on a multiple-answer, essay, or file-upload question. Those render in Classic only — New Quizzes drops them without warning.
Fix: Nothing's wrong with your file. Either import through Route B for a Classic quiz, or accept that the feedback won't show and add it in Canvas by hand. Multiple-choice and true/false feedback works in both engines.
"Canvas import says the file isn't valid"
Cause: Either the file wasn't generated correctly, or it's being imported as the wrong content type.
Fix:
- On Route B: Settings → Import Course Content → Content Type must be "QTI .zip file" — not Common Cartridge or anything else. Canvas's official import guide walks through the steps with screenshots.
- On Route A there's no content-type picker — but you do need a quiz already open, since Import Content adds items to the quiz you're currently in.
- If all that's right and import still fails, try a sample file first. If samples import and yours doesn't, the issue is in your source.
"My multiple choice shows two correct answers"
Cause: Two answer lines marked with *, or you meant multi-answer.
Fix: Single-correct uses one * on one letter. Multi-correct uses [*] / [ ] instead of a) / b) style. See the format reference for examples.
"My short answer or numerical question won't convert"
Cause: You added feedback (... , + , or - ). Those question types don't support feedback in QTI — including any feedback line causes the export to fail.
Fix: Remove all feedback markers from numerical and short-answer questions. The validator flags them with line numbers.
"AI keeps producing factual errors"
Cause: Insufficient context, or AI confabulation on details it doesn't actually know.
Fix:
- Provide more source material in your prompt — paste a paragraph from the relevant chapter, or list specific facts you want included.
- Ask the AI to cite specific sources or chapter sections in its drafting, then verify those citations.
- Verify any specific name, date, number, or quote against your curriculum materials before publishing the quiz.
"AI quiz feels generic and off-topic"
Cause: You skipped or rushed the unit summary. The AI defaulted to generic Wikipedia-flavored content.
Fix: Go back to Recipe 2, write a real unit summary with key terms and out-of-scope items, and regenerate. The difference between a 30-second prompt and a 5-minute summary is night and day for output quality.
Still stuck?
The full format reference covers every syntax detail. Or open the AI Assistant, paste your file in, and ask it to identify what's wrong — it can usually spot formatting issues faster than you can.