csv2brightspace

Brightspace · D2L question library

Write quiz questions in a spreadsheet. Import them into Brightspace.

Brightspace takes a bulk CSV, but the CSV it takes is a vertical key-value format that no one can read, sort, or check. Write a normal one-row-per-question sheet instead and convert it here. Drop in an existing Brightspace file and it will find every field an unquoted comma has truncated, repair it, and hand it back.

Conversion happens in your browser; no data leaves your device. Inspired by csv2canvas by Stephen D. Turner.

Start with the template

A blank sheet with the header row already in place, and six choice, feedback, and match groups. Fill it in and drop it back.

Download template

Try a completed example

One filled row for each of the seven question types Brightspace can import from a CSV, ready to convert.

Download example

Questions in a Word file or PDF?

Copy this prompt, hand it to an LLM with your document, and it will build the sheet in the layout this tool expects, asking about anything ambiguous rather than guessing.

Reference

Spreadsheet format

One row per question, with a header row. Columns are matched by name, so their order does not matter and the ones you never use can be left blank or deleted.

TypeMC, MS, TF, WR, SA, M, or O
QuestionTextThe question. Required.
CorrectWhich choice is right. See below.
Choice1…NOptions, answers, or items
Fb1…NFeedback for the same-numbered choice
Match1…NPartner for the same-numbered choice
ID, TitleOptional. ID generates itself if blank.
Points, DifficultyPoints 0–100, difficulty 1–5
Hint, FeedbackQuestion-level, optional
Scoring, Image, HTMLOptional. HTML is TRUE or blank.
The seven question types
  • MC multiple choice. Correct is the choice number, such as 3. For partial credit use weights: 1:100,4:25.
  • MS multi-select. Correct lists them all: 1,3.
  • TF true/false. Correct is TRUE or FALSE. Leave the choices blank; Fb1 is feedback for True and Fb2 for False.
  • WR written response. Use InitialText and AnswerKey.
  • SA short answer. Choices are the accepted answers. AnswerMode can be regexp, sensitive, or insensitive.
  • M matching. Choice1 pairs with Match1, and so on down.
  • O ordering. List the choices in the correct order.
What Brightspace cannot import from a CSV

Fill in the Blanks, Arithmetic, Significant Figures, and Multi-Short Answer questions cannot be imported by CSV at all, and Likert questions exist only inside surveys. A CSV import also cannot switch on answer randomization or choose a Question Library section. Both are set in Brightspace afterwards.

Images

The CSV carries a path, not the picture. Upload your images into an images folder in the course files first, then put images/name.jpg in the Image column. Alt text has to be added by hand after importing.

Four steps

Import into Brightspace

  1. Open the Question LibraryFrom your course, go to Quizzes, then Question Library.
  2. Choose Import, then Upload a FileBrowse to the downloaded CSV or drag it onto the dialog. Upload the .csv itself; do not zip it.
  3. Review what it readBrightspace shows the parsed questions before committing. Check a few, especially the feedback text.
  4. ImportChoose Import All, or tick individual questions and import only those.
If the upload fails with a network error: this is a known Brightspace defect that fires even on D2L's own unmodified sample file, and it is not caused by your CSV. The documented workaround is to import through Course Admin, then Import / Export / Copy Components.
Save as CSV UTF-8 if you edit the file in Excel. Plain CSV mangles accented characters, and that is the single most common import failure.