How to Track Hours for Hourly-Paid Instructors
Cover image ·
The problem with tracking instructor hours on a spreadsheet
You know roughly how many hours each instructor worked. They taught their sessions, sat in on a staff meeting, covered the front desk for an hour. But when payroll week arrives, you're piecing it together from a shared calendar, a few text messages, and whatever your instructors remembered to write down.
The result is either a conversation you don't want to have ("I'm pretty sure I worked 14 hours, not 12") or a habit of rounding up to keep the peace. Neither is sustainable once you have more than two or three instructors.
This article gives you a clean system for tracking both teaching hours and non-teaching hours — one that works whether you're running it on paper, a spreadsheet, or any scheduling tool.
Two types of hours you need to track separately
Hourly instructors typically earn pay for two distinct categories of time:
Teaching hours — sessions with students that appear on the schedule
Non-teaching hours — everything else: staff meetings, admin tasks, front-desk shifts, training, driving between locations
Most schools track teaching hours reasonably well because those sessions are already on the calendar. Non-teaching hours are where things fall apart, because there's no natural place to record them.
Treat these as two separate problems with two separate solutions.
Tracking teaching hours
Use attendance as your source of truth
A session on the calendar is not the same as a session that happened. An instructor might be scheduled for six sessions in a week but only deliver five. If you pay based on the schedule rather than actual attendance, you'll overpay — and you'll have no record to refer back to if a dispute arises.
The cleanest approach: only count a session toward payroll once it has been marked as attended. This means your attendance record and your payroll record are the same document, not two separate things you have to reconcile.
Practical step: Add an "attended / did not attend" column to whatever you use to track sessions — a spreadsheet, a paper register, a shared calendar note. At the end of each week, filter for attended sessions only, then multiply by the instructor's hourly rate.
Handle pay rate differences by service type
If an instructor earns different rates for different types of teaching — say, £30/hour for one-to-one lessons and £20/hour for group classes — you need to track hours by service type, not just by instructor.
A simple way to do this in a spreadsheet: one row per session, with columns for instructor name, service type, duration, and rate. A SUMPRODUCT formula can then calculate total pay per instructor automatically.
Tracking non-teaching hours
This is where most schools have a gap. Non-teaching time is real work, it costs real money, and it often goes unrecorded because there's no student attached to it.
Create a named category for each type of non-teaching work
Vague categories create disputes. "Admin" could mean anything. Instead, define specific categories upfront:
Staff meeting
Front desk / reception
Training
Curriculum prep
Travel between sites
When instructors log time, they pick a category. This makes it easy to see, at a glance, where non-teaching hours are going — and to spot if one category is growing unexpectedly.
Many schools that have tried to solve this problem have landed on the same approach: treat non-teaching time as a schedulable block, just like a lesson, so it appears in the same place as everything else rather than living in a separate system.
Set a clear logging deadline
Non-teaching hours that aren't logged within a few days tend not to get logged at all. Set a weekly deadline — for example, all hours for the week must be submitted by Sunday at 8 pm — and make it a condition of payroll processing. If hours aren't submitted, they aren't paid that cycle. This sounds harsh, but it's fairer than guessing.
Agree on pay rates before work happens
Non-teaching hours often attract a different rate than teaching hours. A music school might pay £25/hour for lessons and £12/hour for front-desk coverage. Whatever your rates are, write them down and share them with instructors before they start logging time. Disputes almost always come from ambiguity, not bad faith.
One school found that a staff member's non-teaching rate had been entered incorrectly — at £50/hour instead of £23/hour — and only caught it when reviewing payroll. A written rate card, confirmed by both parties, would have caught that before any hours were logged.
A simple weekly payroll template (no software required)
Copy this structure into a spreadsheet:
Instructor | Session type | Date | Duration (hrs) | Rate (£/hr) | Pay (£) | Attended? |
|---|---|---|---|---|---|---|
Jane | Piano lesson | Mon | 1.0 | 30 | 30 | ✓ |
Jane | Staff meeting | Mon | 0.5 | 15 | 7.50 | ✓ |
Jane | Piano lesson | Wed | 1.0 | 30 | 30 | — |
At the end of the week, filter the "Attended?" column for ✓ only, then SUM the Pay column per instructor. That's your payroll figure.
For non-teaching hours, add rows the same way — just use the appropriate category and rate. The key is that everything lives in one place, not split across a calendar, a text thread, and a memory.
What to do when an instructor has multiple pay rates
Some instructors teach multiple subjects or fill multiple roles, each at a different rate. The simplest approach: track hours by role, not just by person. Each row in your log has a role attached to it, and each role has a rate. When you sum up pay, you're summing role-hours × role-rate, not just total-hours × one-rate.
If an instructor switches roles mid-week — teaching in the morning, covering the front desk in the afternoon — those are two separate rows in the log, not one combined entry.
Contractors vs. employees: one tracking difference that matters
If some of your instructors are contractors rather than employees, your tracking system is the same — but what you do with the output differs. You're producing a record of hours worked and amounts owed, not running payroll in the employment-tax sense. Make sure your log is detailed enough to serve as a basis for invoicing or payment, with dates, durations, and rates clearly recorded.
A note on what we built
Tracking instructor hours manually works, but it breaks down as your roster grows. That's the problem Noto was built to solve — automatically calculating payroll from attended sessions, and giving staff a way to log non-teaching time (meetings, front-desk shifts, training) so it flows into payroll alongside teaching hours, with separate rates per role. If you're at the point where the spreadsheet is taking more time than it should, that's what we do.







