Private sessions
Private sessions are not separate sessions in Session. A "Private hire" price simply uses up all the spaces, so the moment a customer buys it, the session is private to them.
This is different from other platforms, where you'd typically maintain a parallel calendar for private bookings. In Session, every session is bookable in any of the ways you choose to price it.

What you can do with it
Offer private hire on any communal session without creating a duplicate
Disable private hire on specific sessions, for example sound baths or events where you don't want sole-use bookings
Sell different ticket types side by side, like Adult, Concession, and Bring a friend
Offer kids tickets that don't take up a space so families can bring children without reducing capacity
Filter the public calendar to show only sessions that still have private hire available
Override price or spaces on a single session, for example a discounted off-peak private hire on a quiet weekday
How spaces work
Every session has a capacity - the total number of spaces. Every price has a spaces used value - how many of those spaces a single ticket consumes.
1 space for a standard adult ticket
0 spaces for a child or infant who doesn't take up a slot
Match your capacity for a private hire ticket - if the session holds 8, set spaces used to 8
When a customer checks out, they pick a price and a quantity. The total spaces consumed is quantity × spaces used. Once a session's remaining capacity drops below the spaces used by a price, that price is hidden for new bookings. So a single private hire purchase fills the session and the communal options disappear.

Creating a Price
Prices live under Billing in admin. Once you create a price it's available across your whole organisation, but it's hidden by default - you choose which sessions it appears on.
Go to Admin → Billing and scroll to Session Prices
Click Create Price
Give it a name (e.g. Adult, Concession, Bring a friend, Kids, Private hire) and an optional description shown to customers
Set the price in pounds (use 0 for free)
Set Spaces used - 1 for standard, 0 for kids, or your full session capacity for private hire
Toggle Active on, and Include in calendar filter if you want customers to filter by it
Click Create Price
New prices are off on every existing session by default. Open the sessions you want them on and switch them on.

Managing prices on a session template
Prices live under Billing in admin. Once you create a price it's available across your whole organisation, but it's hidden by default - you choose which sessions it appears on.
Go to Admin → Billing and scroll to Session Prices
Click Create Price
Give it a name (e.g. Adult, Concession, Bring a friend, Kids, Private hire) and an optional description shown to customers
Set the price in pounds (use 0 for free)
Set Spaces used - 1 for standard, 0 for kids, or your full session capacity for private hire
Toggle Active on, and Include in calendar filter if you want customers to filter by it
Click Create Price
New prices are off on every existing session by default. Open the sessions you want them on and switch them on.

Overriding a price on an individual session
If you only want a one-off change - say a discounted private hire on a particular Friday - open the instance from the calendar and edit the prices there.
Click the session instance in your admin calendar
Open the Prices section
Click Edit on the price you want to change
Set a new price or spaces value
Save
Instance overrides take priority over the template, which takes priority over the org-wide price.
Filtering the calendar for private sessions
If a price has Include in calendar filter turned on, customers see it as a filter chip on your booking page. Selecting "Private hire" hides any session that doesn't have enough remaining capacity for that ticket - so it doubles as an availability filter for private bookings.
This is the simplest way to give customers a "show me all private slots I could book" view without maintaining a separate calendar.
Tips
Set a sensible default: the first 1-space active price is the default for member discounts. If you want member discounts on Adult rather than Concession, drag Adult above it in the Billing list
Capacity warnings: if you set spaces used equal to or above the session capacity, the editor warns you - that price will take the whole session whenever someone books it
Booking limits: if a price's spaces used exceeds the session's max spaces per booking, it won't be sellable. Either raise the limit on the session or lower the spaces on the price