Website booking

How to let customers book appointments on your website

Every "call us to book" is a customer who might not call. Here are three ways to put real-time booking on your website, and how to pick the right one.

Updated October 2026 8 min read By the Freeslot team

The short version

  1. Create a booking page for each kind of appointment
  2. Connect your calendar so only free times show
  3. Add it to your site as a button, an embed, or your own domain
  4. Put it where customers decide - not just the contact page
  5. Book yourself on your phone before you announce it

What a website booking system should do

A contact form starts a conversation. A booking system ends one: the customer picks a time that works, and it's confirmed before they close the tab. Whatever you use, it should do four things.

Show times you're actually free

Read your calendar live, so a meeting added this morning is already off the table.

Speak the customer's time zone

Times appear in the visitor's own time zone, so nobody turns up an hour early.

Confirm instantly

The booking lands on your calendar and the customer gets a confirmation email - no manual "see you then".

Handle changes without you

Customers cancel from their email and the time opens up for someone else.

Good to know: Freeslot doesn't take payments or send reminder emails today. If you need a deposit, collect it separately before the appointment.

Three ways to add booking to your website

They all use the same booking page underneath, so you can start with a button today and upgrade later without redoing anything.

All plans Booking button A button or menu link opens your booking page.
Starter Embedded widget The booking calendar sits inside your own page.
Professional Your own booking domain A full booking page on an address you own.
Option Customer stays on your site Setup Best for
Booking button No - opens your booking page 2 minutes Getting started, menus, social bios
Embedded widget Yes 5 minutes A dedicated "Book" page or service pages
Own booking domain On your domain One DNS record, up to an hour A fully branded booking experience

Set it up in five steps

  1. Create a booking page for each appointment type

    A 15-minute intro call and a 60-minute session need different pages, so customers don't have to guess. For each one, set the length, where it happens - online, in person, or by phone - and the hours you take bookings.

    Name it the way customers search: "Free 15-minute consultation" beats "Discovery meeting".

  2. Connect your calendar

    Connect Google, Outlook, or Zoho Calendar and pick where bookings land. Freeslot checks it every time someone opens your page, so customers only see times you're free.

    Keep personal plans on a separate calendar? Connect that too, or read how to prevent double bookings across calendars.

  3. Make it look like your business

    • Logo, title, and description - so customers know they're in the right place.
    • Brand color and background to match your site. Starter
    • Remove Freeslot branding for a page that's entirely yours. Professional

    Going further? Read how to brand your booking page and send emails from your own address.

  4. Add it to your website

    • Button: copy your booking link and paste it into any button or menu item. Label it with the action - "Book a consultation" beats "Schedule".
    • Embed: in Freeslot, open Pages, choose Embed code on your page, decide whether to show your page details, and copy the snippet. Paste it into your site builder's HTML, Embed, or Code block. Starter
    Embed codeHTML
    <iframe
      src="https://app.freeslot.me/e/your-page?hideFooter=1"
      style="width:100%;min-height:720px;border:0;"
      loading="lazy"
      title="Book with Your Business"
    ></iframe>
    • Own domain: in your profile, open Custom domains and add a subdomain such as book.yourbusiness.com. Add the CNAME record it shows wherever you manage your domain, click Verify DNS, then assign the domain to your booking page. HTTPS is set up for you. Professional
  5. Test it like a customer

    Open your website on your phone in a private window and book yourself. Check the appointment appears on your calendar and the confirmation email arrives. Then cancel from the email and make sure the time comes back.

Where to put booking on your site

Put the button wherever a visitor might decide to book - which is earlier than most people think.

  • Your header or menu. One "Book" button that follows visitors to every page.
  • Your homepage, near the top. Returning customers shouldn't have to scroll to find it.
  • Each service page. Link straight to that service's booking page, so there's no second choice to make.
  • Your contact page. Next to your phone and email, for people who came to ask "when can I see you?"
  • Off your site too. Your Google Business Profile, social bios, and email signature - plus a QR code on printed materials. Starter

Mistakes that cost you bookings

Hiding it on the contact page
If booking is three clicks deep, most visitors fill in the form or leave. Give it a button in your menu.
Squeezing the widget into a sidebar
The booking calendar needs your page's full content width. Keep the snippet's 720px minimum height so nothing gets cut off.
Offering times you can't take
If your personal calendar isn't connected, the school run looks free. Connect every calendar that holds real plans.
Asking too many questions
Every extra field is a reason to stop. Freeslot asks for a name and email; add phone and notes only if you'll use them.
Never checking it on a phone
Plenty of your visitors will book from their phone. Test the whole flow there, not just on your laptop.

Website booking FAQ

What is a website appointment booking system?

It's a tool that shows your real free times on your website and lets customers pick one, enter their details, and get a confirmation - no phone call or email thread needed. Freeslot checks your calendar live, adds the booking to it, and emails your customer.

Can customers book without leaving my website?

Yes. Paste Freeslot's embed code into your page and the booking calendar appears right there. Embedding is available on Starter and above; on the Free plan, link a button to your booking page instead.

Do I need a developer or a plugin?

No. A booking button only needs your link. The embed is one short snippet you paste into your site builder's HTML, Embed, or Code block.

Can my booking page use my own domain?

Yes, on Professional and Teams. Connect a subdomain such as book.yourbusiness.com with one CNAME record, and Freeslot sets up HTTPS for it automatically.

What happens after a customer books?

The appointment lands on your calendar straight away, so nobody else can take that time. Your customer gets a confirmation email with a link to cancel if their plans change.