Home › Blog

How to Track Lesson Packages Without a Spreadsheet

Young Woong Moon · working golf lesson pro, developer of ProField · October 23, 2026

I didn't build a spreadsheet for my golf students. I built something simpler and worse: a notes app entry that said a name and a number, updated whenever I remembered to open it. A friend of mine who teaches Pilates did it properly, with an actual Google Sheet — columns for sessions purchased, sessions used, a formula for sessions remaining. Both of us hit the same wall eventually, just at different student counts. Hers was a cleaner failure than mine, but it was still a failure.

This isn't really an argument against spreadsheets. It's about what a lesson package actually needs — someone to always have the current, correct number, reachable without a lookup — and why that's a harder job than it looks, no matter how good the sheet is.

1. Where a spreadsheet actually breaks down

A spreadsheet is accurate exactly once: the moment you last updated it. Every lesson that happens between that moment and the next update is a number the sheet doesn't know about yet. For one student, that gap closes itself — you remember. For ten students booked across a week, with a few reschedules and a cancellation mixed in, the gap is where every disagreement starts.

The second failure is quieter: a student can't see the sheet. Even a perfectly accurate spreadsheet only answers "how many do I have left?" when you're the one looking at it. If a student wants to check on a Sunday night whether they need to rebook, the honest answer is "ask your coach," which is the opposite of what a tracking system is for.

2. Two coaches, two different ways it went wrong

My Pilates-instructor friend ran a shared Google Sheet with her assistant, who covers her Tuesday sessions. Two people editing the same cells, from two different phones, on two different days, is exactly how a formula gets overwritten by a typed-in number that looks fine until it's wrong. She didn't notice until a client insisted she had three sessions left when the sheet said one — and the client was right. The assistant had deducted a cancelled session that should have been restored.

I went the other direction and never built a sheet at all — just a mental count backed by scrolling through old chat messages when I needed to double-check. That worked until I had two students with the same first name, both telling me they had "a couple left," and I genuinely couldn't say which one of them was right without reconstructing a month of texts. Neither setup was lazy. Both were just one person's memory wearing a different outfit.

3. What package tracking actually needs to answer, on command

Whatever system you use, it needs to answer these four questions instantly, not "let me check and get back to you":

Compare the two possible answers to the same question, asked mid-lesson:

"Hmm, let me check — I think you've used seven? Give me a second to scroll back through our messages."
"You've got 3 left on your 10-pack, good through November 20th."

Both answers take about the same ten seconds to say out loud. The difference is whether that ten seconds comes from a system that already knew, or from you reconstructing it live while the student watches you search for it.

Tracking methodCan the student check it themselves?What breaks it
Memory / chat historyNoTwo students with similar schedules; any gap longer than a week
SpreadsheetNo, unless you share itA second editor; a manually typed number overwriting a formula
Shared spreadsheet linkYes, but they can edit or misread itAccidental edits; no automatic deduction on booking
Booking app with automatic deductionYes, always currentNothing — the number updates itself when a session is booked or cancelled

4. The fix isn't a better spreadsheet — it's moving the number out of your hands

Every spreadsheet failure above has the same root cause: a human has to remember to update a cell, and humans remember late, remember wrong, or don't remember at all once there's more than a handful of students. A formula can calculate correctly, but it can't notice that a lesson happened and type the new number in by itself.

The actual fix is removing that step entirely — a system where booking a session deducts it automatically, and cancelling one (within your deadline) restores it automatically, so the number is never "as of my last update." It's just current.

5. Moving a spreadsheet list over without starting from zero

The part that keeps coaches on a broken spreadsheet longer than they should be is the fear of re-entering every student by hand. You don't have to. Here's the actual order I'd do it in:

  1. Export or copy your current list — names, remaining sessions, expiration dates if you track them. A messy list is fine; you're about to clean it up anyway.
  2. Add everyone as a direct entry first. In ProField, this means pasting your list in at once and adding each student directly, with their current session count carried over — no student needs to install anything yet, and nothing resets to zero.
  3. Keep booking as normal for a week. Every session you log now deducts automatically, so you stop manually editing counts from day one, even before any student has signed up themselves.
  4. Invite students individually, on your own timeline. Send a personal invite code when it suits each student. The moment they accept it, their package and booking history connects to their new account — the count just continues, it doesn't restart.

Nothing about this requires a clean break or a day where everything is down. The spreadsheet and the app can overlap for as long as you need.

6. What actually changes once the count isn't your job anymore

The honest answer is: less than you'd expect, day to day, and more than you'd expect, in the moments that used to be awkward. You stop opening a sheet before answering a simple question. You stop being the one who has to say "actually, I think that's wrong" when a student's memory and your sheet disagree. And a cancelled session returning to the count automatically means you're not the one deciding, case by case, whether to give it back.

This is the exact problem I built the package tracking in ProField to solve — for my own students first. A package is created once, and every booking deducts a session automatically; a cancellation inside your deadline restores it automatically. The student sees the same number you do, at any time, without asking. Students who don't want to install anything can still be added directly, with their list imported in bulk, and connected later with a personal invite code whenever they're ready — their history moves with them.

A quick checklist

1) Know your four answers — sessions left, expiration, cancellation status, student visibility — without a lookup. 2) If two people ever edit the same tracker, expect it to drift; plan for it or remove the second editor. 3) Move your list over in bulk, not one student at a time. 4) Let deduction and restoration happen automatically instead of by hand. 5) Give every student a way to check their own count. Get these right and the tracking stops being a part of your job at all.

Try a lesson app built by a coach

Automatic lesson-pack tracking · bulk student import · your own cancellation deadline · self-booking — free to use

App Store Google Play Use it on the web

FAQ

Isn't a spreadsheet good enough for a small number of students?

For two or three students, yes — the whole sheet fits in your head anyway, so the spreadsheet is just a backup. The problem shows up once you're juggling eight or ten packages at once, each with a different number of sessions left and a different expiration date, and you're updating the sheet from memory after the fact instead of in the moment.

How do I move my student list off a spreadsheet without re-entering everyone by hand?

You don't have to re-type each row one at a time. In ProField you can paste your existing list in at once and add every student as a direct entry, with their remaining sessions carried over, instead of typing each name individually. None of them need to install anything for this step.

What happens to a student's package history once they're moved into the app?

Nothing is lost. A student you added directly keeps their package and booking history under their name. If you later send them a personal invite code and they create an account, that history connects to their new login automatically — the count simply continues from wherever it was.

Read next