ScaLEEn

answer sheet · scan · item analysis
☁️ Sign in to sync across your phone and laptop
Optional — everything below works fully without signing in.

ScaLEEn is a free browser-based tool for teachers: generate bubble answer sheets, scan completed sheets to automatically detect shaded answers, and analyze results — item analysis, mastery levels, learning-competency breakdowns, and exportable reports — all in one place.

💾 Autosave ready

Add a Grade & Subject

Each Grade Level + Subject gets its own completely separate workspace — its own Generate Sheet setup, Answer Key, sections/roster, scanned results, and analysis. Nothing from one ever mixes with another. Once created, find it any time in the sidebar on the left.

Test setup

Click the field above to see common test-type options, or just type your own — this same title also prints on the sheet and is used to match saved answer keys later, so try to use the same wording each time for the same test.
1020 3050 6075 100
A–D A–E
1 per page 2 per page 4 per page 6 per page 8 per page
2-digit 3-digit 4-digit 5-digit

Item types & points 0 manual

▸ tap to expand
By default every item is multiple-choice, worth 1 point, and scanned automatically. For essays, problem-solving, or performance-task items, switch an item to "Manual / Rubric" — it's excluded from the bubble sheet and OMR scanning (shown as a blank slot instead), and you enter each student's score for it yourself on the Students tab (under "Manual/rubric scores"). Add a rubric or model answer as your own reference — it is not auto-graded.

Answer key 0 / 0 set

Click a bubble to cycle through choices for the correct answer of each item, or upload it from a file.

Saved answer keys 0 saved

Save the current answer key under its term and test type so you can reload it later — useful for rechecking, or grading late learners against the exact key that was used.
No saved answer keys yet.

Learning competencies per item 0 / 0 tagged

Tag each item with its learning competency (from your Table of Specifications) to see which competencies are most and least learned in Analysis.
Or tag a range of items manually:
👥 Class Roster 📷 Scan / Import 📊 Results

Student roster 0 sections

Register each class section once with its student list, then just pick a name when scanning — no retyping. Each student gets an ID number, printed as a bubble grid on their answer sheet, so batch-scanned sheets can be matched to students automatically.
Added to this workspace's grade — the grade level is set once when you create the subject (see sidebar).
Or upload a class list instead of typing names one by one. Leave the ID column blank to auto-assign numbers, or fill it in from a school-wide master list so the same student gets the same roll number in every subject.
No class sections yet — add one above, then list your students inside it.

Scan a student's answer sheet supports batch upload

Term and Type of Test default from Generate Sheet setup, but you can change them here per scan — this is what powers the Analysis tab's filters and saved answer keys.
Upload photos or a scanned PDF of filled-out answer sheets (select several files, or a single multi-page PDF, for batch scanning), then click "✨ Auto-detect corners" — or tap its 4 corner marks yourself in order: top-left → top-right → bottom-right → bottom-left.
While tapping a corner, a zoomed-in circle follows your finger/cursor so you can land exactly on the corner mark — precise taps here are what keeps the detected answers lined up correctly.

Import scores from ZipGrade / EvalBee / CSV bring in existing results

Already have results exported from ZipGrade, EvalBee, or another scanner as a .xlsx/.csv file? Import them directly instead of re-scanning.

Scanned students 0

No students scanned yet.

School letterhead used on every exported/printed report

Matches your school's prescribed header & footer design — edit the text lines below if this report is for a different school.

Mastery level tiers

▸ tap to expand
Schools use different mastery scales — some the standard DepEd 3-tier scale, others a more granular one. Add, remove, rename, or rethreshold tiers freely; every item statistic, chart, and the Intervention tab update to match. The lowest tier always catches everything below the tier above it.

Report scope Grade — Subject

Filter which students the analysis and exported report below cover. Selecting a specific Type of Test also unlocks the matching saved answer key for accurate item-level analysis.

Summary all students

0
Takers
0
Mean score
0%
MPS
0
Median
0
Std. dev.
0
Highest
0
Lowest
0%
Passing rate

Analysis by section 0 groups

Scan students to see this breakdown.

Analysis by grade level 0 groups

Scan students to see this breakdown.

