Most of the booking software available to salons today was not originally built for salons. It was built for fitness studios, medical clinics, or generic appointment-based businesses and then adapted with a coat of paint and some industry-specific terminology. The result is software that technically works but constantly fights against the way salons actually operate.
After talking to dozens of salon owners while building Tresse, we identified the same pain points coming up repeatedly. Not small annoyances, but fundamental mismatches between how the software thinks and how a salon actually runs.
Services are not one-size-fits-all
In a gym, a class is a class. It has a fixed duration, a fixed price, and a fixed capacity. Salon services are nothing like that. A balayage appointment might take 90 minutes for one client and three hours for another depending on hair length, thickness, and the number of pieces. A haircut-and-color combo requires different timing than either service alone because of processing time that overlaps.
Most booking systems handle this by making you create separate service entries for every variation: “Balayage - Short Hair,” “Balayage - Medium Hair,” “Balayage - Long Hair.” Your service menu balloons to dozens of entries. Clients get confused. Staff members spend time reclassifying appointments after the fact because the client chose the wrong option.
A salon-native system handles variable durations and pricing as properties of a single service, not as separate entries. The stylist adjusts the duration at booking time or during the consultation, and the schedule adjusts automatically.
Double-booking is a feature, not a bug
In most appointment-based businesses, double-booking is an error. In a salon, it is essential. A colorist routinely manages two or three clients simultaneously: one processing, one in the chair, one being rinsed. The entire economic model of a busy salon depends on intelligent overlapping.
Software built for one-to-one appointment businesses treats any overlap as a scheduling conflict. It flags it, warns about it, or prevents it entirely. Salon owners end up either fighting the software constantly or turning off the validation entirely, which defeats the purpose of having a scheduling system.
The right approach is processing-time awareness. The system knows that a color service has 30 minutes of active chair time followed by 25 minutes of processing time during which the stylist is free. It can intelligently slot another service into that gap without creating a conflict. This is not exotic logic. It is how every busy salon has operated for decades. The software should match the reality.
The checkout problem
Gym software checkout: member swipes a card on file, done. Medical software checkout: insurance billing and copay, done. Salon checkout is a different animal entirely.
A single checkout might involve splitting services across two payment methods, adding retail products, applying a membership discount to the service but not the retail, splitting the tip between a stylist and an assistant, and booking the next appointment. This is not an edge case. This is a Tuesday afternoon.
Most booking platforms handle checkout as an afterthought because in their original context (gyms, clinics), checkout was simple. They bolt on a POS integration or a basic payment screen that cannot handle the complexity of a real salon transaction. The result is that front desk staff develop workarounds: they process part of the transaction in the booking software and part in a separate POS, then reconcile manually at the end of the day.
Checkout in salon software needs to be a first-class feature, not a payment confirmation screen. It needs to handle split payments, tip distribution, retail and service on the same ticket, membership discounts, and rebooking, all in one flow.
Client relationships are the business
Generic booking software treats clients as a list of names with appointment histories. Salon clients are fundamentally different. They have formulas (the specific color mix used last time), preferences (always wants a scalp massage, allergic to a specific product), and visit patterns that predict when they will need to rebook.
A client profile in salon software should be a living document that captures not just transactional data but service-specific details that inform the next visit. What formula was used, how long the processing time was, what retail products were recommended, what the client said about the results. This is not CRM data in the traditional sense. It is the institutional knowledge that currently lives in stylists’ heads and gets lost when a stylist leaves.
Staff compensation is not simple
Most appointment software assumes employees are salaried or hourly. Salon compensation is a different world: commission percentages that vary by service type, sliding scales based on tenure, booth rental versus employment, tip pooling versus individual tips, retail commission that is separate from service commission. Some stylists are on a guaranteed base plus commission above a threshold.
When your booking software cannot model your actual compensation structure, payroll becomes a manual spreadsheet exercise. Staff members cannot see their real earnings in real time. Owners cannot accurately project labor costs. It is one of the most common reasons salon owners cite for being unhappy with their software, and it stems directly from the software not being built for salons in the first place.
The path forward
We are not saying everything about existing booking software is wrong. The core scheduling mechanics work. Online booking works. Reminder texts work. But the layer of salon-specific logic that sits on top of those basics is where most platforms fall short, because they were not designed for that layer.
Building from scratch for salons means every data model, every workflow, and every screen starts with the question: how does this actually work in a salon? Not how does it work in a generic appointment business that we have relabeled for salons.
The details matter. Processing time awareness. Variable-duration services. Complex checkout. Rich client profiles. Flexible compensation. These are not premium features. They are the baseline for software that actually understands your business.