Skip to main content

Evaluate OMR answer sheets with Gemini vision AI and Google Sheets

Workflow preview

Workflow preview
100%
Evaluate OMR answer sheets with Gemini vision AI and Google Sheets preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

What problem does this workflow solve? Manual checking of OMR (Optical Mark Recognition) answer sheets is time consuming, error prone, and difficult to scale—especially for schools, coaching inst...

Best for

  • Document Extraction automation workflows
  • AI Summarization automation workflows
  • intermediate n8n builders looking for reusable templates

Tools used

@n8n/n8n-nodes-langchain.ollama, n8n-nodes-base.merge, n8n-nodes-base.code, n8n-nodes-base.respondtowebhook, n8n-nodes-base.set, n8n-nodes-base.webhook, n8n-nodes-base.googlesheets, n8n-nodes-base.stickynote

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by InfyOm Technologies.

Original n8n.io source

1.1 Workflow description

Title
Evaluate OMR answer sheets with Gemini vision AI and Google Sheets
Workflow name
Evaluate OMR answer sheets with Gemini vision AI and Google Sheets

✅ What problem does this workflow solve?

Manual checking of OMR (Optical Mark Recognition) answer sheets is time-consuming, error-prone, and difficult to scale—especially for schools, coaching institutes, and exam centers.
This workflow automates OMR evaluation end-to-end using AI, from reading a scanned answer sheet image to calculating scores and storing structured results in Google Sheets.


⚙️ What does this workflow do?

  1. Accepts a scanned OMR answer sheet image via webhook.
  2. Uses AI vision to extract only the marked answers from the sheet.
  3. Extracts basic student details (Name, Roll Number, Class).
  4. Compares extracted answers with a predefined answer key.
  5. Calculates:
    • Total questions
    • Correct answers
    • Incorrect answers
    • Score percentage
  6. Generates question-wise binary results (1 = correct, 0 = incorrect).
  7. Stores the complete result in Google Sheets.
  8. Returns a structured JSON response to the calling system.

🧠 How It Works – Step by Step

1. 📥 Webhook Trigger (Student OMR Upload)

  • A client uploads the OMR image via a POST request.
  • Image is received as form-data (key: file).

2. 👁️ AI-Based OMR Image Analysis

  • An AI vision model analyzes the image.
  • Strict rules ensure:
    • Only answer bubbles are considered
    • Multiple markings → darkest option is selected
    • Unmarked questions are skipped
    • No guessing or hallucination
  • Output includes:
    • Student details
    • Question–answer pairs

3. 🔄 Answer Formatting

  • Raw AI output is converted into a clean, structured format:
    • 1:A, 2:B, 3:C, ...
  • Student metadata is preserved separately.

4. 🧮 Answer Key Setup

  • Correct answers are defined inside the workflow (editable anytime).
  • Supports any number of questions.

5. 📊 Result Calculation

  • User answers are compared with the answer key.
  • Generates:
    • Correct / Incorrect counts
    • Percentage score
    • Detailed per-question result
    • Binary output (Q.1 = 1 / 0) for analytics

6. 📄 Google Sheets Logging

  • Results are appended to a Google Sheet with columns such as:
    • Student Name
    • Roll No
    • Class
    • Correct
    • Incorrect
    • Score Percentage
    • Q.1 → Q.n (binary values)

7. 📤 API Response

  • Workflow responds with a JSON payload containing:
    • Student details
    • Full evaluation summary
    • Per-question analysis

📂 Sample Google Sheet Output

Student Name Roll No Class Correct Incorrect Score % Q.1 Q.2 Q.3 ...
Rahul Shah 1023 10-A 16 4 80% 1 0 1 ...

🛠 Integrations Used

  • 🤖 AI Vision Model – for accurate OMR detection
  • ⚙️ n8n Webhook – to accept image uploads
  • 🧠 Custom Code Nodes – for parsing and evaluation logic
  • 📊 Google Sheets – for persistent result storage

👤 Who can use this?

This workflow is ideal for:

  • 🏫 Schools & Colleges
  • 📚 Coaching Institutes
  • 🧪 Online Exam Platforms
  • 🧑‍💻 EdTech Developers
  • 📝 Mock Test Providers

If you need fast, reliable, and scalable OMR checking without expensive hardware—this workflow delivers.


🚀 Benefits

  • ⏱ Saves hours of manual checking
  • 🎯 Eliminates human error
  • 📊 Produces analytics-ready data
  • 🔄 Easy to update answer keys
  • 🌐 API-ready for integration with any system

📦 Ready to Deploy?

Just configure:

  • ✅ AI model credentials
  • ✅ Google Sheets access
  • ✅ Your correct answer key

…and start evaluating OMR sheets automatically at scale.

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Analyze image

Type / Role
@n8n/n8n-nodes-langchain.ollama - ollama
Config choices
Version 1

Block 2 - Merge Answer

Type / Role
n8n-nodes-base.merge - merge
Config choices
Version 3.2

Block 3 - Calculate Result

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 4 - Send Result Respond

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.4

Block 5 - Convert User Ans in Formate

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 6 - Set Your Correct Answer

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Block 7 - Send Student Ans Img

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 2.1

Block 8 - Append Result in Sheet

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.7

Block 9 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 10 - Workflow Overview

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 11 - Input Section

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 12 - AI Processing

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 13 - Answer Comparison

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 14 - Output Section

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

3. Summary Table

Workflow Evaluate OMR answer sheets with Gemini vision AI and Google Sheets
Complexity intermediate
Nodes 14
Categories Document Extraction, AI Summarization
Author InfyOm Technologies
Published 07 Jan 2026

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/12549/12549.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Evaluate OMR answer sheets with Gemini vision AI and Google Sheets do?

What problem does this workflow solve? Manual checking of OMR (Optical Mark Recognition) answer sheets is time consuming, error prone, and difficult to scale—especially for schools, coaching inst...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Document Extraction, AI Summarization use case.