document to Canvas QTI&CSV converter

Upload a CSV. Works with any question type. ExamParser takes every question row apart — number, stem, options, answer key — and writes it straight into Canvas, Moodle, Quizizz or Blackboard in the exact shape each one expects.

One-time plan price — no subscription No login required Files are never reused
~45s per 100 questions
~99% parse success

Convert a question CSV

From .csv to a Canvas-ready QTI zip

Drop your .csv file here or click to browse — only .csv files are supported
Parsed structure 3 of 50 rows
#StemOptionsKey
1Which organelle carries out photosynthesis in plant cells?A · B · C · DC
2The Treaty of Westphalia was signed in which year?A · B · C · DB
3Identify the balanced equation for the combustion of methane.A · B · CA
47 further rows parsed — answer kept in each row

Download unlocks after a one-time payment — see pricing.

Why it holds up

A converter that keeps the structure other tools throw away

Most tools flatten a question paper into one block of text and leave the answer key stranded at the end. ExamParser reads each question's number, stem, options and correct answer as one unit, so the answer travels inside the question and every destination gets a file it will actually accept. It handles the question types teachers actually use — single choice (MC), multiple choice (MR), true/false and essay — and keeps each answer in its own field, so nothing gets lost in translation.

Every field lands in its own column

Number, stem, each option, correct answer, explanation and marks go into separate columns, so you can sort, filter and reuse them later.

The answer stays inside each question

Every question keeps its correct answer in the same row as its options — never as a detached answer key. Asterisk marks or "Answer: C" notes are read and written into that question's own field.

Nine exports from one upload

Parse once, then export to any number of destinations. Moving from Canvas to Blackboard next term does not mean re-doing anything.

What you upload
A
B
C
D
#StemOptionsKey
1Organelle for photosynthesis…A B C DC
2Treaty of Westphalia signed…A B C DB
3Balanced methane combustion…A B CA

Canvas

Built to drop straight into Canvas — QTI, no reformatting

ExamParser turns a paper into one structured row per question — for example MC,,5,Q20,5,a,b,c,d,e — and converts that same data into a Canvas-ready QTI 1.2 package. Each question, its options and its correct answer land in your question bank as one unit — no manual fixing, no copy-paste. Want to tidy things up yourself first? The CSV export ships alongside the QTI zip, so you can edit, reorder or merge questions in any spreadsheet before importing.

1

Upload the CSV

A .csv file with one question per row. The parser reads the number, stem, options and the correct answer for every question.

2

Check the parsed grid

Every question becomes a row. Fix anything in place — edits flow into every export.

3

Download the QTI .zip

One file per job, containing the manifest and every question in Canvas-ready XML.

4

Import in Canvas

Settings → Import Course Content → choose QTI .zip → pick a question bank or course. Done.

Question text→ item / presentation / material
Options A–E→ response_lid / response_label
Answer key→ resprocessing / respcondition (correct)
Marks / pointsmax_score per item
canvas-quiz-qti.zip
<!-- imsmanifest.xml + per-question xml -->

<item ident="q1">
  <presentation>
    <material>
      <mattext>Which organelle carries
      out photosynthesis?</mattext>
    </material>
    <response_lid>
      <material>A. Chloroplast</material>
      <material>B. Mitochondrion</material>
      <material>C. Ribosome</material>
      <material>D. Nucleus</material>
    </response_lid>
  </presentation>

  <resprocessing>
    <respcondition>
      <conditionvar>
        <varequal>C</varequal>
      </conditionvar>
      <setvar action="Set">100</setvar>
    </respcondition>
  </resprocessing>
</item>

How it works

Three steps, no account, no manual retyping

1

Upload your CSV

Drop in a .csv file. The parser reads each question's number, stem, options and correct answer as one unit, so nothing gets split apart.

2

Download the structured result

Every question becomes one row: number, stem, options and its answer together. Preview is free; you pay a one-time plan price only when you download, then export to any format.

3

Import into Canvas

Open the Canvas QTI .zip in Settings → Import Course Content. Moodle, Quizizz and a plain spreadsheet export the same way — no reformatting, no copy-paste.

Exports

What each destination actually receives

Import limits differ a lot between platforms. This is what ExamParser writes out for each one.

DestinationFile you downloadStructureAnswer key
Canvas .zip QTI 1.2 Item metadata, presentation block, response processing per question Yes, mapped to correct response
Moodle .txt Aiken, .txt GIFT, .xml Aiken with ANSWERS block; GIFT with = correct and ~ distractors Yes, all three variants
Quizizz .xlsx bulk upload sheet Question, Option 1–4, Correct Answer, Explanation, Time in seconds Yes, one chosen answer per row
Kahoot .xlsx bulk upload sheet Question, Answer 1–4, Correct Answer, Time limit Yes
Blackboard Tab-delimited upload or QTI MC rows with answer column and optional feedback field Yes
Respondus .rtf in Respondus word format Title: block, numbered questions, asterisk marks the key Yes, asterisk marking
Google Forms Spreadsheet + Apps Script Script creates the quiz items; Forms has no native import Yes, answer key set per item
Excel / CSV .xlsx, .csv Number, Type, Stem, Option A–E, Answer, Marks, Difficulty Yes, its own column

Pricing

One simple price for your whole exam file

No subscription, no login. Upload and preview any paper for free. When you download, you pay a single one-time price based on how many questions your file has — pick the plan that fits.

Up to 50 questions
$7.90 one-time
  • Free to upload and preview
  • Answer stored with each question
  • All export formats included
Most popular
Up to 1,000 questions
$29.90 one-time
  • Free to upload and preview
  • Answer stored with each question
  • All export formats included
Up to 5,000 questions
$79.00 one-time
  • Free to upload and preview
  • Answer stored with each question
  • All export formats included
5,000+ questions
$99.90 one-time
  • Free to upload and preview
  • Answer stored with each question
  • All export formats included
Each plan is a one-time payment All export formats in every download No subscription — no recurring fee No login required

FAQ

Questions people ask before they convert

Do I need to create an account to convert a file?

No. ExamParser runs without a login. Drop a file in, pick the destination and download the result. An account is optional and only used to keep past conversions in one place.

How do I convert a CSV into a Canvas quiz?

Upload the .csv file, choose Canvas as the destination, and ExamParser reads each row into number, stem, options and answer fields, then packages them as a Canvas QTI file. In Canvas go to Settings, Import Course Content, and select the QTI zip file.

Which question types are supported?

Multiple choice, multiple answer, true or false, matching, fill in the blank, short answer and essay. Export support depends on the destination, because each platform accepts only a subset of these types.

Is the answer kept with each question?

Yes. The correct answer is stored in the same row as its question — number, stem, options and answer together — never as a separate answer key at the end. Every destination receives each question with its answer already attached.

What columns does my CSV need?

One row per question. Include the question number, stem, options A–E and the correct answer. ExamParser maps those columns straight into the Canvas QTI fields, so a tidy spreadsheet becomes a ready-to-import quiz.

Do you keep my question papers?

Uploads are used for the single conversion job only. Unpublished exam material is never reused, never resold and never used to train models.

How is pricing calculated?

You pay a single one-time price based on how many questions your file contains — not per question. Plans: up to 50 questions $7.90, up to 1,000 $29.90 (most popular), up to 5,000 $79, and 5,000+ $99.90. Upload and preview are always free; you only pay when you download.

Turn your question CSV into a quiz bank today

No subscription. Pay only for the questions you download. Exports ready for every major LMS.

Go to the converter