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

State approvalIndependent English language schools in California operate under approval from the Bureau for Private Postsecondary Education, with the Annual Report, the STRF filing, the enrollment agreement disclosures and the catalog that come with it
F-1 studentsA school that issues I-20s is certified by SEVP and, since the Accreditation of English Language Training Programs Act of 2010, accredited by ACCET or CEA. Each one inspects, and each one wants attendance and enrollment records that agree
Full course of studyAt least 18 clock hours a week in class for an F-1 student in a classroom-based English program (22 if most of it is lab). The designated school official certifies it from the attendance the school keeps
How the school runsShort sessions and rolling starts. Morning, afternoon, evening and weekend tracks. Levels from beginner to advanced, with students moving up every few weeks and the roster changing every Monday
What students ask the office forEnrollment verification letters, for a bank account, an apartment, the DMV or a trip home, and attendance records when their status is questioned. Often, and always urgently

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.

Admissions to enrollment

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 →
The Udooku applications pipeline, listing applicants by program with statuses from submitted to accepted
Levels, tracks and attendance

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 Udooku attendance grid for a cohort, with present, absent, tardy and leave codes per session and a running percentage per student
Letters and documents

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 →
A student's Academics tab in Udooku, listing an issued transcript, a certificate of completion and a voided transcript
Signatures and the student folder

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 →
A student's Documents tab in Udooku, showing a signed enrollment agreement attached to the record alongside uploaded files

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.

The general-purpose school tools these schools usually compare against do a roster and a gradebook well and stop there. None of them has heard of a BPPE Annual Report or an STRF quarter, and none of them is built around a student who changes cohort every eight weeks. That is the gap this page is about.

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.

  1. Try itThe live demo, with a made-up school in it. No signup, no email.
    Open the live demo
  2. See your own students in itSend an export and get a private link back. Free, nothing to sign.
    Send a CSV
  3. 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.