Analysis by subject 0 groups

Tag students with a Subject on the "Students" tab to see this breakdown.

Score distribution

Test reliability KR-20

Not enough data
Kuder–Richardson reliability of the item set

Mastery level per item, % correct

Scan students and set an answer key to see this distribution.

Frequency of errors per item, no. of errors

Scan students and set an answer key to see this distribution.

Most learned competencies avg % correct ≥75

Tag items with learning competencies on the Answer Key tab to see this.

Least learned competencies avg % correct <60

Tag items with learning competencies on the Answer Key tab to see this.

Level of difficulty / domains Bloom's Taxonomy blueprint

Tag each item's cognitive domain on the Answer Key tab. Compare your test's actual item distribution against your target blueprint split.
Tag items with a domain on the Answer Key tab to see this.

Item analysis mastery level & frequency of errors

Scan students and set an answer key to see item statistics.

Item analysis difficulty (p) & discrimination (d)

Scan students and set an answer key to see item statistics.

Report signatories

Check which signatories should actually appear in the exported/printed report — uncheck any that don't apply.
Subject Teacher
Master Teacher
Department Head
School Head

Learners needing intervention based on Analysis tab's Report scope

Lists students who scored poorly specifically on the items behind each "Least Learned" competency — filter Report scope on the Analysis tab to a specific Subject and Type of Test to see this.
Filter Report scope (Analysis tab) to a specific Subject and Type of Test, and tag items with learning competencies, to see this.

Generate intervention documents

Auto-filled from the current intervention list above — download and adjust the editable portions (strategies, schedule, resources) in Word before printing/submitting.

Welcome to ScaLEEn

This app helps you generate bubble answer sheets, scan completed sheets automatically, and analyze the results — no more hand-tallying scores or computing item statistics by hand. Everything below is in the order you'll actually use the app, from your first test to your final report.

Step 1 — Generate Sheet

  1. Go to the Generate Sheet tab and fill in your exam title, subject, teacher name, and passing score.
  2. Pick the number of items (or type a custom count) and choices per item (A–D or A–E).
  3. If any items are essays, performance tasks, or anything that can't be scanned as a bubble, open "Item types & points" and mark those items as Manual / Rubric instead of Multiple Choice — they'll print as a blank slot instead of bubbles, and you'll enter those scores by hand later on the Students tab.
  4. Choose Roll No digits (2–5) based on how many students you have across your whole school — this is what lets scanning auto-match a sheet to the right student.
  5. Pick how many sheets to print per page (1, 2, 4, 6, or 8) depending on how many copies you need and how much paper you want to use.
  6. Click Print blank sheet to get physical copies ready for your class.

Step 2 — Answer Key

  1. Go to the Answer Key tab and click the bubble that matches the correct answer for each item — or click "⬇ Download template" next to the upload button, fill it in, and upload it instead of clicking through each item by hand.
  2. Optionally tag each item's learning competency and Bloom's Taxonomy domain — or upload a Table of Specifications (TOS) to fill both in automatically (a downloadable TOS template is available there too).
  3. Click "Save current key" so you can reload the exact same key later — useful if you're grading late submissions or rechecking after the fact.

Step 3 — Students

