Skip to content
free template · one row per client · Google Sheets or Excel

Client tracker spreadsheet for personal trainers: one row per client, nineteen columns, two formulas.

The client record every trainer ends up keeping, built properly once: who they are, what they pay and when it renews, how many sessions are left, when they last checked in and the one thing you owe them next. Switch the column groups you need on or off, then copy the header row into Google Sheets, print the sheet, or download the CSV with five example clients and the formulas explained below. Free, no sign-up.

By Markus Evers · Updated September 2026

build your client tracker

Column groups

Session packs is off by default because most online coaches bill monthly; switch it on if you sell packs of sessions. Each chip adds or removes its whole group of columns in the header, the copied row and the printed sheet.

The client tracker columns currently switched on, with the group each belongs to and an example value
ColumnGroupExample
ClientContactAnna K.
EmailContact[email protected]
PhoneContact+44 7700 900123
Start dateContact2026-03-02
GoalContactFat loss, wedding in June
PackageBilling1:1 online, monthly
PriceBilling150 / month
Renewal dateBilling2026-10-02
Last paymentBilling2026-09-02
Start weightProgress78.4
Current weight (2-week avg)Progress72.9
Last check-inProgress2026-09-21
Days quietProgress4
StatusStatus and next stepActive
Next actionStatus and next stepRecalc calories Friday
NotesStatus and next stepPrefers voice notes

16 columns switched on.

Print gives you a paper tracker; the copied row pastes into cell A1 of an empty Google Sheet as one column per field.

A client tracker spreadsheet for a personal trainer is one row per client with five groups of columns: contact, billing, session packs, progress and status. Two columns should be formulas, not typed numbers: sessions left (bought minus used) and days since the last check-in. This template downloads as a CSV for Google Sheets or Excel.

nineteen columns

What goes in a client tracker for a personal trainer?

Everything you need to answer three questions without opening anything else: who is this, are they paid up and renewing, and do they need me this week. Nothing more, because a tracker you have to scroll sideways through twice stops getting updated. Program details, meal plans and check-in answers live in their own documents; the tracker only records when the last check-in arrived. The letters are the column positions in the downloaded file, which the formulas below refer to.

The nineteen client tracker columns, their spreadsheet letter, group, what goes in each and an example
ColColumnWhat goes in itExample
AClientContactFirst name and initial. The sheet is shared with nobody, but it still gets screenshotted.Anna K.
BEmailContactThe address their invoices and check-in reminders go to.[email protected]
CPhoneContactOnly if you actually call or message on it.+44 7700 900123
DStart dateContactThe day coaching started, not the day they signed. Tenure is read from here.2026-03-02
EGoalContactTheir words, one line, with a date if they gave one.Fat loss, wedding in June
FPackageBillingWhat they bought: 1:1 online monthly, a 12-week block, a session pack.1:1 online, monthly
GPriceBillingWhat they pay and how often, as agreed. Price rises are read from here.150 / month
HSessions boughtSession packsFor pack clients only: sessions in the current pack.12
ISessions usedSession packsUpdated after every session, by you, the same day.9
JSessions leftSession packsA formula, never typed: bought minus used. Renewal talk starts at 3.3
KRenewal dateBillingWhen the current month, block or pack ends.2026-10-02
LLast paymentBillingDate the last payment actually landed, not the invoice date.2026-09-02
MStart weightProgressOnly if weight matters to the goal. Pick kg or lb for the whole sheet.78.4
NCurrent weight (2-week avg)ProgressThe average of the last two weeks of weigh-ins, not this morning.72.9
OLast check-inProgressDate of the last check-in they actually sent.2026-09-21
PDays quietProgressA formula: today minus last check-in. The column that catches a client before they cancel.4
QStatusStatus and next stepLead, active, paused or ended. Four words, nothing else.Active
RNext actionStatus and next stepThe one thing you owe them next, with a day.Recalc calories Friday
SNotesStatus and next stepAnything you would otherwise have to remember. No diagnoses, no health detail you do not need.Prefers voice notes
two formulas

Which columns should calculate themselves?

Two, and they are the reason to keep the tracker in a spreadsheet rather than a notebook. Paste each into row 2 of the downloaded sheet and copy it down the column. Both work unchanged in Google Sheets and Excel.

column J · sessions left

=IF(H2="","",H2-I2)

Bought minus used, blank for anyone not on a pack. Add conditional formatting for 3 or less and the renewal talk happens three sessions before the pack runs out, not after the last one.

column P · days quiet

=IF(O2="","",DAYS(TODAY(),O2))

Days since the last check-in. Colour over 7 amber and over 14 red, sort by it on Monday, and message the top rows first. Missed check-ins are the earliest warning you get; the rest of that list is in how to spot at-risk clients before they quit.

google sheets, excel, numbers

Can I use this client tracker in Google Sheets or Excel?

Yes: download it as a CSV, which Google Sheets, Excel and Numbers all open as nineteen columns. The file holds the five example clients below and twenty blank rows, with the two formula columns left empty so you can paste the formulas in. In Google Sheets use File, Import, Upload; in Excel, open the file and save it as .xlsx. Then freeze row 1, put the four status words (lead, active, paused, ended) on column Q as data validation, and delete the example rows once you have seen how they read.

Download the CSV (5 examples + 20 blank rows) Opens in Google Sheets, Excel and Numbers. Nineteen columns, header row included.

What a filled-in client tracker looks like

Five illustrative clients on 25 September, eight of the nineteen columns shown: one on track, one three sessions from the end of a pack, one who has gone quiet for eleven days, one paused and one lead. Sort it by days quiet and the row that needs a message today comes first.

