You run a hair salon. It's 7pm and you're finishing your last client when three booking requests land on WhatsApp. You reply when you get home at 9pm — and two of them have already booked somewhere else.
That's the real cost of not having an online booking system for your small business. Not just inconvenience. Lost revenue. The kind that adds up to hundreds of dollars every single month.
The good news: adding a "Book Now" button to your website takes about 15 minutes. No developer, no code, no monthly fees if you pick the right tool. This guide walks you through the whole thing — tool selection, embed code, and the five steps to go live.
Key Takeaways:
- Setmore and Square Appointments both have genuinely capable free plans — not time-limited trials
- The embed widget route works on any existing website: Wix, Squarespace, WordPress, or anything else
- Three widget types exist: inline (visible on page), popup (triggered by a button), floating button (always visible)
- If you don't have a website yet, you can skip all this and build a site with booking already wired in
In This Article
- What online booking actually gives you
- Free vs paid tools — comparison table
- Which tool fits your business type
- Step-by-step setup (5 steps)
- The all-in-one shortcut
- 3 mistakes to avoid
- FAQ
Try this prompt⌘+Enterto launch
What Online Booking Actually Gives You
Beyond the obvious "clients can book without calling", here's what actually changes when you go live:

- 24/7 availability. Research consistently shows 40–50% of service bookings happen outside business hours. If you're not there to answer, you lose them to whoever has a booking link.
- Fewer no-shows. Automatic SMS and email reminders before the appointment. No-show rates drop by 30–40% for most businesses within the first month.
- No more scheduling ping-pong. Clients pick from your real availability. No "are you free Tuesday?" thread that dies three days later.
- You look like you're established. A clean booking page tells people you run a real business. A WhatsApp DM does not.
Pick Your Tool: Free vs Paid
Here's what the main options actually look like in 2026:
| Tool | Free Plan | Best For | Paid From |
|---|---|---|---|
| Setmore | ✅ Unlimited appointments (up to 4 users) | Salons, spas, tutors | $5/user/mo |
| Square Appointments | ✅ 1 location, 1 staff | Retail + service combos | $29/mo |
| Calendly | ✅ 1 event type | Consultants, coaches | $10/mo |
| SimplyBook.me | ✅ 50 bookings/month | Clinics, wellness, multi-staff | $9.90/mo |
| Acuity Scheduling | ❌ (14-day trial only) | Complex schedules, packages | $16/mo |
| Zoho Bookings | ✅ 1 service, 1 staff | Freelancers, solo professionals | $6/mo |
Honest take: Setmore's free tier is the most generous I've found. Unlimited appointments, email reminders, a public booking page, and clean embeds. Square Appointments wins if you already process payments through Square — the integration is seamless. Calendly is great for consultants but feels awkward for salons or gyms where you have multiple staff and service durations.
Acuity is genuinely excellent but it no longer has a free plan — you're paying from day one. Worth it if you need intake forms, packages, or subscription memberships. Skip it if you just need basic appointment scheduling.
Which Tool Is Right for You?
Quick picks by business type:

