Skip to content
Sign in
Admin

Grade limits and schedule conflicts

Two optional rules that stop an enrollment that wouldn’t work. Both are off until you turn them on.

Last reviewed

Open Programs settings
More on this topic

Keeping students in the right grade or age range

Every class has a grade level (“K–2nd”, “3rd–5th”, “Ages 5–8”, “All ages”), and every student has a grade on their profile. Whether the class's grade level is only a label and a catalog filter, or a rule that keeps a second grader out of a class set for 6th–8th, is a co-op setting. Co-ops created since September 2026 start with the rule on; co-ops from before then start with it off, so nothing changed for them, and can turn it on whenever they like.

1Go to Admin → Settings (Programs area) and find the Class grade limits card.
2Check or clear Only let students enroll in classes for their grade and click Save.

With it on, the family catalog greys out any child who is outside a class's grade range and says why (“Ivy is in 3rd grade; this class is for K–2nd”). The same check runs when the enrollment is actually submitted, on the website and in the mobile app, so a stale page can't slip one through.

Three things the rule leaves alone, on purpose:

  • A class with no grade range (blank, or “All ages”) is open to everyone, as it always was.
  • A student with no grade on file, or a grade that isn't on the K–12 scale (“Adult”, “Graduate”), is never blocked. The rule only acts when it knows both sides. If you want it to cover everyone, make sure each student's profile has a grade. The same goes for a class set by age and a student with no birthdate on file.
  • Admins enrolling a student by hand from the class page are not blocked. That is the override for a child who is ready for the class even though their grade says otherwise; the picker there notes when a student is outside the range so the exception is a choice, not an accident.
Tip: Turning the rule on doesn't touch anyone already enrolled; it applies to enrollments from that point on. Grade ranges come from the text you type in the class's Grade level field. “3rd–5th”, “K”, and “2nd and up” all become a range; “Mixed ages” does not, and that class stays open to all. Grades joined with a slash, “&”, a comma, “and” or “through” cover every grade in between, so “1/2”, “3rd & 4th” and “K, 1st, & 2nd” work the way you'd expect. So does a range that starts at Pre-K, such as “Pre-K–2nd” or “Pre-K & Kindergarten”.

Classes set by age

You can type ages instead of grades: “Ages 5–12”, “9–13 year olds”, “13+”, or “Infants up to age 2”. With the rule on, that class is held to those ages instead of a grade. A student's age is counted on the first day of the term, from the birthdate on their profile, so a birthday partway through the term doesn't change anything. The reason a family sees reads like “Ivy will be 9 when the term starts; this class is for ages 5–7.”

A few details about how we read what you type:

  • A plain number range is grades unless it can't be. “9–11” means 9th through 11th grade. “12–16” means ages, because no grade goes past 12th; add the word “ages” if you want to be sure.
  • A band that mixes ages with something else, such as “Ages 11–13, Highschool”, or one that names months or a date, has no limit at all. Split it into plain ages if you want it enforced.
  • Under the Grade level field, a line starting Read as shows how we read the text as you type it: grades, ages, or no limit.
homeschoolgo.app/dashboard/admin/settings?tab=programs
Both rules live in Admin › Settings › Programs.

Keeping students out of overlapping classes

You can stop a student from being enrolled in two classes that meet at the same time. Co-ops that join HomeschoolGo now start with this rule on. If your co-op was set up before October 8, 2026, it starts off, and you can turn it on in Settings. Some co-ops leave it off on purpose: two classes that alternate weeks in one slot, or a class that only runs for half the term.

1Go to Admin → Settings (Programs area) and find the Schedule conflicts card.
2Check Don't let a student enroll in two classes at the same time and click Save. Uncheck it and save to turn the rule off.

Two classes overlap when they meet on the same day, their times overlap, and they meet in the same weeks of the month. A class that ends at 10:30 and one that starts at 10:30 don't overlap. Neither do a 1st-and-3rd-Monday class and a 2nd-and-4th-Monday class in the same slot. A class that meets on several days overlaps if any one of its meetings does.

With the rule on:

  • Families see the child greyed out in the catalog with the reason (“Already enrolled in ASL 1 at this time”), and the cart flags two overlapping classes before checkout. The enrollment is refused when it is submitted, on the website and in the mobile app, and that includes joining a waitlist.
  • Admins adding a student from the class page or the student's page, or promoting one from a waitlist, see a warning naming the other class. Click Enroll anyway if the overlap is intended. Teachers who promote from their own waitlist get the same choice.
  • Automatic waitlist enrollment, if you use it, skips a student whose class would overlap and gives the seat to the next family in line. The skipped student stays on the waitlist for you to promote by hand.
Tip: Only enrolled classes count. A waitlist spot, a dropped class, or a cancelled class doesn't block anything. Turning the rule on doesn't change anyone already enrolled; it applies to enrollments from then on.

Seeing the whole term at once

To find students who are already double-booked, open the Class Catalog in manage mode and click Class matrix, next to Browse catalog. Owners and admins see this button. The matrix lists every student with a class in the term, grouped by family, against the term's time slots, with the classes each student takes in each slot.

  • A red cell means the student is enrolled in two classes that meet at the same time. It uses the same overlap rule as the setting above, but it works whether the setting is on or off.
  • An amber Open cell is an empty slot on a day the student already comes to co-op.
  • Waitlisted classes show in italics and don't hold a seat. Classes with no time slot go in an Unscheduled column.

Above the grid, Seats by time slot shows how full each class is, with waitlist counts. You can search by student or family name, show only double-booked students or only students with an open slot, narrow to one day, and click Download CSV to save what you're looking at. The page only shows information. Nothing on it changes an enrollment.

To get parents' schedules in the same file, tick Include parents & staff before you download. Each family then gets a row for every adult who can sign in, showing the class they teach or assist in each time slot, or Free when one of their children has class and they don't. A last column lists their volunteer shifts for the term, including ones already worked. Teachers and volunteers who aren't part of a family are listed at the end. A parent only shows a class once they're added as its teacher or assistant on the class.