Booking system

A calendar without gaps you cannot sell

A regular booking grid offers a slot every half hour. Between two customers that leaves windows too short for another service — and over a day they add up to an hour nobody pays for. StickyCal offers the next slot so that it sticks to the previous one.

30 days free. No card, no installation, cancel any time.

What sticky means

Slots are not laid out on a fixed grid; they are measured against what is already in the calendar. The engine knows the length of the service, the setup and cleanup around it, lunch breaks, holidays and time off — and offers only times that can actually be worked. A short window at the end of the day is offered as a tail slot so it does not stay empty.

A 30-minute grid 45 minutes lost

9:00 Haircut · 45 min
9:45–10:00 · 15 min nobody can book
10:00 Colouring · 90 min
11:30–12:00 · 30 min nobody can book
12:00 Haircut · 45 min

Sticky slots one more service

9:00 Haircut · 45 min
9:45 Colouring · 90 min
11:15 Haircut · 45 min
12:00 Beard · 30 min

Same day, same people, same services. One more booking fits on the right — that is the whole difference.

What is already built

Nothing on this list is coming soon. It is all in the product and you can switch it on today.

Booking without an account

The customer picks a service, a day and a time, fills in a name and an email, and that is it. No sign-up, no password — every extra step loses part of the people.

Opening hours and exceptions

A weekly schedule per calendar, several blocks a day, lunch breaks, public holidays, time off as a range of days, and one-off blocks.

Classes and group sessions

Recurring sessions with a capacity — yoga, training, driving lessons. Sessions are generated ahead and the database itself guards the seats, so the capacity holds even under concurrency.

Waitlist

For a class the freed seat goes to the first in line and is held until they confirm. For a one-to-one slot several people are notified at once and whoever books first gets it.

Confirmations and reminders

A confirmation email right away, a reminder 24 hours before. Templates come in three languages and can be rewritten. Nothing is sent during the booking request, so a slow mail server never holds the customer up.

SMS as a second channel

Email carries the detail, SMS is what the customer actually sees. Credit is counted in segments, so you see the price of the text as you type it. When the credit runs out the message is not dropped — it goes out by email.

Google Calendar and Outlook

Both ways: bookings land in the staff calendar and their own events block the time. If you would rather not connect accounts, there is a subscription link (iCal).

Widget for your own site

Two lines of code and the booking form runs on your page. The frame sizes itself, and with JavaScript off the server still renders the slots.

Your own questions on the form

Ask whatever you need — hair length, licence plate, consent to terms. Text, choice, date, consent; globally or for a single service. Answers show in the calendar and in the CSV export.

Coupons and gift cards

A coupon is a rule (percentage or amount, validity, usage limits), a gift card is money with a balance to draw down. A cancelled booking returns both.

Passes

A bundle of visits counted in visits, not in money — ten lessons stay ten even after a price rise. A cancelled booking returns the visit.

Payments and deposits up front

With Stripe Connect the money goes straight to your account; StickyCal never holds it. Full payment or a deposit, refunds in one click.

Several locations

One account, several places. The customer picks the location first and then sees only its calendars and services.

Reports and export

Revenue, calendar utilisation, no-shows, top services, distribution over the day. The CSV opens in Excel without scrambled columns or broken accents.

API, webhooks, custom domain

A key with read-only or write access, signed outgoing webhooks, and a verified custom domain instead of a slug in the address.

Runs on ordinary hosting

Plain PHP, no build step, no third-party scripts. Charts are drawn on the server, so the page works even when something fails to load.

How to get running

  1. Create your account A name, a page address, an email and a password. It takes a minute and asks for no card.
  2. Add calendars A member of staff, a chair, a room — anything that can be occupied.
  3. Set up services and hours Length, price, who performs the service and when it is done.
  4. Send customers the link Or drop the widget on your site and the bookings start arriving on their own.

Pricing

Every plan starts with 30 days free. Billed monthly or yearly, cancel any time.

Starter

9,00 € / month

or 99,00 € a year

  • Calendars: 2
  • Services: 5
  • Bookings per month: 300
  • Locations: 1
  • SMS included per month: 50
  • Classes and group sessions
  • Calendar sync
  • Customer picks the staff member
  • Payments and deposits up front
  • StickyCal branding removed
  • Custom domain
  • API and webhooks
Start free

Enterprise

49,00 € / month

or 499,00 € a year

  • Calendars: unlimited
  • Services: unlimited
  • Bookings per month: unlimited
  • Locations: unlimited
  • SMS included per month: 1000
  • Classes and group sessions
  • Calendar sync
  • Customer picks the staff member
  • Payments and deposits up front
  • StickyCal branding removed
  • Custom domain
  • API and webhooks
Start free

Prices exclude VAT. SMS is topped up separately — a monthly allowance is included, anything above it is bought in packs.

Try it on your own calendar

In 30 days you will see on your own numbers how much time can be saved. You pay nothing and we ask for no card.

Create your account