Billing Coaching Packages, Sessions, and No-Shows
· 4 min read
A client books a six-session package, pays up front, and then cancels a session with two hours' notice. Another client pays per session and misses two in a row without a word. Both situations end on an invoice, and both go badly if the line items are vague. The fix is not a stern email. It is a clearer invoice.
Here is how to structure the three billing shapes most coaches deal with, and how to put cancellation and no-show fees on paper in a way that reads as fair rather than punitive.
Package billing: charge for the block, not the sessions
When you sell a package, you are selling a block of work at a set price. Do not list six identical session lines at your per-session rate. That invites the client to do the math and ask why the package costs the same as buying sessions one by one. If the package is discounted, show the discount as its own line so the value is visible.
A clean package invoice has one line for the block and, if applicable, one line for the reduction:
| Description | Qty | Amount |
|---|---|---|
| Coaching package, 6 sessions (Jan to Mar) | 1 | 1,200.00 |
| Package discount vs single-session rate | 1 | -120.00 |
The single line that describes the whole package sets expectations. It says the client is buying a program, not renting your calendar by the hour. That framing matters when a session gets cancelled, because a session inside a paid block is not the same thing as a session you are owed money for.
Coaching runs on packages, retainers, and one-off sessions in the same month, and the invoicing tool should not force all of them into an hourly grid. JupiterInvoice was built for the way coaches and personal-practice consultants bill, so a package line, a session line, and a fee line can sit on the same document without a workaround.
Single sessions: one line, dated, described
Drop-in and pay-as-you-go clients want a receipt they can read at a glance. Give each session its own dated line. Vague descriptions like "Coaching x2" get questioned; dated ones get paid.
| Description | Qty | Amount |
|---|---|---|
| 60-min coaching session, 4 Feb | 1 | 200.00 |
| 60-min coaching session, 18 Feb | 1 | 200.00 |
For per-session clients, invoice on a rhythm they can predict, monthly in arrears works well, and set clear terms for when payment is due. If you want faster turnaround on small session invoices, due on receipt or Net 7 is reasonable at this size. There is a whole practice to getting invoices paid faster that is worth reading before you settle on terms.
No-shows and late cancellations: make the policy a line item
A cancellation fee only works if the client agreed to it before the session, and if it appears on the invoice as its own line with a plain label. Bury it in a total and you will spend an afternoon defending it. Spell it out.
Two things make a no-show fee stick. First, the policy exists in writing before the booking: a cancellation window (say, 24 hours) and the charge that applies inside it. Second, the invoice line references that policy directly.
| Description | Qty | Amount |
|---|---|---|
| Late cancellation fee, 11 Feb session (under 24h notice, 50% per policy) | 1 | 100.00 |
| No-show fee, 25 Feb session (full rate per policy) | 1 | 200.00 |
Notice the label carries the reason and the rule. "Late cancellation fee, under 24h notice, 50% per policy" tells the client exactly what happened and why, without a separate conversation. A no-show is usually charged at the full rate; a late cancellation is often charged partial. Pick your numbers, write them down once, and let the invoice do the explaining.
For package clients, a missed session inside a paid block is not a separate charge. The session is already paid. Your policy should say whether it is forfeited or rescheduled. Only bill an extra fee when the client owes money that was not already collected, which is the pay-per-session case.
When the client disagrees with a fee
Some clients will accept the sessions and question the no-show line. Rather than reissue the whole invoice or argue over email, let them flag the specific line. In JupiterInvoice the recipient can request a change to a line item without editing your numbers directly. You approve or decline, and if you agree to waive the fee, the change creates a clean new version with a full trail. No parallel PDFs, no confusion over which figure is current.
That trail matters when a fee is disputed. Every edit becomes a tracked version you can revert in one click, so you always know what was sent, what changed, and what the client approved.
Send it, and let them approve
Build the invoice with the right line shape for the client, package block, dated sessions, or session plus a labelled fee, then create the invoice and share a link. The client opens it, adds a PO number if their company needs one, and approves it for payment. When it is approved, that version locks, and you have a clear record of what was agreed.
Set your cancellation policy in writing before the next booking. Then the fee is never a surprise, and the invoice is just a summary of a rule the client already accepted.