A filled-in client tracker example for a personal trainer with five illustrative clients
ClientPackageSessions leftRenewal dateLast check-inDays quietStatusNext action
Anna K.1:1 online, monthly-2026-10-022026-09-214ActiveRecalc calories Friday
Jonas P.12-session pack + program32026-10-102026-09-232ActiveRenewal talk next session
Mia L.1:1 online, monthly-2026-10-122026-09-1411ActiveMessage today: 11 days quiet
Sofie R.1:1 online, monthly--2026-08-3026PausedCheck in 1 October about restarting
Emil T.-----LeadFollow up Friday after the call
the limit

When does a client spreadsheet stop working?

Not at a row count. It stops when the tracker is no longer the only sheet: the last check-in date is copied in from a message thread, the payment date from Stripe, the weight from a check-in form, and each client now needs four places updated by hand every week. At 10 clients that is ten minutes; at 40 it is the Sunday afternoon. The six sheets most coaches end up keeping, and what replaces each one, are in online coaching without spreadsheets. In Coachway the same row fills itself: every client on one screen with their last check-in, messages, training and payment status beside them, filterable by missing check-ins or no contact, and payments settle in your own Stripe account.

use this template with ChatGPT

How do you adapt the tracker to how you sell?

Paste the header row, not your clients. Describe how you sell and ask for the formulas and formatting rules for your own column letters; the model is good at spreadsheet syntax and has no need to see a single real name. What not to paste into a chat tool is covered in can you put client data in ChatGPT.

1

Adapt the tracker to your packages

When to use it: After you have switched the column groups on or off and copied the header row.

What to paste in: The copied header row and one paragraph on how you sell: monthly, 12-week blocks, session packs, or a mix.

You are helping me, a personal trainer, set up a client tracker in Google Sheets. I am pasting the header row of my tracker and a description of how I sell coaching. Do three things. 1) For every column that should be calculated rather than typed (sessions left, days since last check-in, days until renewal, anything else that follows from the other columns), give me the exact formula for row 2 using my column letters, written so it stays blank when the inputs are blank. 2) Give me conditional-formatting rules that highlight the rows I should act on this week, with the thresholds explained in one line each. 3) Tell me which of my columns I could delete without losing anything I use. Do not invent columns I did not list. Do not ask me for client data; the structure is enough.

MY HEADER ROW
[PASTE THE HEADER ROW]

HOW I SELL
[ONE PARAGRAPH]

questions coaches ask

Frequently asked questions.

What should a personal trainer track about each client?

Five groups of columns, one row per client: contact (name, email, start date, goal), billing (package, price, renewal date, last payment), session packs if you sell them (bought, used, left), progress (start and current weight if it matters, last check-in, days since the last check-in) and status (lead, active, paused or ended, plus the one next action you owe them). Program details, meal plans and check-in answers do not belong in the tracker; they belong in their own documents, linked from the notes column if you have to.

Can I use this client tracker in Google Sheets or Excel?

Yes. The download is a CSV file, which Google Sheets, Excel and Numbers all open as nineteen columns without conversion: five filled example rows and twenty blank ones. In Google Sheets use File, Import, Upload; in Excel, open the file and save it as .xlsx. The builder on this page copies only the columns you switched on, as a header row, if you would rather start from an empty sheet.

How do I count sessions left automatically?

Make sessions left a formula instead of a number you type. In the downloaded sheet it is column J, so in J2 enter =IF(H2="","",H2-I2) and copy it down: bought minus used, blank for clients who are not on a pack. Add conditional formatting on column J for values of 3 or less, and the renewal conversation starts three sessions before the pack runs out instead of the session after.

How do I see which clients have gone quiet?

A days-quiet column. In the downloaded sheet the last check-in date is column O, so in P2 enter =IF(O2="","",DAYS(TODAY(),O2)) and copy it down, then colour anything over 7 amber and over 14 red. Sort by that column on Monday morning and the first rows are the clients to message before they decide to cancel.

How many clients can a spreadsheet handle?

The sheet itself holds thousands of rows; the limit is you. Up to around 15 clients one tracker is quick to keep current. Past 30 the tracker is still fine, but it is now one of five or six sheets (programs, check-ins, meal plans, payments, leads) that all need the same client updated by hand, and that cross-updating is where the hours go. That is the point to compare it against a coaching platform, not before.

Is it safe to keep client data in a spreadsheet?

It can be, if you keep less in it. Store what you need to run the relationship, not health detail you have no use for; keep the file in an account with two-factor sign-in; share it with nobody who does not coach that client; and delete a client's row when you delete the rest of their data. In the EU the GDPR, and in the UK the UK GDPR, applies to the sheet exactly as it applies to any software.

Should I track progress in the same spreadsheet?

Only the one or two numbers you decide on: a two-week average weight or a key lift, plus the date of the last check-in. The full check-in answers, photos and training logs belong in a separate log per client, because a tracker with forty progress columns stops being something you read at a glance. The tracker answers who needs you this week; the log answers why.

Can ChatGPT build or update this tracker for me?

It can set it up: paste the header row and a description of how you sell (monthly, blocks, session packs), and ask for the formulas and conditional-formatting rules for your column letters. Do not paste real client rows into a consumer chat tool unless you have checked what it keeps; describe the structure instead.

Keep going: the check-in questions that fill the last check-in column in the weekly check-in form, the details that belong in the notes column from day one in the client intake form, what a CRM adds on top of a tracker in CRM for personal trainers, and the full templates library.

The tracker that fills itself in

Every client on one screen with their last check-in, messages and payment status beside them. Start the 14-day free trial and move one client over: cancel any time under Billing.

No charge today - cancel anytime under Billing
Built for efficiency 6 languages DenmarkNorwaySwedenFinlandGermanyUnited Kingdom
The coaching platform you've been waiting for