Skip to content
LEAPDocs

Importing questions from CSV

Bulk-loading questions from a spreadsheet, with validation before anything is written.

When to use it

When you already have a question bank — a past paper set, a departmental bank, a publisher file. Importing preserves your wording exactly, which generation cannot promise.

The import flow

  1. 1
    Download the template

    It carries the exact column names and an example row. Do not rename columns.

  2. 2
    Fill it in

    One question per row: text, type, options, correct answer, marks, Bloom level, concept tags.

  3. 3
    Drop the file in

    Nothing is written yet — the file is parsed and validated first.

  4. 4
    Read the preview

    Valid rows, rows with errors, and duplicates are separated. Errors are reported per row with the reason.

  5. 5
    Commit

    Only valid rows are written. The commit is reversible with a single undo.

Rows that get blocked

  • A correct-answer column pointing at an empty option — the question could never be graded.
  • A select-all question in a quiz that cannot grade multiple selection.
  • An unrecognised question type or Bloom level.
  • Marks that are missing or non-numeric.

Blocking rows are hard stops, not warnings — they are distinguished from rows that merely need attention. A failed import returns an annotated file with the offending rows marked, rather than rejecting the whole upload.

Duplicates

Rows matching a question already in the bank are flagged rather than silently added, so re-importing a corrected file does not double your bank.