Home › Moodle Quiz GIFT Format

Moodle Quiz GIFT Format: Turn Any Question File Into a GIFT Quiz

Updated October 19, 2026 · 7 min read

Building a Moodle quiz usually means either retyping questions into the editor or trusting an AI tool to write them. There is a third way: keep the questions you already have, package them as a GIFT file, and turn that into a live quiz. This end-to-end guide shows the whole path — and how ExamParser does the packaging for you, deterministically, with no invented answers.

The one-line difference: AI quiz tools write the questions and sometimes get them wrong. ExamParser packages the questions you already trust into GIFT and a Moodle quiz. For graded work, the difference is the whole point.

Why GIFT for a quiz (not Aiken)

A real quiz rarely stops at multiple choice. GIFT — the General Import Format for Tests — covers multiple choice, true/false, short answer, matching, fill-in-the-blank, numerical, and essay items, plus feedback and partial credit. That range is why GIFT is the better base for a graded quiz; Aiken is multiple-choice only. (For the Aiken path, see our Moodle Aiken format guide.)

Step 1: build the GIFT question file

GIFT is plain text. A couple of items look like this:

::Capital:: What is the capital of France?
{ =Paris ~London ~Berlin }

::TF:: Water boils at 90°C at sea level.
{ F #Actually 100°C }

ExamParser generates this file from your source — Excel/CSV, Word/DOCX, or PDF — using a fixed column layout: question, each option, correct answer, and an optional image URL (one image per question, as a URL).

Step 2: import the GIFT file

1

Open Import

In your course, go to Question bank › Import.

2

Choose GIFT

Select GIFT and upload the .txt ExamParser produced.

3

Pick a category

Import into a question category you can reuse across quizzes.

Step 3: turn the bank into a live quiz

1

Add a Quiz activity

In the course, add a Quiz and open its question bank.

2

Add from the bank

Choose from question bank and select the GIFT items you imported. Add as many as the quiz needs.

3

Set the quiz options

Configure attempts, time limit, shuffle, and grade. The questions are already graded — GIFT carried the correct answers.

Common quiz settings worth setting

Why deterministic beats AI for a graded quiz

An AI-written quiz can produce a confident wrong answer; on a graded item that is a real problem. Because ExamParser only packages questions you authored, the output is auditable: what you wrote is what students see. The same GIFT source also feeds Canvas, Brightspace, and other platforms, so you build the quiz once and deploy everywhere.

Browse more import guides at examparser.com/blog/en.

Frequently asked questions

Is this an AI quiz generator for Moodle?

No. ExamParser does not invent questions or answers. It converts the questions you already have into a GIFT file and then a Moodle quiz. Because the content comes from you, answers are always correct and verifiable — there is no AI hallucination on a graded quiz.

Can I build a quiz from the GIFT file without retyping questions?

Yes. Import the GIFT file into a question category, create a Quiz activity, choose 'from question bank' when adding questions, and select the items you want. Nothing is retyped; the questions come straight from your file.

Does GIFT support the question types a real quiz needs?

Yes. GIFT covers multiple choice, true/false, short answer, matching, fill-in-the-blank, numerical, and essay questions, plus feedback and partial credit — enough for most graded quizzes. That is why it is preferred over Aiken (multiple-choice only) for quiz creation.

What source files can I start from?

Excel/CSV (with fixed columns), Word/DOCX, or PDF. For spreadsheets, ExamParser expects a fixed column layout (question, each option, correct answer, optional image URL). Each question may have at most one image, supplied as a URL.

Ready to build a Moodle quiz from your own questions?

Skip the AI guesswork and the manual retyping. Upload the questions you already trust and generate a GIFT quiz in minutes.

Try ExamParser →