How availability works
Every rule that decides when your clients can book, including working hours, minimum notice, buffers, and the fill restriction.
When a client opens your booking page, the times they're offered are computed from several layers. Understanding them makes "why can't my client see that slot?" easy to answer.
The layers, in order
- Working hours — slots only exist inside your weekly schedule (Me → Working Hours in the app, or Settings → Availability on the dashboard).
- Existing appointments — booked time is gone, including the service's full duration.
- Blocked time — anything you've blocked is unavailable.
- One-off open slots — the exception that adds time: slots you've explicitly opened outside your hours are bookable.
- Buffer time — breathing room before/after appointments is kept clear. There's a global buffer in Settings → Booking Rules, and services can have their own buffers.
- Minimum notice — clients can't book closer to now than your minimum (Settings → Booking Rules). With 24-hour notice, same-day slots never appear to clients, even if you're free.
- Maximum advance — clients can't book further ahead than your limit (e.g., 2 months out).
- Per-service availability — a service can have its own booking window or day/time restrictions that narrow things further.
The fill restriction
This one is not a layer, because it does not change which times a client sees. Fill services stay on your booking page and their slots look normal. The refusal comes at the end, so by the time it appears the client has already chosen a time and entered their details. They read:
Fills are only available within 3 weeks of your last appointment. Please book a full set instead.
It has two parts, and both have to be set before anything happens:
- Mark your fill services. Each service has a This is a fill checkbox in its settings. You decide which services count as fills. Mila does not guess from the service name, so a service called "Volume Refresh" or "2 Week Touch Up" works exactly like one called "3 Week Fill".
- Set the limit. A number of weeks in Settings → Booking Rules on the dashboard, or Me → Booking rules in the app. Off by default.
A limit with no services ticked does nothing. A ticked service with no limit does nothing.
What it measures:
- The gap since the client's last appointment of any kind, not their last full set. A lash lift last week counts.
- Cancellations and no-shows do not count as visits.
- A client with no history is always allowed through, so a new client can book a fill.
It applies to client-facing booking only, including bookings that require a deposit. You can still book anyone for anything from the app or the dashboard.
You vs. your clients
Minimum notice and maximum advance apply to clients booking themselves. When you book from the app or dashboard, you can book any open time — including same-day.
Debugging a specific case
Work down the list above with the exact service, date, and time in mind — one of the layers is removing the slot. The most common culprits are minimum notice (hides today/tomorrow) and buffers (slots look free on your calendar but the gap is too small for the service plus its buffer). See also Clients can't see openings.