Today
Thursday 18 September. The whole court day on one line — including the hours the desk is closed, which is where the argument lives.
Court 1 · 5:00am – 1:00am
Green band = desk staffed. Everything outside it is currently unsellable.
In the building now
6:14am · desk closed
TM Tane Mafi Court hire 7–8am · entered 6:14am | Booked |
RC Rhys Corletto Shooting cage · entered 5:47am | Member |
DN Dara Nguyen Shooting cage · entered 5:58am | Member |
JP Joel Petrovic Gym · entered 6:02am | Member |
Needs you
Four things, none of them urgent — which is the point
| Marcus H. — first aid expires 14 Oct 26 days. Renew before it lapses, not after. | Soon |
| Birthday party, Sat 27 Sep Deposit paid. Balance auto-charges Fri 26th. | Held |
| Failed card — K. Ualesi Retried automatically in 2 days. No action yet. | Retry |
| 1pm–4pm open tomorrow Three peak hours unsold. Push to members? | Fill |
Court & rates
One court, twenty open hours, one rate card. Everything on the member app comes from this screen.
There is no published court rate anywhere in the business. Setting one here turns 94 unstaffed hours a week from an overhead into a product — without hiring anybody to sit at the desk.
Rate card
Yours to set. Members get their tier's rate automatically.
| Window | Hours | Member | Casual | Who can book |
|---|---|---|---|---|
| Early off-peak | 5:00–9:00am | $50 | $70 | Members 16+ |
| Daytime peak | 9:00am–4:00pm | $70 | $90 | Anyone |
| Evening prime | 4:00–9:00pm | — | — | Classes only |
| Late off-peak | 9:00pm–1:00am | $50 | $70 | Members 16+ |
| Corporate block | Any, 2hr minimum | $320 | $380 | Anyone |
| Birthday party | Sat/Sun, 2hr | $400 | $450 | Anyone |
Evening prime is deliberately closed to casual hire — those hours already earn more as term classes. The system won't sell an hour you've told it not to.
Unstaffed-hours rules
What the door will and won't do when nobody's there
This week, hour by hour
Where the sold hours actually are
Evenings are full — they already were. The story is 12–4pm and after 11pm: hours the building is open, lit and heated, earning nothing. Discount them, or close them. You can't decide either way without this chart.
Trainers
Eight calendars, one court. A private session holds the court underneath it, so nothing can be double-sold.
Roster
Availability, rate and clearances in one row
| Trainer | Rate | This week | WWCC | First aid | Next free |
|---|---|---|---|---|---|
NS Nay Sakya Head Trainer · Owner | $150 | 9 sessions | To Mar 27 | To Jun 27 | Fri 6:00am |
XR Xavier Rosendale Head Trainer | $130 | 12 sessions | To Nov 27 | To Feb 27 | Tue 5:00pm |
SS Shareef Saipaia | $110 | 8 sessions | To Aug 27 | To Aug 27 | Today 8:00am |
IW Ilisia Washington | $110 | 10 sessions | To Jan 28 | To Mar 27 | Fri 6:00am |
IS Isaac Sewabu | $110 | 6 sessions | To May 27 | To Dec 26 | Sat 9:00am |
BS Besh Sakya | $110 | 7 sessions | To Jul 27 | To Jul 27 | Today 9:00am |
MH Marcus Hanna | $110 | 5 sessions | To Sep 27 | 14 Oct 26 | Mon 6:00am |
JM Jaylen Montano | $110 | 4 sessions | To Apr 27 | To Apr 27 | Wed 4:00pm |
Trainer names are real, taken from breakdownbasketball.com/about. Every rate, session count, clearance date and availability figure on this screen is invented. A clearance that expires inside 30 days turns amber and emails the trainer and you; past expiry, the trainer can't be booked at all.
Events & groups
Camps, parties, school terms and corporate blocks — the four things currently sold by email, priced by reply, and invisible until someone remembers them.
Upcoming
Each one is a court block with a price and a deposit
| What | When | Court | Sold | Value | Status |
|---|---|---|---|---|---|
| Spring school-holiday camp Ages 8–15, all levels | 28–29 Sep 10am–2pm | Full day | 37 / 60 | $5,180 | Selling |
| Rep select camp U14 / U16 / U18 · invite only | 6–7 Oct 9am–1pm | Full day | 22 / 30 | $3,300 | Invite |
| Birthday — Ilic family Court + party room, 14 kids | Sat 27 Sep 11am–1pm | 2 hrs | Deposit | $450 | Balance 26th |
| Liverpool West PS Term 4 school sport · Y5/6 | Thu weekly 10–11:30am | 1.5 hrs ×10 | Invoiced | $2,250 | Confirmed |
| Corporate — Zone Logistics Staff wellness day | Fri 3 Oct 1–3pm | 2 hrs | Paid | $380 | Confirmed |
What changed
| Camps Eventbrite, separate account, separate fee, no link to the member record | Now one system |
| Parties "Contact us today to book your party" | Now a product |
| Schools "Contact us via email for booking enquiries" | Now a term block |
| Corporate Enquiry form, priced case by case | Now a rate |
| Friday pick-up Instagram DM, cash at the door, uncapped | Now capped RSVP |
Friday night pick-up
19 Sep · 7–9pm · capped at 20
Twenty names on the coach's phone at 6:55pm, four of them already paid. No cash tin, no DM thread to scroll back through, and a cap that actually holds — which is what keeps the runs worth turning up for.
Memberships
Migrated off PerfectGym in week 3. Same tiers, same prices, same remaining contract terms — plus the two products PerfectGym could never hold.
Tiers
Your prices, unchanged — and two rows that are new
| Tier | Price | Commitment | Members | Notes |
|---|---|---|---|---|
| Rookie · annual | $30/wk | 12 months | 64 | Migrated |
| Champion · annual | $45/wk | 12 months | 81 | Migrated |
| Legend · annual | $90/wk | 12 months | 22 | Migrated |
| Rookie · monthly | $40/wk | 3 months | 43 | Migrated |
| Champion · monthly | $55/wk | 3 months | 39 | Migrated |
| Legend · monthly | $100/wk | 3 months | 11 | Migrated |
| Gym only | $10/wk | 3 months | 28 | Migrated |
| Family · 2nd & 3rd child | −20% | Follows the first | 19 | New — not possible before |
| Junior · ages 6–11 | $22/wk | Term by term | 5 | New — under-12s couldn't be members |
The last two rows are the argument for moving. Foundation Academy starts at 6 and PerfectGym required 12+ to hold a membership, so the youngest cohort was never in the system that holds your revenue. And "each person is required to have their own individual membership" is a big-box gym rule applied to a family with three kids.
Migration record
Kept, so the cutover is auditable
| Members imported From the PerfectGym export, week 2 | 312 |
| Contracts honoured Remaining term + next billing date preserved | 167 |
| Contracts restarted Nobody's commitment got longer | 0 |
| Parallel billing cycle Both systems live, figures reconciled | Matched |
| PerfectGym cancelled After reconciliation, not before | Week 6 |
What a membership now does
Beyond opening a turnstile
Door access
Every unlock, tied to a person and a booking. This is what makes 5am–1am sellable rather than simply open.
CourtPass drives commercial access controllers, and the integrations are built and shipped — but there is no hardware on your door today. This screen shows what a week-4 install buys. It is quoted separately, after a site visit.
Door log
Front door · today
| Time | Who | Why they were allowed | Result |
|---|---|---|---|
| 6:14am | Tane Mafi | Court hire 7:00–8:00am · window open from 6:50 Early entry allowed — Champion tier | Opened |
| 6:02am | Joel Petrovic | Champion membership · gym access | Opened |
| 5:58am | Dara Nguyen | Rookie membership · cage access | Opened |
| 5:47am | Rhys Corletto | Legend membership · cage access | Opened |
| 5:31am | Unknown credential | No booking, no active membership Photo captured · owner notified | Refused |
| 5:12am | Besh Sakya | Staff · 5:00am–1:00am schedule | Opened |
The refused row is the one that matters. Today, a building open from 5am with no controlled door has no equivalent of it — there is simply no record that anyone tried.
What a credential is
Staff access
Separate from member bookings
| Trainers 5:00am–1:00am, every day | 8 active |
| Front desk Staffed hours only | 3 active |
| AD Strength Gym area · booked sessions | Partner |
| Healing HQ Treatment room · booked sessions | Partner |
| Cleaners Mon/Wed/Fri 1:00–3:00am | Scheduled |
Revenue
The number the business currently can't see: what an hour on that court is worth, and which hours are worth nothing.
Where the week's money came from
7–13 September
| Line | Volume | Value | Share | Before CourtPass |
|---|---|---|---|---|
| Memberships | 312 active | $8,420 | 52% | PerfectGym — migrated |
| Private sessions | 61 sessions | $4,180 | 26% | Form & DM |
| Casual court hire | 17.2 hrs | $1,204 | 7% | Did not exist |
| Camps | 37 places | $1,295 | 8% | Eventbrite |
| School & corporate | 3 blocks | $605 | 4% | |
| Parties | 1 booking | $450 | 3% | |
| Pick-up night | 4 casual | $40 | <1% | Cash tin |
Total $16,194. The red rows — $1,244 a week, $64,688 a year — are revenue that has no way of reaching you today. The amber rows are revenue you already earn, just through four systems instead of one. All figures are invented; the point is the shape, not the size.
Court utilisation by hour
Averaged over four weeks · 20 open hours a day
Three readings you can act on: 6–8am fills when you let it, and it fills with adults paying casual rates. 12–4pm is dead — that's the block to discount, or to sell to schools and corporates who can only come in the day. After 11pm earns nothing and still costs you lights and air — worth knowing before you renew the lease on those hours.
Integrations
What connects to what after the cutover. Six systems became one, and the two that were working were left alone.
Your stack, after
| System | What happened to it | Status |
|---|---|---|
| PerfectGym | Retired week 6, after a full parallel billing cycle reconciled. 312 members, tiers, prices and remaining contract terms all carried across. Its job was memberships; it now has none. | Retired |
| Eventbrite | Retired. Camps sell inside the same account as court time, privates and memberships — no per-ticket fee, no second login, no separate refund policy to remember. | Retired |
| Calendly | Retired. A facility tour is a booking, in the same calendar as everything else. Its live URL had been frozen at ?month=2024-02. | Retired |
| Webflow forms | Retired as a sales channel. Private sessions, team training, 3x3, pathways, parties, schools and corporate are seven products with prices and calendars. The forms stay for general enquiries only. | Retired |
| Instagram DM | Retired as a booking channel. Friday pick-up is a capped RSVP; the bio link goes to everything that's buyable, not one camp. | Retired |
| Stripe | Connected directly to your account. Memberships, court hire, privates, camps, parties and deposits all settle to you. Money never passes through CourtPass. | Yours |
| Webflow site | Untouched. The Book and Join buttons changed where they point. No redesign, no rebuild. | Stays |
| Shopify | Untouched. Merch is merch. Member discount codes issued from CourtPass. | Stays |
| Access controller | New install — controller and reader on the entry door, gateway on your network. One trade visit in week 4. | Not installed |
What CourtPass costs
Flat, at any member count
| Platform CourtPass Core | $249 / mo |
| Site Prestons · one active site | $99 / mo |
| Per member 312 today, 600 next year — same price | $0 |
| Card processing Stripe's standard rate — absorb it or pass it on | At cost |
| Access hardware One-off · quoted after the site visit | Quoted |
| Software, per year | $4,176 |
⚠️ The other half of this table needs your PerfectGym invoice. Their pricing isn't published, so the saving is deliberately left blank rather than guessed at. Eventbrite's per-ticket fee and Calendly's seat both stop as well.
The one hard part
Named up front, not discovered in week 4
Direct-debit mandates don't move by copying a spreadsheet. Depending on what PerfectGym's processor supports, either the stored card and mandate data transfers between processors, or every member re-authorises once from a prompted link. We plan for the second and treat the first as upside.
It is one tap, with a deadline and two reminders — but it is a real ask of 100% of your members, and any pitch that doesn't say so is selling you something.
It's also the only moment you get to fix the contract shape — sibling rate, under-12 membership, families on one account — while everyone is re-entering details anyway. Doing it later means asking twice.