The best way for personal trainers to track sessions and payments

6 min read


Ask ten independent personal trainers how they track sessions and you will get ten answers, most of which are some combination of a notes app, a calendar, and a mental list of who owes money. It works until it does not, and the point where it stops working is almost always the same: you deliver a session you are not sure was paid for, and you decide not to ask.

The root problem

Sessions and payments are recorded in different places and at different moments. The session is recorded (if at all) right after it happens. The payment is recorded days later, when money lands, in a different app. Every gap between those two moments is a gap where the truth is unclear — and unclear is what stops you asking.

The fix in one sentence

Record the payment state at the same moment you record the session, even when the answer is "not yet".

What to capture after every session

Keep this list short. Anything you add beyond it is something you will skip on a busy Thursday, and a system you skip is worse than a shorter one you keep.

  • Which client. Obvious, and the only genuinely required field.

  • What happened: delivered, cancelled with notice, or no-show. Three different facts, never one blank.

  • Paid or not paid. Including "not yet" — that is the entry that saves you later.

That is it. Notes on the programme, load, and progression belong in your programming tool, not your session tracker. Mixing them is the single most common reason trainers abandon a tracking habit within a month: the record becomes a writing task instead of a two-second confirmation.

Per-session versus block payments

Most trainers have one model that covers the bulk of their clients, plus a few exceptions. The model decides what you need to watch.

  • Per-session clients: each session carries its own paid or unpaid state. The number you care about is how many unpaid sessions have stacked up.

  • Block or monthly clients: the payment covers a period, and the number you care about is how many sessions they have used inside it. Someone eleven sessions into a ten-session block is a conversation you want to have before session twelve.

Trouble comes from tracking in the wrong model. A monthly client logged session by session looks identical to a per-session client who has not paid for anything in six weeks. Pick the model most of your clients pay in, and handle the exceptions — a drop-in on top of a monthly fee — as one-off sessions with their own paid state.

Handling the awkward cases

These are the ones that erode a system, because each feels like an exception worth handling informally, and informal handling is what breaks the record.

  • Late cancellation you charge for: log it as a cancellation and mark it paid. It is not a delivered session and should not inflate your session count, but it is revenue.

  • Free session you agreed to: log it as delivered and paid. A gap in the record looks like a mistake in three months.

  • Client who pays for three sessions in cash upfront: mark all three paid when logged. Do not wait for the third to catch up the first two.

  • Session you delivered and genuinely forgot to log: add it retroactively rather than deciding the week is a write-off. One missing entry is fine; a habit of abandoning a bad week is not.

What this gets you

After a couple of months of consistent logging, three things become available that were not before. You know what you actually earn in a month rather than what it feels like. You can see which clients are drifting before they disappear. And chasing an unpaid session becomes a factual two-second check rather than an uncomfortable guess — which means you actually do it.

Blockday keeps sessions, attendance, and payment on one record, per client.

Common questions

Not in the same place. Keep programming where you write programmes. A session tracker that also demands training notes becomes a writing task, and writing tasks get skipped on busy days.

Track them as a monthly client and log every delivered session against them. The running session count shows what they actually used, which is the number you need when renewal comes up.

Start tracking in the next two minutes

Tap an hour, pick the client, and the session is logged. Attendance and payments stay current from the first day.

  • Free for up to 5 clients

  • No credit card

  • Installs on your phone


© 2026 Blockday. All rights reserved.