BookaSalon is a light, clean booking widget for WordPress, built specifically for hair salons, barbers, beauty clinics and anywhere else with staff, services and appointments — a simpler alternative to heavy, one-size-fits-all booking plugins.
Two clickable demos with no real booking behind them — nothing is saved anywhere. This is what your clients experience, and what your own admin overview looks like. Try scrolling or swiping the calendar to move between months.
| Time | Client | Service | Staff member | Status |
|---|---|---|---|---|
| 09:00 | Anna Andersen | Men's cut + beard trim | Mette Sørensen | Confirmed |
| 10:30 | Peter Holm | Cut + beard | Lars Nielsen | Confirmed |
| 13:00 | Sofie Bruun | Men's cut | Mette Sørensen | Completed |
| Date | Client | Service | Staff member | Status |
|---|---|---|---|---|
| Today 09:00 | Anna Andersen | Men's cut + beard trim | Mette Sørensen | Confirmed |
| Today 10:30 | Peter Holm | Cut + beard | Lars Nielsen | Confirmed |
| Yesterday 15:00 | Sofie Bruun | Men's cut | Mette Sørensen | Completed |
| Yesterday 11:00 | Jonas Kruse | Beard trim | Lars Nielsen | Cancelled |
| Client | Contact | Bookings | Revenue | Last visit |
|---|---|---|---|---|
| Anna Andersen | anna@example.dk | 12 | 4.180 kr. | Today |
| Peter Holm | peter@example.dk | 7 | 2.450 kr. | Today |
| Sofie Bruun | sofie@example.dk | 4 | 1.100 kr. | Yesterday |
| Jonas Kruse | jonas@example.dk | 2 | 390 kr. | 12.07.2026 |
The client list builds itself from your bookings — you never have to maintain it.
| Staff member | Role | Phone | |
|---|---|---|---|
| MSMette Sørensen | Hairdresser | mette@salonnordlys.dk | +45 22 11 33 44 |
| LNLars Nielsen | Barber | lars@salonnordlys.dk | +45 22 55 66 77 |
| SKSofie Krogh | Beautician | sofie@salonnordlys.dk | +45 22 88 99 00 |
Most large booking plugins are built to cover many industries at once — which makes them heavy to use and full of settings a salon will never touch. And basic things like proper branding often sit behind a Pro purchase.
No unnecessary modules. Just what it takes to fill the calendar and keep clients informed.
Clients pick their preferred staff member (or "no preference"), then a service, and only ever see times that are actually free — in real time. The calendar can be scrolled or paged months ahead, and you decide in settings how far in advance bookings are allowed.
Create services with an image, price and duration. Set individual working hours, holidays and days off per staff member.
With 50 services, they group into categories like Men, Women, Kids and Beauty — in the order you choose. Clients see a list they can scan instead of an endless column.
Discount specific services over a date range — optionally only on certain weekdays or within a time window, so you can fill the quiet hours. Percentage, fixed amount or a fixed offer price; the client always sees the original price struck through.
Ready-made setups for major web hosts and mail services, so confirmations don't land in spam. Gmail connects with either an app password or secure Google sign-in.
See revenue by week, month and year-on-year, which services are chosen most, and what has actually been paid. No-shows are excluded, so the number is one you can trust.
More than one salon? Add as many locations as you like, each with its own address, colour and staff.
Automatic confirmation, a reminder before the appointment, and an optional follow-up or review email afterwards — all with direct links to add the appointment to Google Calendar, Outlook or Apple and other calendars.
Mark holidays and closures for the whole salon in one go, and let clients move their own appointment via the link in the email — without calling.
Choose an accent colour, pick from 10 built-in Google Fonts, and upload your own logo to the widget.
[bookasalon] shows the full widget. [bookasalon_button] drops a booking button anywhere — it opens the widget in a modal.
See how many times each booking button was clicked, and how many bookings actually came through.
Admin and the client widget are set independently of WordPress' own language — and are built to add more languages easily later.
Move on without retyping everything. CSV import of services, staff and bookings from well-known booking plugins, with automatic field detection.
Clients can cancel themselves via a secure link in the email — no call to the salon, no login needed. You get a notification every time it happens.
Export bookings and payments to CSV, and see at a glance which clients have been marked as no-shows more than once.
Clients book themselves, around the clock — without phone calls back and forth.
Statistics on your booking buttons show whether people click — and whether they actually book.
Colour, font and logo are set in minutes — no code.
Upload the zip file in WordPress under Plugins → Add New, and activate.
Add services, staff and working hours — and optionally import from your current booking system.
Set the accent colour, font and logo so the widget matches your brand.
[bookasalon] or [bookasalon_button] — and your clients can book.
Booking per staff member, multiple locations, branding, emails, time-limited offers, revenue overview, statistics, self-service cancellation and rescheduling and much more — it's all included, with nothing locked away.
No. Install the plugin like any other WordPress plugin, fill in services and staff in the admin, and drop a shortcode on a page. No PHP or CSS needed, unless you want to fine-tune the design yourself.
Yes. The widget controls its own layout and typography independently of the theme, and can be adjusted with your own accent colour, font and logo so it still feels part of the site.
Yes — via a CSV export from your current system (most well-known booking plugins support this) and BookaSalon's built-in import, which automatically suggests how the columns map to services, staff and bookings. The import brings in whatever is actually present in your CSV export, and tells you clearly if individual rows can't be read so you can fix them by hand. We therefore can't guarantee a 1:1 transfer of absolutely everything if your current system doesn't include a given field in its export. Always keep a copy of the original export until you've checked the import through. If you get stuck, our support is ready to help with the mapping.
Yes. Under BookaSalon → Statistics you can see clicks per booking button (day/week/total), completed bookings in the same period, and an estimated conversion rate from click to booking.
That's right. Booking per staff member, multiple locations, email reminders and follow-ups, self-service cancellation and rescheduling, closing days, time-limited offers, statistics, CSV export and full branding (colour, font, logo) are all part of BookaSalon — with nothing locked away.
Danish and English are built in from the start, and can be chosen independently for the admin and the client widget. The language layer is built so more languages can be added later.
Yes, it's included. Under BookaSalon → Offers you can set a discount over a date range, optionally narrowed to certain weekdays and/or a time window (for example "Tuesdays 14-16 only" to fill up quiet periods). Choose a percentage, a fixed amount, or a fixed offer price where you type the new price directly — the client always sees the original price struck through. Try it in the "Your admin" tab of the demo above.
Please do! BookaSalon is developed continuously, and your input as salon owners is the best source of what's actually missing. Write to support@bookasalon.dk — we're here to make your booking better.
Install BookaSalon in under 15 minutes, and let clients book without calls back and forth.