How to Grade Multiple Versions of a Test Without Mixing Up the Keys
Form A and Form B (or Set A to Set D) cut copying, but only if every paper is checked against the right answer key. Here is how to build fair versions, write one key per exam code, and grade a mixed pile by hand or from photos.
By the Snap AI team ·
Your school may call them Form A and Form B, Set A to Set D, paper codes or exam codes. Whatever the name, the rule for how to grade multiple versions of a test is the same: every paper carries a clear version code, every code has its own answer key, and no paper gets marked until you know which key it belongs to. Most version mix-ups come from breaking one of those rules, not from the marking itself.
Why give multiple versions of a test?
The main reason is copying. When students sit close together, a neighbour's paper is the easiest answer key in the room. If that neighbour has the same questions in a different order, with shuffled options, glancing across stops paying off.
Seating does most of the work. The UC San Diego Academic Integrity Office advises giving different versions when you cannot space students out, and notes you typically need at least three so neighbours do not share one. With four, nobody to the left, right, front, back or diagonally has the same paper: run 101, 102, 103, 104 along the first row, start the second row at 103, and alternate the two rows from there.
Shuffling does not seem to penalise students who get a particular order. In a 2003 study in the Journal of Statistics Education, McLeod, Zhang and Yu randomised question order and option order on a multiple-choice midterm sat by 442 students and found no significant effect of either on scores. Versions are not a complete fix: they do nothing against a leaked key or a phone under the desk.
How to create versions that stay fair
Fair versions test the same content in a different order, so finish one master test and derive every version from it.
- Finish the master first. Fix typos and wording before you shuffle. Every later edit has to be repeated in every version, and that is where versions drift apart.
- Shuffle question order, but keep groups together. Questions that share a reading passage, diagram or data table move as one block. Many teachers also leave the first few easy questions in place as a warm-up.
- Shuffle the options with care. Moving A–D within a question is fine for most items. Keep numerical answers in ascending order, and leave options like "All of the above" in place, because they break when moved.
- Keep difficulty and points equal. Same number of questions, same points per question, same total. If you write different questions instead of shuffling (parallel forms), match them topic by topic.
- Print the code clearly in the header of every page. Use a box and the same position on each page, so a loose second page can still be matched. If students use a separate answer sheet, have them copy the code onto it.
- Save a version map. Note where each master question lands in each version (master question 7 is question 22 on version 102, and so on). You need it to compare results later.
Letters or numbers? Form A/B and Set A/B are familiar, but a single letter is easy to confuse with an answer choice. A short number such as 101 or 102 is harder to misread. Either way, write the code exactly the same on the paper and on the key.
Build one answer key per version
Never retype a key from memory. Build each version's key from the master key and your version map, or let your shuffling tool export one key per version. Then check each key: exactly one answer per question number, with letters spread fairly evenly across A–D.
For hand marking, make a key strip or transparent overlay per version with the code printed large at the top, so you never pick up the wrong one mid-pile.
Answer key format for several exam codes in Snap AI
In Snap AI the keys for every version can share one text box: write Exam code 101 before that code's answers, then Exam code 102 before the next set, and so on. For example:
- Exam code 101: 1.A 2.B 3.C 4.D 5.B …
- Exam code 102: 1.C 2.D 3.A 4.B 5.A …
- Exam code 103: 1.B 2.A 3.D 4.C 5.D …
Each code can sit on its own line above its answers, and numbering can vary, as long as each code and answer is clear. You can also photograph or upload the key sheets instead (up to 10 files). Press Confirm and Snap AI lists the Exam codes read from the key, with the number of questions under each. Open View answers to check a code and correct any answer by hand before grading.
How to grade multiple versions of a test: by hand or with a tool
By hand
- Sort the pile by code before you mark anything, and count each stack against your seating plan.
- Set aside any paper with a missing or unreadable code, and match it to a seat or class list later.
- Mark one stack at a time with that code's key, and put the key away before you pick up the next stack.
- Record the code next to each score in your markbook, so a later query about a mark can be checked against the right key.
Sorting protects you, because the danger is silent: a paper in the wrong stack still gets a score, just the wrong one.
Bubble-sheet scanners and apps
Many optical mark recognition (OMR) tools support versions too, reading their own printed answer sheets. As of October 2026, for example, ZipGrade lets one quiz hold several answer keys, with students bubbling their key version on its answer sheet, and Gradescope bubble sheet assignments accept up to five versions. They work well when every student fills in the tool's sheet correctly.
With Snap AI
With Snap AI you skip the sorting. Photograph the papers in any order, from the web app on a phone or computer or from the Android app (step-by-step guide). Answers circled on the question paper and answers marked on an answer sheet both work (details).
The AI reads each paper's exam code, along with the student's name and class, and Snap AI then compares the answers with the key for that code. Right or wrong is decided by plain code matching against your key, not by AI judgement. Because the code is read from the photo, keep the header in frame and in focus; if a student's code is faint, write it again clearly beside the header before you take the photo.
Check the codes before you press Grade. Under Papers to grade, each paper shows the code that was read, for example Exam code 101. If a paper shows no code, delete it and add a sharper photo while the batch is still a draft. When your key has several codes and a paper has none, grading stops at that paper and the batch is marked Failed, and you would have to set up a new batch. If a code is read but matches nothing in your key (say 107 when your key has 101 to 104), that paper is scored against the first code in the key, so check the code behind any surprisingly low score.
Grade a paper whose code is missing, unreadable or wrong (a student who sat 102 but wrote 101) on its own: put it in a small separate batch whose key holds only that student's real version. With a single code in the key, every paper in the batch is checked against it.
Worked example: 4 versions, 40 questions, 120 students
Say you teach four Year 9 science classes of 30 students, 120 in all, and give a test with 40 single-choice questions (A–D) worth 1 mark each. You make versions 101 to 104 from one master and seat them in the row pattern above.
| Task | By hand | With Snap AI |
|---|---|---|
| Prepare keys | 4 keys × 40 answers = 160 answers to write and check | The same 160 answers in one box under four exam codes, checked on screen |
| Sort papers | 120 papers into 4 stacks by code | No sorting: each paper's code is read from the photo |
| Mark | 120 × 40 = 4,800 answers compared with the right key | Answers read from photos and compared with each code's key; you review flagged questions |
| Record | Copy 120 scores and codes into your markbook | Export as CSV: Name, Exam Code, Score, Notes, one column per question |
| Compare versions | Work out an average per stack yourself | Batch statistics split by exam code |
The steps in Snap AI:
- Create one batch per class. The CSV has no class column, so separate batches keep classes apart and give you statistics per class.
- In Points Setup, set Score scale to 40. With equal points per question (the default), each question is worth 1 mark; with the default scale of 10, each would be worth 0.25.
- In Answer Key & Submissions, type the four keys in the Text tab of Enter answer key, each starting with its exam code, and press Confirm. Check that four codes appear, each with 40 questions.
- Under Papers to grade, photograph the class's 30 papers in any order. One paper is one student: add every page of a multi-page paper to the same paper, then use Add another student's paper for the next one.
- Check that every paper in the list shows an exam code between 101 and 104. Delete and re-photograph any that do not, then press Grade.
- Open Review on papers with ungraded questions. You see the original photo beside each question's student answer, correct answer and points, and you can change the points; the total recalculates.
- Open View statistics to compare the versions, then Export as CSV for your gradebook (into Excel or Google Sheets).
Snap AI is currently free to use, with a daily limit on how many papers the free plan grades. The app shows how many you have graded today, so check it before a whole year group.
Common mistakes with test versions (and how to avoid them)
- Grading with the wrong key. A paper in the wrong stack, or a mislabelled key, gives a score that looks real. On a 40-question A–D test, pure guessing averages about 10 correct, so a strong student scoring near 10/40 is a reason to check the code first.
- Unlabelled papers. Students forget the code, or page 2 comes loose from page 1. Pre-print the code on every page instead of relying on students, and keep the seating plan until marks are final.
- Mismatched totals. If one version ends up with 39 questions because one was dropped while shuffling, its students sat a different test. In Snap AI only the questions in that code's key are graded, and with equal points the total is split across them, so a missing question changes what every question in that version is worth. Check the question count per code after Confirm.
- Answer-key typos. One wrong letter in one version's key hurts only the students who sat that version, so it is easy to miss. Check keys before grading (in Snap AI, with View answers). If you find an error afterwards, correct the affected questions in Review, or grade the set again in a new batch with the fixed key.
- Options that point to each other. "Both A and C" means nothing once A and C have moved. Lock or rewrite them before you make versions.
Read the results per exam code
Results per version tell you whether the versions were equally fair and whether one of your keys has a mistake. Look at each code's average first: small differences are normal, but a version well below the others deserves a closer look.
Then compare the same master question across versions. Question 15 on version 103 is not question 15 on version 101, so use your version map to line them up:
| Exam code | Position of M7 | Students correct |
|---|---|---|
| 101 | Q7 | 24 of 30 |
| 102 | Q22 | 25 of 30 |
| 103 | Q15 | 2 of 30 |
| 104 | Q33 | 23 of 30 |
When three versions agree and one collapses, like 103 here, the question itself is probably fine. The likely cause is that version's key, or that version's printed copy of the question (an option moved but the key was not updated). Check both before you rewrite anything.
In Snap AI, View statistics opens Batch statistics: the class average for the batch, then under Answers by question one chart per exam code with correct, incorrect and ungraded counts for each question, plus that code's lowest, average and highest score. The CSV has an Exam Code column and one column per question, so you can filter by code in a spreadsheet for deeper item analysis. If one version shows many ungraded questions, see what affects reading accuracy.
Frequently asked questions
Related guides
- Free Printable Bubble Answer Sheet Template (1–100 Questions)Build a clean multiple-choice answer sheet in your browser: pick the number of questions, the answer options, the paper size and the header fields, then print it or save it as a PDF. No signup, free for classroom use.
- How to Grade Multiple-Choice Tests With Your Phone (Step by Step)Photograph each student's paper, check the questions the app flags, and download the scores. This guide shows what hand grading really costs you, how four grading methods compare, and every step in Snap AI.
- How to Export Test Scores to Excel, Google Sheets or Your GradebookSnap AI gives you a CSV file that opens in Excel or Google Sheets. Here is exactly what is in it, how to open it without broken accents or decimals, and the formulas for matching names, converting scores and finding the questions students missed.