How to add booking to your Webflow site without iframes
Every way to put scheduling on a Webflow site, ranked: external redirects, iframe embeds, custom forms, and native CMS booking. With the trade-offs nobody lists.
There are exactly four ways to put scheduling on a Webflow site, and most "how to add booking to Webflow" articles only mention the worst two. Here is the full menu, ranked, with the trade-offs nobody lists up front.
Option 1: External redirect
A button that sends visitors to calendly.com/you or acuityscheduling.com/you. Zero setup. It
also throws your visitor off your site at the exact moment they decided to convert, onto a page that looks nothing like
yours.
Option 2: Iframe embed
Paste an embed and the booking flow renders inside a frame on your page. Better than a redirect, the visitor stays put. But the frame can't read your CMS, can't inherit your design, adds its own load time, and shows a third-party domain in the confirmation. It's a rented rectangle.
Option 3: A custom form + a spreadsheet
Some teams build a Webflow form ("pick a date, we'll confirm") and manage the calendar by hand. It looks native because it is. But it's not real scheduling: no live availability, no timezone math, no double-booking protection, no reminders. It works until you get busy, which is precisely when it fails.
Option 4: A native booking app
A Webflow Marketplace app that installs via OAuth, reads your Collections, renders a real booking widget on your own domain, and writes bookings back into your CMS. This is the only option that is both native and real scheduling. It's also the only one that knows your services and staff already exist.
The ranking
- Native booking app — native and real. The right answer when booking matters.
- Iframe embed — real scheduling, not native. Fine for a quick "book a call" link.
- External redirect — real scheduling, actively un-native. Avoid for anything important.
- Form + spreadsheet — native, not real. A trap that scales badly.
The one that gets timezones right
Whatever you choose, test it across a daylight-saving change and a cross-timezone booking. It is the single most common place booking tools break, and the bugs are silent: a slot that shows 2:00 PM to the visitor and 1:00 PM to you. A tool that stores everything in UTC and renders in the visitor's timezone — and is tested across spring-forward and fall-back — is the difference between "booked" and "no-show."
Scheduling your Webflow site deserves.
Map a Collection, set your hours, take your first booking today.