- Hair salon / barbershop / spa → Setmore (free) or Acuity (paid). Both handle multiple staff, service durations, and tipping well.
- Personal trainer / yoga studio → Setmore free or SimplyBook.me. Personal trainer websites need class schedules and recurring sessions — SimplyBook handles group bookings better than most.
- Consultant / coach / freelancer → Calendly. It's built exactly for 1:1 professional meetings and clients already know how to use it.
- Restaurant / café → Square Appointments if you use Square POS. For table reservations specifically, consider OpenTable or Resy instead.
- Clinic / therapist / dentist → SimplyBook.me. It has HIPAA-aware options and handles patient intake forms.
If you run a hair salon and want the full website setup — not just booking, but gallery, team bios, and Google Maps — there's a detailed walkthrough in Build a Hair Salon Website in One Afternoon.
Try this prompt⌘+Enterto launch
5 Steps to Add Online Booking to Your Website
Step 1: Create Your Booking Account (5 min)
Go to your chosen tool's website and sign up with your business email.
- Setmore: setmore.com → "Sign up free"
- Square Appointments: squareup.com/appointments
- Calendly: calendly.com → "Sign up free"
- SimplyBook.me: simplybook.me → "Start free"
No credit card required on any of these free plans. You'll be inside the dashboard in under two minutes.
Step 2: Set Your Services, Hours, and Prices
This is the step most people rush — don't. Set up:
- Services with names your clients will recognize ("Haircut + Blow-dry", not "Service A")
- Duration per service so the calendar blocks the right amount of time
- Prices — optional, but it reduces "how much is it?" messages
- Your working hours and blocked days (public holidays, your day off)
If you have staff, add each person now and assign which services they can take.
Step 3: Get Your Embed Code
In your booking tool dashboard, look for "Website Integration", "Widget", or "Embed" — usually in Settings. You'll get three options:
- Inline widget — the full calendar appears directly on your page. Best for a dedicated "Book Now" page.
- Pop-up widget — a button the client clicks to open the calendar in a popup. Good if you want booking accessible from anywhere on your site.
- Floating button — a "Book" badge that sticks to the corner of every page. This converts well on mobile because it's always visible.
Copy the HTML snippet. It'll look like a few lines of code — you don't need to understand it, just copy it.
Step 4: Paste Into Your Website
Wix: Open your page editor → Add → Embed → HTML iFrame → paste the snippet.
Squarespace: Add a new block → Code Block → paste the snippet. Make sure "Display Source" is toggled off.
WordPress: Add a new block → Custom HTML → paste the snippet. For site-wide insertion (like a floating button), use the WP Code plugin and add it to the footer.
Fardino: When building your site, describe "include a Setmore booking widget on the homepage" and it places the widget during the build. No copy-pasting needed.
No website yet? Skip to the next section.
Step 5: Test It on Your Phone Before Going Live
Non-negotiable. Pull out your phone, open your site, and complete a full test booking. Check:
- Does the calendar load without horizontal scrolling?
- Does the confirmation email arrive in your inbox?
- Does the booking show up in your dashboard?
Most embed issues — cut-off calendars, buttons that don't fire — only show up on mobile. Fix them now, not after a client DMs you to say "your booking thing is broken."
The Shortcut: Start With a Site That Already Has Booking
If you don't have a website yet — or your current one is outdated and you'd rather start fresh — you can skip the embed route entirely.
Fardino builds the whole site and wires in your booking system in one step. Describe your business, tell it which booking tool you want, and it generates a live site with the widget already integrated. No embed codes, no separate accounts to configure manually.
For the full picture on building a small business website — booking, payments, compliance, and getting found on Google — the Small Business Website Playbook covers everything from scratch.
3 Mistakes That Will Cost You Bookings
1. No deposit at booking time. Letting clients book for free with no payment attached trains them to no-show. Require at least a small deposit through Stripe. Setmore and Acuity both support this. You'll immediately see fewer abandoned slots.
2. Reminders left off by default. Most tools ship with reminders turned off. Go into your notification settings right now and enable SMS + email reminders for 24 hours before and 1 hour before. This is the highest-ROI thing you can do after setting up the system.
3. Only testing on desktop. Over 70% of your clients will book on a phone. Every time you update your site — new page, new section, new embed — test it on mobile before calling it done. Desktop looks fine almost always. Mobile breaks constantly.
You Might Also Like
- Build a Restaurant Website in One Afternoon — digital menu, table reservations, and QR codes, step by step
- Personal Trainer Website in One Afternoon — class schedules, intro offers, and booking for fitness businesses
- The Small Business Website Playbook — the complete guide to building, launching, and getting found with AI
Frequently Asked Questions
What is the best free online booking system for small businesses?
Setmore has the most generous free plan in 2026: unlimited appointments, up to 4 staff accounts, and a public booking page with embeds. Square Appointments is the better pick if you already use Square for payments — the integration is seamless and the free plan covers 1 location and 1 staff member.
How do I add online booking to my website without coding?
Sign up for a booking tool (Setmore, Calendly, SimplyBook.me, etc.), go to their Website Integration or Widget settings, copy the HTML snippet, and paste it into an HTML/embed block in your website builder. No coding knowledge required — you're just copying and pasting a block of text.
Can I get a truly free booking system with no time limit?
Yes. Setmore, Square Appointments (1 location/staff), SimplyBook.me (50 bookings/month), and Zoho Bookings (1 service/staff) all have free plans with no expiry — these are not trials. Acuity Scheduling no longer offers a free tier.
Is Calendly or Square Appointments better for a salon?
Square Appointments. Calendly is designed for 1:1 professional meetings and doesn't handle multi-staff, multi-service scheduling as gracefully. For a salon with 3 stylists and 10 service types, Square or Setmore will be much smoother.
What's the difference between an inline widget and a popup booking widget?
Inline embeds the booking calendar directly on your page — clients see it without clicking anything. Popup shows a button ("Book Now") and opens the calendar when clicked. Inline converts better on a dedicated booking page. Popup is more flexible across a full site. The floating button variant of popup is the easiest to add to an existing site without redesigning anything.
How long does it actually take to set up online booking?
About 15 minutes for the basic setup: create account, add services and hours, copy the embed code, paste it on your site. Add another 10–15 minutes if you want to configure deposits, reminder messages, and staff assignments. You can be taking real bookings in under half an hour.
Written by the 0xMinds Team — we test AI tools so you don't have to. Build a website with AI →