This tab has three parts — Class Roster, Scan / Import, and Results — switch between them using the small tabs near the top.

  1. Under Class Roster: build your class list once — add students one at a time, or click "⬇ Template" to download a class-list spreadsheet, fill it in, and upload it instead. Each student automatically gets an ID number starting from #1 within their own section — or type in a specific number yourself if your school already assigns official IDs (leave it blank for auto-numbering). Since numbering restarts at #1 per section, removing a section never leaves gaps in another section's numbers.
  2. If two sections both happen to have the same Roll No. (e.g., both have a "#1"), scanning will still work — it just can't guess which section a sheet belongs to on its own in that specific case, so it'll ask you to pick the right student manually instead of risking a wrong match.
  3. Need the same roll number for a student in every subject, school-wide? Fill in the ID column on one master class-list file, and have every teacher import that same file — since the number is explicitly provided, it stays identical everywhere it's imported.
  4. Made a typo, or need to correct a student's name or number afterward? Click the pencil (✎) icon next to their name to edit it in place — no need to delete and re-add.
  5. Share the ID list with your class beforehand (use "Export ID list") so students know their number and shade it in themselves before the test — this is what makes batch scanning able to automatically match each sheet to the right name.
  6. Under Scan / Import: upload a photo (or several at once for a batch, or a multi-page PDF), then either click "✨ Auto-detect corners" or tap the sheet's 4 corner marks yourself in order (top-left → top-right → bottom-right → bottom-left) — a zoomed-in circle follows your tap to help you land exactly on each mark, since that precision is what keeps detected answers correctly lined up.
  7. If many answers come back unclear all at once after detecting, a warning banner will point this out and suggest clicking "↺ Re-calibrate" to try tapping the corners again — this is almost always a corner-alignment issue, not the student's actual marks.
  8. Click "Detect shaded answers." If the student's Roll No. was read successfully, a green banner confirms exactly who it matched to — you generally won't need to pick the student manually at all. Anything the detector isn't confident about (including an unclear ID) gets flagged for you to check before saving.
  9. Click "⬇ Download checked sheet" to get a copy of the student's own photo marked up with ✓ for correct and ✗ (with the right answer shown next to it) for wrong, plus the score — ready to send back to the student. This uses whatever answers are currently shown, so review and fix anything flagged first if you want the marks to reflect your corrections.
  10. Have a learner who's genuinely exempted from a specific test (not just absent)? Select their section and name, then click "🚫 Mark selected student as exempted" instead of scanning — no photo needed. They'll still show in Results labeled "Exempted," but won't count toward Takers, MPS, or the class average, so those numbers stay accurate to only the learners who actually took the test. "↺ Undo" reverses this if clicked by mistake.
  11. Answer sheet lost or damaged after the fact, but you still know the student's total score? Select their section and name, then click "📝 Enter score manually" — this counts toward Takers, MPS, and the class average like a normal result, but (since there's no sheet to analyze) it won't contribute to item-level analysis — difficulty, discrimination, or KR-20 — for individual questions. "✎ Edit score" lets you correct the number later if needed.
  12. If a test has manual/rubric items, a "Manual / rubric scores" section appears automatically — enter each student's points there before saving.
  13. Already have scores from ZipGrade, EvalBee, or a spreadsheet? Import those directly instead of scanning — also under Scan / Import.
  14. Under Results: see everyone scanned or imported so far for this roster.

Step 4 — Analysis

  1. Review scores, item-by-item analysis, mastery levels, and which learning competencies were most/least learned by the class.
  2. Filter by section, subject, term, or type of test to narrow down what you're looking at.
  3. Need to give bonus points (recitation, attendance, etc.)? Enter them in the Bonus column on the Students → Results table — this lifts the score, percentage, and MPS shown here and in exports, but never affects item analysis, KR-20, or which competencies show as least-learned, since those are always based purely on how each item was actually answered.
  4. A "⚠ N to check" badge next to a student's name on the Results table means some of their answers were unclear when scanned — click it (or sort by "Needs review first") to jump straight to those items and quickly confirm whether the scan read them correctly, without having to open every student one by one.
  5. Export a full report as Word, PDF, or Excel, already formatted with your school's letterhead and signature blocks.

Step 5 — Intervention (optional)

  1. See which competencies the class struggled with most, and which specific students need extra help on each one.
  2. Generate ready-made documents: an Action Plan, a one-page proposal, a remediation attendance sheet, or an accomplishment report — all pre-filled with your actual class data.

Keeping your data safe

  • Your data autosaves automatically to this browser as you work — no need to manually save.
  • That autosave only lives on this one device/browser. Use Export backup periodically (top bar) to download a portable copy, or sign in with Cloud Sync to keep it synced across your phone and laptop automatically.
  • Clear saved data permanently erases everything on this device — make sure you've exported a backup first if you might need it again.

Everything here is free right now

Generating sheets, scanning, answer keys, rosters, Item Analysis exports, and Cloud Sync — all of it, with no limits, no keys to enter.

About

ScaLEEn was built by Lyndel E. Esperanza for classroom use. Questions or feedback: LyndelEsperanza@gmail.com