Coachful
CoachfulHelp

How to add a Calendly-style booking widget to your site

By Coachful11 min readUpdated Apr 20, 2026

Learn how to add a Calendly-style booking widget to your coaching website using Coachful's built-in scheduler — no third-party tools, no extra fees, full brand control.

What's covered
  • TL;DR — Quick Answer
  • Why Replace Calendly with a Native Booking Widget?
  • Setting Up Your Session Types Before You Add the Widget
  • Connecting Your Calendar and Setting Availability
  • Adding a Booking Widget to Your Coachful Website
  • Adding a Booking Link to an External Website

If you've ever tried to embed a third-party booking tool into your coaching website, you already know the pain: mismatched branding, extra monthly fees, clients bouncing between tabs to confirm a session, and zero connection between your scheduler and the rest of your coaching workflow. Adding a Calendly-style booking widget to your site sounds simple — and with Coachful, it is. Your built-in scheduling system lives on the same platform as your programs, payments, and client messaging, so every booking flows straight into your coaching workspace.

This guide walks you through exactly how to surface your Coachful booking experience on your website, whether you're using a Coachful-hosted site, a custom domain, or an external site where you want to embed or link your booking page.

TL;DR — Quick Answer

  • Coachful has built-in scheduling (1:1 sessions, group calls, intake calls) — no Calendly subscription needed.
  • Your personal booking page lives at {your-slug}.coachful.co/book by default, or on your own custom domain.
  • You can embed a booking link or button on any page using Coachful's drag-and-drop website builder, or paste a link/button on an external site.
  • Availability, calendar sync, and session types are all configured in Coach → Bookings → Settings.

Why Replace Calendly with a Native Booking Widget?

Calendly and similar scheduling tools solve one problem: letting prospects pick a time. But they don't know what happens before or after that click. They can't automatically add a client to your 12-week program after an intake call. They can't trigger a payment. They don't update your coaching dashboard or notify you inside the same app where you run your sessions.

Coachful's booking system is purpose-built for coaches. When a prospect books an intake call, you can review their intake form answers, start a conversation in Stream Chat, and enroll them in a program — all without switching tools. For clients, the experience feels seamless because it is seamless: one platform, one login, one place to see their schedule, their tasks, and their coach.

Coaches who move from third-party schedulers to Coachful's native bookings typically save $15–$20/month on tool subscriptions and, more importantly, cut the drop-off that happens when clients have to navigate multiple apps just to book a session.

Setting Up Your Session Types Before You Add the Widget

Before you can add a booking widget to your site, you need at least one session type configured. Think of session types as your "meeting templates" — a 30-minute discovery call, a 60-minute 1:1 coaching session, a group onboarding call, and so on.

  1. Go to Coach → Bookings → Session Types in your Coachful dashboard.
  2. Click Create session type.
  3. Name the session (e.g., "Free Discovery Call"), set the duration, and choose whether it's a 1:1 session, group call, or intake call.
  4. Add a description that appears on your booking page — treat this like a mini sales page. Mention the outcome the client will get from the call.
  5. Set your pricing (free, one-time charge, or connect it to an offer via Stripe Connect).
  6. Choose the conferencing method: built-in Coachful video, or a custom link (Zoom, Meet, etc.).
  7. Save the session type.

Repeat for each type of session you offer. Most coaches set up 2–4 session types: a free discovery call, a paid 1:1 session, and one or two group call options.

Connecting Your Calendar and Setting Availability

Your booking widget is only as useful as the availability behind it. Coachful syncs with Google Calendar (and other calendar providers via OAuth) so that your real-time availability is always accurate — no double-bookings, no manual blocking.

  1. Navigate to Coach → Bookings → Settings → Calendar Sync.
  2. Click Connect Calendar and authenticate with your Google account (or your preferred provider).
  3. Select which calendars to check for conflicts. Coachful reads events from these calendars to block off busy times automatically.
  4. Under Availability, set your weekly schedule — the days and hours you're open for bookings.
  5. Configure buffer times (e.g., 15 minutes between sessions) and minimum notice (e.g., clients must book at least 24 hours in advance).

Once this is set, your booking page will only surface genuinely open slots. Clients book. It lands in your Coachful dashboard and your connected calendar simultaneously.

Pro tip: Set up separate availability windows for discovery calls vs. paid sessions. You might want discovery calls only on Tuesday and Thursday mornings, while paid sessions are available Monday through Friday. Use session-type-level availability overrides to fine-tune this.

