Fix 500 student records in one screen, without opening each profile.
For the school office assistant, accountant, or principal who has to clean up Aadhaar, mobile numbers, parent details, addresses, or Hindi name spellings for hundreds of students at once. By the end you'll know how to filter, edit inline, set values across many students together, transliterate to Hindi with one click, and recover from uniqueness conflicts.
What this guide covers
Inkwelly's Bulk Update Students screen turns every student profile into one editable row in a spreadsheet. Filter the students you want, pick the columns you want to fix, edit cells inline (or set the same value across many students at once), transliterate names to Hindi or your regional language with one click, and submit — with a Skip-errors mode that lets the good edits go through even if a few rows fail uniqueness checks.
Most schools use this for monthly cleanups: Aadhaar correction rounds, mobile-number updates after WhatsApp bounces, RTE student tagging after the state list is approved, parent occupation surveys, address verification before TC issuance. Below is the 6-step path from clean to live, plus the conflicts most office staff hit on the first run and the fastest way to fix them.
Step 1: Filter the right students
Open Students → Bulk update. The page lists up to 100 active students, alphabetical by first name. Three filters sit on top:
- Search — any part of the student's name or admission number. The URL updates as you type, so a filtered view is shareable with another admin.
- Class — only classes active in the current session show up in the dropdown.
- Gender — narrow to MALE, FEMALE or OTHER.
The footer shows two independent counts: how many students match the filter, and how many of those you've ticked for editing. The red Clear button resets all three filters at once. Tip: prefer class-specific or section-specific runs over whole-school ones — smaller batches are faster to verify.
Step 2: Pick the fields to edit
Click Pick fields at the top of the page. Fields are grouped into four sections:
- Profile — name, DOB, gender, mobile, email, blood group, religion, nationality, mother tongue, Aadhaar, caste category, PE number, ABC ID, APAAR ID, title, photo, active flag, RTE flag.
- Academic — current-session roll number and registration number. Editing these requires every selected student to have an active session record; the screen warns you if any don't.
- Parent — Father / Mother title, name, mobile, occupation, education, work address.
- Address — Permanent address line 1 / 2, city, state, country, postal code.
A small Languages icon marks fields that store multi-language values — first name, parents' names, occupation, mother tongue. Pick only what you need; three columns are easier to scan than fifteen, and you can add more without losing edits already made.
Step 3: Edit cells inline (and Set-all for batches)
The grid is now a spreadsheet. Click any cell to edit. Modified cells get a blue outline so you can scan the page and see what's changed at a glance.
For corrections that apply to many rows at once, use Set all in the column header:
- Tick the rows you want.
- Type a value in the column header's Set-all input (or pick from the dropdown for select / boolean / date columns).
- Click the small CopyCheck button.
Every selected row's cell takes that value at once. Most useful for: same City for one neighbourhood, RTE = Yes after the list is approved, blood groups in batch after a medical camp, default mother-tongue for one class. Per-student exceptions still work — Set-all only fills the column, you can hand-edit any cell after.
Step 4: Add Hindi spellings in one click
If your school has Hindi or another supported language enabled, every translatable cell shows two stacked inputs — English on top, Devanagari (or other script) below. You can type Hindi directly. For hundreds of students, don't.
- Per cell: click the Sparkles icon. Inkwelly transliterates the English value and writes the suggestion into the cell. If multiple spellings are plausible (Aman → आमन / अमन), a chevron next to the cell opens a popover of alternates.
- Whole column for selected rows: tick the rows, click the Sparkles icon in the column header. Inkwelly transliterates English values into every supported non-English locale for every selected student.
Digits stay Latin (0–9) on purpose — numerals stay consistent across reports, marksheets, ID cards and the parent app, even on Hindi pages.
Step 5: Choose strictness, then submit
The submit bar appears only when you have unsaved edits. It shows a count of modified students and one important toggle:
- Skip errors (default). Each row is validated independently. If 8 rows collide on a duplicate Aadhaar, those 8 fail but the other 92 succeed. Right for routine cleanups — see every conflict at once and fix in a second pass.
- Rollback on error. The whole batch is one transaction. One conflict cancels every change. Use when edits are interdependent (swapping registration numbers between two students) or when partial saves are unacceptable.
Click Update N students. The button is disabled until at least one cell has changed, so you can't accidentally fire an empty save.
Step 6: Read results, retry conflicts
After submit, an inline Results panel appears above the grid (no modal — the panel stays so you keep your context). Three numbers: Updated · Skipped · Failed. Failed rows light up in the grid with a red rail and a clickable error chip; the chip scrolls the panel to the matching row.
Most failures are uniqueness conflicts — duplicate Aadhaar, mobile, admission number, or roll number. Each conflict card has a one-click Override action. Use it sparingly:
- Genuine correction — one student's Aadhaar was mistakenly entered for another → Override clears the conflict and keeps the new value.
- Duplicate-data mistake — you pasted the same mobile into 5 rows → don't Override; fix the source data and resubmit.
The retry only sends the rows you ticked. Once everything is green, dismiss the panel — your edits are live.
Common pitfalls
- Editing roll numbers without picking the right session in the top bar. The Academic group edits the current session — switch back if you've moved to a previous year to check data, or you'll overwrite that year's roll numbers.
- Forgetting to tick rows before clicking Set-all. Set-all writes only to selected rows. If nothing is ticked, nothing happens.
- Using Override to dismiss every conflict. The override flag is server-honored — Inkwelly will save data that does collide on a unique field if you tell it to. Read every conflict card first.
- Bulk Aadhaar / APAAR runs without a backup. For 1000+ rows, export a student CSV first via Students → Export. Your snapshot if anything is wrong with the new values.
- Two admins editing the same student in two tabs. Last submit wins.
What's next
- First-time data setup — see Bulk import students for the same spreadsheet workflow on new admissions.
- Full record lifecycle — admission to alumni, see Student Information Management.
- Recovered a deleted student — Restore deleted student records covers the 30-day trash window.
- Document corrections — Aadhaar PDFs, birth certificates, transfer letters → Student Documents Management.
- One-page reference for your principal — Bulk Update Student Records, the underlying feature page.
See bulk-update on your own school's data
20-minute walkthrough. We import a sample of your existing student list and run a mock cleanup so you see exactly how a real October UDISE pass would look on your records.
Frequently asked
8 questionsCan I undo a bulk update once it's saved?
Inkwelly does not auto-rollback after submit. Each updated row writes the new value into the active session, and the original value is overwritten. For destructive cases — deleting a student, marking inactive — the trash window lets you restore within 30 days. For simple value changes, your safety net is the export you took before starting (Students → Export → CSV). Train your office team to take a one-click export before any bulk session of more than 50 rows.
Will parents get a WhatsApp or SMS notification when their child's data is corrected?
No. Bulk-update is intentionally silent — the admin uses it to clean up data, not to communicate with parents. Notifications fire on explicit events such as fee receipts, attendance, leave applications, or exam result publication. If you want to inform parents about a major data-cleanup round, send a single broadcast from the Communications module after the run is complete.
What happens if two students get the same Aadhaar / mobile / admission number after a bulk edit?
The bulk-update API enforces uniqueness on Aadhaar, admission number, mobile, and the academic session's roll number. A row that would create a duplicate is reported as a Failed row in the Results panel with a one-click Override option. Use Override only when the new value is correct and the existing duplicate row is wrong — never as a way to dismiss a conflict you haven't read.
Does this work for ICSE, IGCSE and state-board schools too?
Yes. The screen is board-agnostic. Aadhaar, APAAR, ABC ID and PE Number are CBSE / India-specific; ICSE, IGCSE and state-board schools simply leave them blank or hide those columns from the field selector. Caste category and the RTE flag also remain optional. Hindi and other regional-language fields appear only when the school has those languages enabled in school settings.
Can a class teacher run a bulk update, or only the principal?
Bulk-update is gated by the bulk_update_students permission, which sits in Identity & Access Management. By default it is granted to ORG_ADMIN, SCHOOL_ADMIN and ACADEMIC_HEAD roles. You can grant it to a specific class teacher for one session — for example, during UDISE submission week — and revoke it after. The audit log records every bulk-update run with the user and timestamp.
What about students whose parents have only Hindi (or only English) names recorded?
Each text field accepts an English value, a Hindi value, or both. If the source record has only Hindi, the English column appears empty until you fill it in (the Sparkles button can transliterate Hindi → Latin too). Inkwelly's parent app and report cards render the localized value when available and fall back to English when not. Numerals always stay Latin (0–9) for consistency across reports and ID cards.
Can I bulk-change the class assignment, or only roll numbers and registration numbers?
Class change is a separate flow — Students → Mid-year class change — because it has wider effects (fee re-allocation, timetable, attendance roster). Bulk Update edits the current-session roll number and registration number only. For end-of-year promotion across classes, use the Promotion module so that the academic history stays correctly versioned.
Does it support setting profile photos in bulk?
Each row's Photo cell uses the standard MediaPicker, so you can pick or upload a photo per student inside the grid. There is no global Set-all for photos because identical photos across students would corrupt the record. For bulk-photo upload at admission time, use Bulk Import — it accepts a ZIP of photos keyed by admission number.
You might also like
3 readsSee Inkwelly on your school
30-minute demo. We open your current ERP with you and load your data into Inkwelly on the call. Dated go-live plan by the end of it.