For language schools
Language school software for California, from $99 a month
Roster, attendance by track, levels as cohorts, enrollment verification letters and signed agreements for English language schools approved by the Bureau for Private Postsecondary Education. One record per student from the application to the last level, whether they stay six weeks or two years.
No signup and no email needed · send your own roster and see it with your levels and tracks instead
A 30-student school pays the $99 minimum. At 140 students it’s $420 a month. Two or more campuses get one flat rate. Published prices, no call, cancel anytime.
The language school specifically
Three sets of rules, and the record underneath all of them
Facts checked against bppe.ca.gov, studyinthestates.dhs.gov and Public Law 111-306, October 2026. A hundred-student school with four tracks has more roster changes in a month than a beauty school has in a year, and the office is usually two people.
The situation
Four places, none of them agreeing
The attendance binder
One per track. Teachers tick a sheet each morning. When a student’s status is questioned, somebody adds up eight weeks of ticks by hand.
The level spreadsheet
Who’s in Intermediate B this session, who moved up, who went home for a month. Rebuilt every session, right on the day it was last edited.
The placement and test results
Placement scores and end-of-level tests in a separate file. Whether a student is ready to move up is a teacher’s memory and a hallway conversation.
The student folder
Passport copy, I-20 copy, enrollment agreement, the letters already issued. A verification letter means finding the folder, then the template, then the dates.
Udooku holds one record per student across every level they take. What it leaves to SEVIS and to your LMS.
What it does
The record, from application to the last level
Every screen below is in the demo. The made-up school is a beauty academy, so ignore the program names and look at the shape of the record. To see your own levels instead, send a CSV.
An applicant becomes a student without being retyped
Applications land in a pipeline. You review one, accept it, and that applicant becomes the student record, with a status that follows them through active, on leave, withdrawn and completed. A student who comes back next year is the same record, not a new row.
How a term runs →
A level is a cohort. A track is its schedule. Attendance is marked once
Each level and track is a cohort with its own weekly schedule, and the schedule generates the sessions. The teacher marks the roster with six codes: present, absent, tardy, make-up, holiday and leave. When a student moves from Intermediate to Advanced, they get a new enrollment on the same record, and the old level’s attendance stays where it was. Hours per week per student come out of what was marked, not out of a binder. Students can also clock in and out on a tablet at the front desk, and the punch lands on the same grid.
Take attendance yourself →
The verification letter is a button, not a morning
Enrollment verification letters, transcripts and certificates of completion are built from the enrollments you already hold, numbered, and kept in the issued list for good. A reissue supersedes the old one and a voided copy stays visible, so the letter a student showed the bank in March is still on file in September.
What a student leaves with →
The agreement, the passport copy and the I-20 copy sit on the record
Enrollment agreements and disclosures go out for signature and come back attached to the right student. Your own uploads sit alongside: the passport page, the I-20 you issued, the proof of funds. Your catalog, refund policy and fact sheet live in the same vault, each with a version and an expiry date.
Look through the vault →
Tuition runs through your own Stripe account, by the month or by the program, with no fee taken on what students pay. On the Compliance plan the same records produce the roster for the BPPE Annual Report and the quarterly STRF report, and payment plans charge themselves. What each plan includes.
What it doesn’t do, honestly
Three things a language school needs that Udooku isn’t
It does not talk to SEVIS and it does not issue I-20s. The designated school official keeps doing that in SEVIS, where the law puts it. What Udooku gives the DSO is the enrollment dates, the level history and the attendance count behind every report they file, on one screen instead of three binders, and a letter template that already has the dates in it.
It is not an LMS. There is no homework, no placement test engine, no coursebook. The usual answer for an English school is the platform that comes with the coursebook series, from Cambridge, Oxford, Pearson or National Geographic Learning, and the students already have the login. Udooku is the office record that sits beside it: who is enrolled, in what level, since when, and whether they were in the room.
It has no Title IV. There is no financial aid module. Most independent language schools are not Title IV schools, and the software is priced for them.
Go and use it
Password Udooku1234, sign in as [email protected]. Open a cohort, mark attendance, issue a verification letter. Then the next two steps are just as self-serve.
- Try itThe live demo, with a made-up school in it. No signup, no email.Open the live demo
- See your own students in itSend an export and get a private link back. Free, nothing to sign.Send a CSV
- Start on CoreFrom $99 a month. No contract, cancel from inside the software.Start on Core
Rather talk it through first? Book a call: twenty minutes on a screen share, your own numbers, no slides.