Lobby — home
Operations7 min read

Monthly reports every club owner should read

A club owner who reads 6 numbers once a month sees problems a quarter before they show up in the bank balance. Here are the 6, and what each one is telling you.

Lobby · Published 26 August 2026

01

Occupancy by hour band, not by month

A monthly occupancy figure hides everything useful. A club at 60 percent overall can be full from 18:00 to 22:00 on weekdays and empty from 10:00 to 16:00. The report should show occupancy by day of week and hour band, per court, so the empty blocks are visible as blocks.

Read it for two things: hours that are always full, where the price could rise or a waitlist should run, and hours that are always empty, where a class, open play, or an off-peak rate might fill them.

  • Occupancy per court, per weekday, per hour band
  • Hours above 90 percent: candidates for peak pricing or a waitlist
  • Hours below 30 percent: candidates for classes, open play, or off-peak rates
  • Change against the same month last year

02

Revenue by source

Split revenue into court bookings, classes, memberships, lessons, and anything else the club sells. Then split court bookings by member versus non-member, and by booked online versus entered at the desk. The desk share is the number to watch. A rising desk share means players are calling instead of booking, and the reason is usually a link that does not work or a rule that confuses them.

03

No-shows and late cancellations

Report no-shows and late cancellations as counts and as a share of bookings, split by booking type. Unpaid member bookings usually carry the highest rate. Track whether the waitlist refilled late cancellations, because a refilled slot is not lost revenue. The trend month to month matters more than the level: a jump after a rule change or a new coach is a cause you can act on.

  • No-shows as a share of confirmed bookings, by type
  • Late cancellations, and how many the waitlist refilled
  • Refunds issued, automatic versus manual
  • Players with more than 2 late cancels in the month

04

Membership joins, lapses, and usage

For memberships, 3 numbers: new joins, lapses, and usage. Usage is bookings per member per month, and it predicts lapses. A member who booked 4 times a month and booked once last month is about to leave. A list of those members, read monthly, is the cheapest retention tool the club has. Send a message from the coach, not from the system.

05

Payouts against bookings

Once a month, match the payout reports from Stripe against the bookings marked paid. The totals should agree once refunds and card fees are accounted for. Anything unmatched is either a cash booking that was marked as card, a refund nobody recorded, or a booking marked paid that was never charged. 10 minutes on this each month stops small leaks from becoming a year-end surprise.

06

A reading routine that takes 30 minutes

Set a fixed morning, the first Monday of the month, and read the 6 in the same order every time. Occupancy first, because it frames everything else. Write 3 lines: what changed, why, and one action for the month. A report that produces one action is worth more than a dashboard that produces none.

  • Occupancy by hour band
  • Revenue by source and by channel
  • No-shows by booking type
  • Late cancellations and waitlist refills
  • Membership joins, lapses, and usage
  • Payout reconciliation, then one written action

Takeaways

If you read one thing

  1. 01

    Occupancy by hour band and court, never a single monthly figure.

  2. 02

    The share of bookings entered at the desk is an early warning for the booking page.

  3. 03

    Falling usage per member predicts lapses. Read that list monthly.

  4. 04

    Reconcile payouts against paid bookings every month.

  5. 05

    Finish every reading with one written action.

Questions

The short version

How often should we read reports?

A short weekly check on no-shows and occupancy, and a full reading once a month. More often than that and the numbers are noise.

What if we only have a spreadsheet?

The 6 numbers can be built from a spreadsheet of bookings with date, court, hour, player, type, and paid status. It is slow, but the reading is the same.

What does Lobby report?

Lobby shows occupancy by hour and court, revenue by source and channel, no-shows and late cancels with waitlist refills, membership usage, and bookings with their Stripe references for reconciliation.

Ready when you are

Try it on your own schedule.

A free preview workspace with your courts, prices, and rules. No card, nothing published until you say so.

Book a demo