The Comfort Cap
A bathhouse is not a calendar of appointments. It is a building with a comfort cap, a long stay, and a front desk that has to know, at a glance, how full the rooms already are.
Zettlor runs a bathhouse on occupancy against a comfort cap: members, walk-ins, and day passes feed one live count, long stays are metered at the door, and a buyout closes the public house instead of colliding with it. A small reservation-only banya that rarely fills should buy a cheap scheduler and spend the difference on better birch.
Start with the room, not the calendar.
It is 8pm on a Friday and the front desk has a line four deep. Inside, the building holds maybe ninety bodies across three steam rooms, two pools, a cold plunge, and a tea room where nobody is in a hurry to leave. The number that actually matters tonight is not on any calendar. It is the answer to a question the person at the desk is doing in their head: how full is the house right now, and how many more can walk in before the steam room gets unpleasant and the regulars stop coming back.
That number is the whole business, and it is not a seat count. A bathhouse sells a long, drifting stay. Someone buys a day pass at 2pm and is still here at 7. They are never in one room. They move from hot to cold to warm to the tea bench and back, and they occupy all of it and none of it at once. The thing you are actually managing is not bookings against slots. It is occupancy against a ceiling, over hours, with people arriving and lingering and leaving on their own clock.
And the ceiling is not the fire-code number. The fire marshal will let you put two hundred people in that building. You know the room turns unpleasant at ninety, that the plunge backs up at a hundred, and that the regulars who pay you every week are the first to notice and the first to quietly stop showing up. That gap between what the building can legally hold and what it can comfortably hold is the cap you actually run to. No appointment tool has a field for it, because no appointment tool was built to think about a room that is two-thirds full of people who are staying for five hours.
Most software for this space starts from the wrong unit. It books a name into a time. So before comparing tools, it is worth asking the question that decides whether you need any of this at all.
Does your house fill up, and does it stay full for hours?
When this capability earns its keep.
| When this matters | When it does not |
|---|---|
| The house fills and stays full for hours | One party per slot, booked ahead, in a small house |
| Members, walk-ins, and day passes occupy the same rooms at once | You rarely turn anyone away |
| You run to a comfort cap below the fire-code number | The desk can see the whole house at a glance |
| Special nights sell out and buyouts share the calendar with public hours | A reservation book and a cheap scheduler keep up |
The hard part is visible in the room.
If you run a small banya by reservation, four guests at a time in one room for a booked ninety minutes, and you rarely turn anyone away, the answer is no. You are booking sessions, one party per slot, and that is the appointment model. It is solved, and solved cheaply. Square Appointments or Acuity will take the booking and the deposit and cost you almost nothing. Buy that, spend the difference on better birch, and ignore everyone who tells you a bathhouse needs a dedicated tool. For your house, it doesn't, and an honest vendor will say so.
The answer flips the moment the building fills and the stay runs long. Now the front desk needs to know occupancy in real time, not a list of who booked. A day-pass guest who entered at noon is still counted at five. A walk-in who pays at the desk never had a booking at all but is absolutely taking up room in the plunge. A member who taps in on the way home from work was never on a calendar. All three are inside the comfort cap right now, and the desk has to see all three at once or it oversells the house and the Friday-night crowd turns on you. An appointment calendar shows you reservations. It does not show you the room. Those are different pictures, and on a busy night only one of them keeps you out of trouble.
This is where the throughput problem hides, and it is genuinely hard. You are not filling discrete slots. You are metering a flow. Sell too few day passes and the building is dead and you have left money on the bench. Sell too many and the steam room is shoulder to shoulder, the plunge has a queue, and the experience you actually charge for is gone. The lever is not a tighter calendar. It is a live occupancy count that members, walk-ins, and day-pass holders all feed into the same number, plus a way to meter entry against the comfort cap rather than the fire-code one. A walk-in queue and a waitlist turn the Friday line into something orderly: people get a real wait time and a text when a spot opens instead of crowding the desk and the cold plunge at the same moment.
An appointment calendar shows you reservations. It does not show you the room.
The same room, of course, is also more than one product, and the better tool lets you sell it as such without the two ever colliding. Most of the week it is shared admission against the cap. Some nights you sell a private banya session to one group. Some afternoons a company buys the whole house out for an offsite, and the cap stops mattering because the only number is the deposit and the headcount and whether they show. Shared admission, a private session, and a full buyout on the same building, held against one ceiling by resource-based scheduling so a buyout closes the public door and a private session walls off its room. The tool that cannot express all three forces you to block the buyout by hand, and then someone books around your block, and you have a sold-out public night and a paid buyout arriving at the same door. That is the most expensive mistake a busy bathhouse makes, and it comes straight from software that only understands appointments.
Then there is the sell-out, which a bathhouse handles differently from a single sauna because the stakes are a whole evening, not one bench. A sweat ritual with a guest leader opens, a hundred and fifty people want forty spots, everyone hits refresh at ten in the morning, and the fastest internet wins. That is not your most loyal member. That is whoever happened to be free and fast at exactly ten. The fix is not a quicker page. It is a registration window where people enter over hours, a verified draw that selects with SMS confirmation so nobody enters forty times, optional member-priority weighting that nudges the regulars' odds without rigging it, and a cancellation waitlist that catches everyone the draw passed over. Nobody races a button. If you never sell out the special nights, you need none of this and should pay for none of it. If you sell them out every time, this is the line between a fair house and a resentful one.
Membership is where a bathhouse lives or dies, and it is the part generic tools get quietly wrong. A real membership is not a discount code. It is an access rule. Unlimited has to mean unlimited within the comfort cap, not unlimited if a walk-in didn't get there first, because the day a $40 walk-in takes the room a member pays monthly to count on, the membership has stopped meaning anything. Around that sit the things a bathhouse actually sells: day passes and punch cards for the people who come twice a month, multi-visit packages, guest passes for the member who brings a friend, and a credits wallet so a cancellation becomes credit in the building instead of a refund that pays Stripe's fee twice and sends the money out the door. None of these are line items on a feature grid. They are the difference between a tool that protects your members and one that leaks their seats to whoever walked in.
Pricing should move too, and a bathhouse has obvious dials for it. A Saturday night is not a Tuesday morning, and the price can say so by daypart, day of week, and season, with demand-based pricing for the nights that always fill. The tool should make that automatic instead of leaving you to juggle codes. But there is a line the software cannot cross for you. A bathhouse runs on a feeling of welcome, and charging two people standing in the same steam room visibly different prices is a culture decision, not a pricing one. The capability should exist. Whether your regulars would forgive it is your call, and no dashboard can make it.
I will say plainly where this stops being about software, because most of running a bathhouse is not. The temperature of the steam, the birch, the quiet rule in the tea room, the attendant who knows which regular takes the corner bench: none of that is a feature and no tool improves it. What software can do is keep the front desk honest about how full the house is, keep members from being crowded out by walk-ins, keep a buyout from colliding with a sold-out night, and keep the money inside the building. That is a real job, but it is a narrow one, and it only matters when the house fills.
One cost is worth naming because it is structural, not a line item. You connect your own Stripe account, Stripe pays you directly, and the software never sits between you and your money, with a small percentage on top of standard Stripe fees. Owning your own Stripe means owning your payouts, your dispute history, and your customer list, which is exactly what you want if you ever decide to leave a vendor. Tools that hold the money for you are easy to start and quietly own the relationship, and the day you want out you learn it was never yours. The honest question on switching is not whether it is painless, because moving memberships and packages with visits left on them is ugly anywhere. It is whether a full house on a Friday is worth one bad weekend of migration. For a busy bathhouse with members and buyouts, it usually is. For a small reservation-only banya that never fills, it honestly isn't.
The dividing line was never how nice the building is. It was whether it fills and stays full. A bathhouse that meters a long stay against a comfort cap, that has to see members and walk-ins and day passes inside the same room at the same moment, and that sells out its best nights, needs software that knows the house is the unit and occupancy is the number. A small house that books one party at a time and rarely turns anyone away does not, and the cheap scheduler is the right answer for it. The hard problems here are throughput, the comfort cap, and the front desk on a full night, and those are the only ones worth choosing a tool around.
If you have stood at your own desk on a Friday and guessed at how full the house was, you already know which number you actually run to.
How Zettlor models the room.
- 01
Live occupancy against the cap
Members, walk-ins, and day-pass holders all feed one real-time occupancy count, so the front desk meters entry against your comfort cap, not just the fire-code number.
- 02
The Friday line, made orderly
Walk-in queueing and waitlists give people a real wait time and a text when a spot opens, instead of a crowd at the desk and the cold plunge at once.
- 03
One house, three products
Shared admission, private sessions, and full buyouts on the same building, held against one ceiling by resource-based scheduling so nothing collides at the door.
- 04
Fair sell-outs for the big nights
A registration window and a verified draw replace the refresh-race, with SMS verification, optional member-priority weighting, and a cancellation waitlist for the rest.
- 05
Memberships that actually hold
Access rules that keep walk-ins from taking a member's room, plus day and punch passes, multi-visit packages, guest passes, and a credits wallet for promos, referrals, and cancellation-to-credit.
- 06
The desk, the till, and your Stripe
Digital waivers, check-in, demand-based pricing, an online store, and point of sale through Stripe Terminal. You connect your own Stripe account and Stripe pays you directly.
Ask to see the awkward moment.
Ask the vendor for one number on a Friday night: how many bodies are inside right now, counting the day pass who entered at noon, the walk-in who paid at the desk, and the member who tapped in after work. Then sell a buyout and watch whether the public door closes. A calendar of reservations cannot answer either question. A tool that models the house answers both.
Operators who are running this shape of room.
- Social bathhouses
- Russian banyas
- Turkish hammams
- Korean jjimjilbangs
- Nordic spa and sauna houses
- Day spas with shared thermal areas
- Members' bathhouse clubs
- Multi-room recovery and contrast houses
A few straight answers.
What is bathhouse booking software, and how is it different from a normal scheduler?
- A normal scheduler books appointments: one slot, one name, one price. Bathhouse booking software treats the whole house as a shared space with a comfort cap and meters a long, drifting stay against it. It counts members, walk-ins, and day-pass holders into one live occupancy number, and lets the same building sell as shared admission, a private session, or a full buyout without the three colliding. The difference only matters if your house fills up and stays full. If it doesn't, a normal scheduler is genuinely all you need.
How do I choose bathhouse management software for a busy night?
- Start with one test: does your house fill up, and does it stay full for hours? If yes, prioritize live occupancy that members and walk-ins and day passes all feed into, a walk-in queue and waitlist for the front-desk line, resource-based scheduling that keeps buyouts and public nights from colliding, and memberships with real access rules. If your house rarely fills and you book one party at a time, buy the cheapest reliable scheduler and stop there. Choose for the three or four jobs that are actually hard on a Friday night, not the longest feature list.
Do day passes and walk-ins work alongside memberships and reservations?
- They should all count into the same occupancy number, which is the point. A day-pass guest who entered at noon, a walk-in who paid at the desk, and a member who tapped in after work are all inside the comfort cap right now even though only one of them was ever on a calendar. Software built for a bathhouse shows the front desk the room, not just the reservations, so you meter entry honestly. Software built for appointments shows you a list of bookings and misses the walk-ins entirely, which is how a house gets oversold.
Who holds the money, and why does it matter?
- With Zettlor you connect your own Stripe account and Stripe pays you directly, so you keep your payouts, dispute history, and customer list. Tools that hold the money for you are easy to start with but take a cut and your customer data, and the day you want to leave you find the relationship was never yours. Bringing your own Stripe is a little more setup in exchange for owning the relationship, which matters most precisely when you decide to switch vendors.
Zettlor is built around the room. Read the operations guides or see how it works.