Adding a Booking Widget to Your Coachful Website

If your coaching website is hosted on Coachful (at {slug}.coachful.co or your custom domain), embedding a booking experience is drag-and-drop simple.

Option 1: Add a Booking Button to Any Page

  1. Open your Coachful website builder: Coach → Website → Pages.
  2. Open the page where you want the booking button (your homepage, a services page, or a dedicated "Book a Call" page).
  3. In the block library, drag a Button block onto the canvas.
  4. Set the button label (e.g., "Book a Free Discovery Call" — specific beats generic).
  5. In the link field, enter your booking page URL. Your base booking URL is https://{your-slug}.coachful.co/book. To link directly to a specific session type, append the session type slug: https://{your-slug}.coachful.co/book/discovery-call.
  6. Style the button to match your brand colors — Coachful's builder gives you full control over background color, text color, border radius, and sizing.
  7. Publish the page.

Option 2: Embed a Booking Section with an Inline Block

  1. In the page editor, drag a Booking Block (or Embed block) from the sidebar.
  2. Select the session type you want to display inline.
  3. The block renders a calendar picker directly on the page — clients see your available slots without navigating away.
  4. Adjust padding and section spacing so the widget sits comfortably within your page layout.
  5. Preview on mobile before publishing — Coachful's builder is responsive by default, but always sanity-check on small screens.
Coaches using Coachful love this approach for dedicated landing pages — a single page that explains the call, shows testimonials, and ends with a live booking widget. No redirect, no friction.

Adding a Booking Link to an External Website

Already have a website on Squarespace, WordPress, Webflow, or another platform? No problem. You don't need to migrate. Just use your Coachful booking URL as the destination for any button or link on your external site.

  1. Copy your booking page URL from Coach → Bookings → Share — it's displayed there for easy copying.
  2. On your external site, add a call-to-action button and paste the Coachful booking URL as the link destination.
  3. Optionally, open the link in a new tab so visitors don't fully leave your site.
  4. If your external site supports iframes, you can embed the booking page directly using an <iframe> tag pointed at your booking URL. Set a height of at least 700px for comfortable display.

If you have a custom domain set up in Coachful (e.g., www.yourcoachingbrand.com), your booking page will live at www.yourcoachingbrand.com/book — fully branded, SSL-secured, no Coachful subdomain visible to your clients. Custom domains are configured under Coach → Settings → Custom Domain.

Adding a Booking Link to Your Link-in-Bio Page

Coaches who drive traffic from Instagram, TikTok, or LinkedIn often use a link-in-bio page as their traffic hub. Coachful includes a built-in link-in-bio builder — no Linktree subscription needed.

  1. Go to Coach → Website → Link in Bio.
  2. Add a new link block. Label it something direct: "📅 Book a Free Call" or "Schedule Your Strategy Session".
  3. Paste your booking URL as the destination.
  4. Drag it to the top of your link list — it should be the first or second item, not buried at the bottom.
  5. Save and preview. Your link-in-bio lives at {slug}.coachful.co/links by default, or at your custom domain.

Promoting Your Booking Page Beyond Your Website

Your booking widget is most powerful when clients can find it everywhere they encounter you. A few quick wins:

  • Email signature: Add a "Book a call with me →" line with your booking URL. Tools like Google Workspace let you add clickable links to your signature in seconds.
  • Automated email sequences: If you use email marketing, include your booking link in your welcome sequence for new subscribers.
  • Client portal: Existing clients see your availability directly inside their Coachful client dashboard — they can rebook without ever leaving the platform.
  • Coachful Marketplace: Your coach profile on coachful.co/find-a-coach surfaces your booking option to prospects actively searching for coaching — a passive discovery channel that requires zero extra setup.

Pro Tips for a High-Converting Booking Page

The biggest conversion killer on booking pages is vagueness. "Book a call" performs worse than "Book your free 30-minute business clarity call." Be specific about duration, cost (free or paid), and what the client walks away with.
  • Add a short video: Even a 60-second intro video above your booking widget can lift conversion rates significantly. Record a quick Loom or upload directly in Coachful's page builder.
  • Collect intake info at booking: Coachful lets you add custom intake questions to your session types. Ask 3–5 focused questions so you show up prepared — and so time-wasters self-select out.
  • Set confirmation messaging: Customize the confirmation screen and email that clients see after booking. Reinforce what they should expect, what to prepare, and how excited you are to talk with them.
  • Use instant booking vs. manual approval: For free discovery calls, instant booking is frictionless. For high-ticket offers, consider requiring manual approval so you can pre-qualify before confirming.

