The resource scheduling model: staff, rooms, equipment
Two shapes of capacity: pooled vs. assigned
Most bookable businesses fall into one of two patterns, and it's worth pinning down which one you actually are before you build anything.
Pooled capacity is the simpler case: the customer doesn't care which unit of capacity they get, only that one is available. A walk-in nail bar with four chairs, a co-working space with twelve hot desks, a class with twenty spots — in each case, "how many are free right now" is a single number, and any one of the identical units satisfies the booking equally well. You don't need to name or individually track each chair; you need a headcount.
Assigned capacity is where a specific resource is the point. "Book with Ana" isn't interchangeable with "book with whoever's free" if the customer is coming back to the same stylist every six weeks. "The massage room" isn't interchangeable with "a room" if you only have one. "The drone" isn't interchangeable with "some equipment" if you own exactly one. Here, the system has to track named, specific resources — because the customer, or the nature of the service, genuinely cares which one they get.
Staff, rooms and equipment aren't interchangeable, even though a calendar treats them the same
Once you're in assigned-capacity territory, it's worth separating your resources into the three broad classes almost every small business's real constraint falls into, because each behaves slightly differently:
People A staff member's time is usually the tightest, most human constraint you have — capacity of 1 by default, because one person can't deliver two appointments at the same minute. The interesting modeling question for people is usually which services can this person actually perform, since a junior team member might handle three of your six services, not all of them.
Space A room's capacity is often 1 too (one treatment room, one private space), but not always — an open studio floor hosting several simultaneous small-group sessions is legitimately a space with a capacity greater than one, if your business actually runs it that way. The modeling question here is whether the space is genuinely single-use or whether it can host more than one booking at a time without anyone's experience suffering.
Equipment Capacity here is simply how many physical units you own — one drone is capacity 1, three identical kayaks is capacity 3. The trap with equipment is forgetting that a type of equipment ("a kayak") and a specific unit ("kayak #2, which is out for repair") aren't always the same tracking granularity, depending on how precisely you need to manage it.
Why the resource, not the service, has to be what's checked
Modeling your own business's real constraint
Separate what you sell from what performs it
Decide pooled or assigned, per service
Set each resource's real capacity
Add turnover time where cleanup matters
Revisit it when the business changes
How Olmira handles this
Related guides
No-shows: what actually moves the number
No. If the customer genuinely doesn't care who or what serves them — walk-in chairs, hot desks, general class spots — a simple shared-capacity number per service is enough on its own. Resource modeling earns its keep specifically when a particular person, room or item is the real constraint.
Yes — capacity is set independently per resource. A single treatment room is naturally capacity 1; an open studio floor genuinely hosting several simultaneous small sessions might correctly be capacity 5 or more, if that reflects how the space is actually used.
That's exactly the situation resource modeling is built to catch. Because availability is checked against the resource itself, not either service in isolation, a booking against one correctly blocks the other from claiming the same resource in that window.
That depends on how much "who" matters to the sale. Where it doesn't, letting the system assign automatically from whichever eligible resources are free keeps the booking flow shorter without losing accuracy on what's genuinely available.
Model it as a single resource with capacity 1. Every service that uses it — even three different treatments in the same one room — correctly shares the same underlying availability, so it can never look free from one service's point of view while it's actually taken by another.