College Scheduler — conflict-free class schedule builder
Enter your courses and every section you would take. This college schedule builder checks every section combination for time conflicts, applies your preferences — no early mornings, capped gaps, days off, instructor exclusions, credit range — scores each surviving timetable, and ranks the best weekly class schedules for you. 100% free, runs entirely in your browser.
- Planning your GPA instead of your timetable? Try the college planner — semester GPA, target-GPA reverse solver, course-load balancer and study planner. This scheduler only arranges when your classes meet; the planner handles how you perform in them.
- Saving up for tuition instead of building a timetable? See the 529 college savings calculator — education-savings planning. This scheduler only arranges class times.
Your courses & sections
Add each course, then every section you would accept — with all of its meeting times. The generator picks exactly one section per course. A section can hold several meetings (e.g. lecture + lab that must stay together).
Section conflicts across courses
Import from CSV
One meeting per line:
CODE,Course Name,credits,SECTION,days,start,end,instructor,room — days use letters
M T W R F S U (R = Thursday). Example:
MATH201,Calculus II,3,A1,MWF,09:00,09:50,Dr. Chen,Sci 204
Preference filters
Every filter is optional. A schedule must pass all active filters to survive.
Generated schedules
Set up courses and filters, then generate. Results are ranked by schedule score.
Export
Exports the currently selected schedule as plain text.
Weekly grid
Generate schedules first.
How this college schedule builder works
Picking college classes is a combinatorial puzzle. A typical semester has 4–6 courses, each offered in 2–8 sections at different times, with different instructors. Checking every combination by hand is hopeless: 5 courses with 4 sections each is 45 = 1,024 possible schedules. This college scheduler does the exhaustive search for you, deterministically, in your browser — no account, no upload, no AI guessing.
- Enter your courses. For each course add its code, name and credit hours, then add every section you would accept: section ID, instructor, room, and each meeting time (days + start/end). Use the sample dataset, or paste rows in CSV format.
- Set your preferences. No classes before a certain hour, no classes ending after a certain hour, a cap on the gap between consecutive classes, days you want completely free, instructors to avoid, and a credit-hour range.
- Generate. The engine walks every section combination, prunes anything with a time conflict, applies your filters, scores what survives, and ranks the results.
- Compare and export. Inspect the ranked list, open any schedule in the weekly grid, and copy or download it as plain text.
The conflict rule, precisely
Two class meetings conflict only if they share at least one weekday and their time intervals strictly overlap. That strictness matters:
- Back-to-back is fine. A section ending at 9:50 AM and another starting at 9:50 AM do not conflict. You need every minute of passing time, but the scheduler counts it as valid.
- A one-minute overlap is a conflict. 9:00–9:50 vs 9:49–10:40 on the same day cannot both be taken — the engine rejects the combination.
- Same time, different days is fine. Monday 9:00 AM and Tuesday 9:00 AM never collide.
How gaps are measured
For each weekday, the engine sorts that day’s meetings by start time and adds up the idle stretches between consecutive classes. A 10-minute passing period counts as a 10-minute gap; so does a 3-hour dead zone. The schedule’s total gap is the sum over the week and the max gap is the single longest idle stretch on any one day.
Worked example 1: from 8 combinations to 5 valid schedules
The sample dataset preloaded in the tool above is exactly this example — press Generate and you will see the same ranking, with 74.0 on top.
Three courses, two sections each:
- MATH 201 — Calculus II (3 cr): A1 = Mon/Wed/Fri 9:00–9:50 AM (Dr. Chen); A2 = Mon/Wed/Fri 1:00–1:50 PM (Dr. Chen)
- ENGL 101 — Composition I (3 cr): B1 = Mon/Wed/Fri 9:30–10:20 AM (Prof. Alvarez); B2 = Tue/Thu 2:00–3:15 PM (Prof. Baker)
- HIST 110 — World History (3 cr): C1 = Mon/Wed/Fri 10:00–10:50 AM (Dr. Osei); C2 = Tue/Thu 9:30–10:45 AM (Dr. Osei)
Raw combinations: 2 × 2 × 2 = 8. Conflict analysis:
| # | Combination | Verdict |
|---|---|---|
| 1 | A1 + B1 + C1 | conflict A1 × B1 overlap Mon/Wed/Fri 9:30–9:50 |
| 2 | A1 + B1 + C2 | conflict A1 × B1 overlap Mon/Wed/Fri 9:30–9:50 |
| 3 | A1 + B2 + C1 | valid |
| 4 | A1 + B2 + C2 | valid |
| 5 | A2 + B1 + C1 | conflict B1 × C1 overlap Mon/Wed/Fri 10:00–10:20 |
| 6 | A2 + B1 + C2 | valid |
| 7 | A2 + B2 + C1 | valid |
| 8 | A2 + B2 + C2 | valid |
Five conflict-free schedules survive. Each is scored with the documented formula:
score = 100 − 5 × (days on campus) − (total gap minutes ÷ 30) − (10 if any class starts before 9:00 AM)
| Rank | Sections | Days | Total gap | Max gap | Score |
|---|---|---|---|---|---|
| 1 | A1 + B2 + C1 | 5 | 30 min | 10 min | 74.0 |
| 2 | A1 + B2 + C2 | 5 | 390 min | 195 min | 62.0 |
| 3 | A2 + B2 + C1 | 5 | 390 min | 130 min | 62.0 |
| 4 | A2 + B2 + C2 | 5 | 390 min | 195 min | 62.0 |
| 5 | A2 + B1 + C2 | 5 | 480 min | 160 min | 59.0 |
Check the winner by hand: A1 + B2 + C1 meets on all 5 weekdays. The only same-day neighbors are Mon/Wed/Fri, where A1 ends at 9:50 and C1 starts at 10:00 — a 10-minute gap, three times a week, for 30 minutes total. Score = 100 − 5×5 − 30/30 − 0 = 74.0. No class starts before 9:00 AM, so no early penalty. The last-place schedule’s 480-minute total gap comes from Mon/Wed/Fri 10:20 AM → 1:00 PM (160 minutes × 3 days): score = 100 − 25 − 16 = 59.0. Ties at 62.0 are broken by smaller gap, then fewer days, then alphabetical section IDs — fully deterministic, so re-running never shuffles the order.
Worked example 2: preference filters in action
Same three courses, now with two filters: no class before 9:30 AM and no gap longer than 200 minutes.
- Both A1 combinations die: section A1 starts at 9:00 AM, violating the morning rule.
- A2 + B1 + C2 survives with the worst passing grade: its 160-minute Mon/Wed/Fri gap is under the 200-minute cap, score 59.0.
- A2 + B2 + C1 and A2 + B2 + C2 survive at 62.0 each.
Three schedules remain, ranked 62.0, 62.0, 59.0. Now add one more preference — keep Friday completely free. Result: zero valid schedules. Every surviving combination includes a Mon/Wed/Fri section, so the day-off requirement wipes the board. That is the correct behavior, and the tool tells you so plainly: zero results always means your constraints contradict your course list, never a computation error. Relax one filter — allow Friday mornings, accept a longer gap, or drop a course — and combinations reappear.
Credit-hour guidelines: how much is a full load?
Under the widely used Carnegie-unit definition (U.S. Department of Education credit-hour rule), one semester credit hour means about one hour of class per week plus a minimum of two hours of outside work per week, over roughly 15 weeks. In practice most advisors quote 2–3 outside hours per credit. Use the scheduler’s credit min/max filter to stay inside a sane range:
| Credits | In-class hrs/week | Outside work hrs/week | Total weekly commitment | Typical meaning |
|---|---|---|---|---|
| 3 | 3 | 6–9 | 9–12 | One standard course |
| 12 | 12 | 24–36 | 36–48 | Minimum full-time status |
| 15 | 15 | 30–45 | 45–60 | On pace: 120 credits ÷ 8 semesters |
| 18 | 18 | 36–54 | 54–72 | Common per-semester cap |
A 15-credit semester is a 45–60 hour weekly commitment — a full-time job plus overtime. If the scheduler shows you a beautiful gap-free 18-credit timetable, the credit filter is there to remind you what that timetable actually costs in hours.
Understanding your schedule score
The score is a transparent heuristic, not a black box. Every term has a plain-English meaning:
| Term | Weight | Why it exists |
|---|---|---|
| Base | +100 | Starting point every schedule shares. |
| Days on campus | −5 per day | Fewer commute days usually beats more. A 4-day week scores 5 points above a 5-day week, all else equal. |
| Total gap time | −1 per 30 min | Idle hours between classes are the main thing students complain about. 390 minutes of gaps costs 13 points. |
| Early-class penalty | −10 | Any class starting before 9:00 AM. One flat penalty, not per class — the morning is either ruined or it isn’t. |
Ties break by smaller total gap, then fewer days, then alphabetical section IDs. Because the tie-breakers are total orders, the ranking is stable: the same input always produces the same list in the same order.
Practical tips for building a better semester
- Enter every section you would genuinely take, not just your favorites. The generator can only rank what it sees; a section you omit can never appear in the winning schedule.
- Respect the 10-minute passing period. Back-to-back classes across campus are technically conflict-free but practically miserable. Leave a building-change buffer by filtering or by preferring the gap the score rewards.
- Cap your longest gap, not just total gap. Two 30-minute gaps beat one 3-hour dead zone. A max-gap filter of 90–120 minutes keeps days compact.
- Front-load hard classes on your sharp days. If you focus best mid-morning, use the “no class before” filter loosely and let morning sections of tough courses win on score.
- Keep one weekday light or free for catch-up work — but check the zero-result case first (worked example 2): a day-off demand can eliminate everything.
- Watch the credit math. 12 credits keeps full-time status; 15 keeps four-year pace (120 ÷ 8). Set the credit filter before you fall in love with a schedule.
- Bundle lab + lecture sections correctly. If a lab must be taken with a specific lecture, enter them as meetings of one section so the generator never splits them apart.
- Exclude instructors deliberately. One exclusion can halve your options; the conflict panel shows you exactly which pairs die, so the trade-off is visible.
- Generate, then sanity-check the top 3 in the week grid. The score cannot see professor quality, classroom distance, or your part-time job — you supply that judgment.
- Re-run after registration shifts. Sections fill; delete the full ones and regenerate. The whole computation runs in milliseconds, so iterating is free.
What students call this tool (and what it actually does)
Students search for this kind of help under many names — a course schedule maker, a class schedule generator, a college timetable builder, or a university schedule builder — and they all describe the same job. This page is a college timetable maker free of accounts and paywalls: a class schedule maker no time conflicts are left for you to discover by accident.
As a weekly class schedule maker it draws your week as a visual grid. As a schedule builder multiple sections deep, it is really a college course combination generator: it enumerates every section combination so you can avoid class time conflicts without checking them by hand. The built-in college section picker workflow — enter courses, set preferences, generate — ranks the best college schedule combinations first. Preference filters include a no early morning classes filter, a class gap calculator for schedules that totals idle time between classes, and a days off schedule builder option that keeps a weekday completely free. Used as a semester schedule planner tool before registration opens, it is the fastest way to optimize college class schedule choices around the constraints that matter to you: build a college class schedule once, and let the ranking do the comparing.
Methodology and limits
The generator is an exhaustive backtracking search with conflict pruning: it builds combinations one course at a time and abandons a partial schedule the moment two sections collide. Every surviving combination is checked against all of your filters, scored with the published formula, and sorted with deterministic tie-breakers. Nothing is sampled, approximated, or AI-generated — if a valid schedule exists within the search cap (200,000 combinations), it will be found and ranked. The tool runs entirely in your browser; your courses never leave your device. It does not know seat availability, prerequisites, or registration rules — treat its output as the set of timetables worth trying to register, then confirm each section in your school’s official system.
Frequently asked questions
What is a college scheduler?
How does conflict detection work?
What counts as a gap between classes?
How is the schedule score calculated?
Can I require a day with no classes, like keeping Friday free?
What should I do if no valid schedule is found?
How many combinations can the generator check?
Can it handle a lab that must be taken with a specific lecture?
Is my course data uploaded or stored anywhere?
Can I export or print my schedule?
What is the difference between this scheduler and a GPA planner?
How many credit hours should I take per semester?
College Scheduler — deterministic section-combination search. Your data never leaves your browser.
Free tool by NRTechStudio