Troubleshooting Common Booking Widget Issues

No available slots are showing on my booking page

This almost always means your availability window is either empty or not configured for the correct timezone. Go to Coach → Bookings → Settings → Availability and confirm your timezone matches your local timezone, not UTC. Also check that you haven't blocked off the entire week accidentally with your calendar sync.

My booking page shows "Coachful" branding but I want my own brand

Set up a custom domain under Coach → Settings → Custom Domain. Once your domain is connected and SSL is provisioned (usually within 5–10 minutes), your booking page will reflect your domain with no Coachful subdomain visible. You can also customize your logo, brand colors, and favicon in Coach → Settings → Branding.

Clients are booking but I'm not getting notifications

Check your notification preferences under Coach → Settings → Notifications. Make sure email notifications for new bookings are toggled on. Also verify that your connected calendar is actually receiving the events — open Google Calendar and look for the booking as a calendar event after a test booking.

The booking embed looks broken on mobile

If you're using an <iframe> embed on an external site, add style="width:100%; min-height:700px; border:none;" to your iframe tag. This ensures it scales responsively. If you're on a Coachful-hosted page, use the native Booking Block rather than an iframe — it's fully responsive out of the box.

I want to offer a paid session through my booking page

Connect Stripe under Coach → Settings → Payments (Stripe Connect). Once connected, you can assign a price to any session type. Clients pay at the time of booking — the charge is captured through Stripe, and funds go directly to your Stripe account. See our guide on setting up Stripe payments for a full walkthrough.

I have multiple coaches on my team — can each have their own booking page?

Yes. Each coach role on your Coachful workspace has their own availability and session types. Clients can be directed to a specific coach's booking page using that coach's unique booking URL. Admins can manage team booking settings under Admin → Team → Coaches.

Ready to Replace Your Booking Tool and Streamline Your Coaching Business?

Adding a Calendly-style booking widget to your site doesn't have to mean another subscription, another integration, or another tab for your clients to navigate. Coachful's built-in scheduling — session types, calendar sync, intake forms, Stripe payments, and real-time video — is designed to do the job of three or four separate tools, unified in one coaching workspace.

Set up your session types, connect your calendar, drop a booking button on your site, and you're live. If you're not on Coachful yet, start your free trial and have your booking page live in under an hour. Already a member? Sign in to your workspace and head to Coach → Bookings to get started. For more guides like this one, browse the Coachful Help Center.

Frequently asked questions

Does Coachful have a built-in booking system so I don't need Calendly?
Yes. Coachful includes a full scheduling system with 1:1 sessions, group calls, and intake calls — no third-party scheduler required. You get session types, availability windows, calendar sync, intake forms, and Stripe payments all in one place.
How do I embed a booking calendar on my website without coding?
In Coachful's drag-and-drop website builder, add a Booking Block or Button block to any page and link it to your booking URL. For external sites like Squarespace or WordPress, paste your Coachful booking URL into any button or use an iframe embed. No code required for either approach.
Can clients book and pay at the same time through my booking page?
Yes. Connect Stripe under Coach → Settings → Payments, then assign a price to any session type. Clients pay at the moment of booking, and funds go directly to your Stripe account via Stripe Connect.
What is my Coachful booking page URL?
Your booking page URL is https://{your-slug}.coachful.co/book by default. If you've connected a custom domain, it will be https://yourdomain.com/book. You can link to specific session types by appending the session type slug.
Can I collect intake information when clients book a session?
Yes. Coachful lets you add custom intake questions to each session type. Clients answer these questions during the booking flow, and their responses appear in your dashboard before the session so you can prepare.
Does the booking page work on mobile devices?
Coachful booking pages are fully responsive and work on all mobile browsers. The native Booking Block in the website builder is mobile-optimized by default. If you're using an iframe embed on an external site, add responsive CSS (width:100%; min-height:700px) for best results.
Can each coach on my team have their own booking page?
Yes. Every coach on your Coachful workspace has their own availability settings, session types, and unique booking URL. Admins can manage team scheduling settings from the Admin → Team → Coaches section.
Was this article helpful?