Your schedule on your own website: one snippet, booking included
Your schedule is the page people actually want from your website. On most studio sites it is a link that sends them to somebody else's.
Every vendor sells a widget to fix that, and the widget is the easy part. What separates them is what happens after a stranger taps a class on an iPhone.
Everybody has an embed
Mindbody's branded web tools offer to "Embed your class calendar, appointment bookings, staff profiles, account sign-up, and contact forms into your site using our sleek, modern widgets," and promise transactions "occur right on the page, so there's no bouncing around from screen to screen." Its pricing page shows branded website widgets included in Starter, Accelerate and Ultimate alike. Arketa documents an embed for "Squarespace, Wix, Wordpress, Webflow, Showit and more." Momence calls them plugins, and documents a hand-written iframe as the way to "present your customers with the checkout page for any membership, class, or product you want, without them leaving your site." WellnessLiving ships ten of them.
So the question was never whether your vendor has one. It is what the thing does once it is on your page.
The cookie nobody markets
A widget is an iframe. The page is your domain, the software inside the frame is theirs, so the cookie that keeps somebody signed in while they book is a third-party cookie. WellnessLiving writes down what that costs. Its widgets page says: "Widgets such as the Schedule Widget rely on browser cookies to function. Some web browsers such as Safari and Firefox block third-party cookies by default."
The Schedule Widget page finishes the thought: "Clients who disable cookies in their browser won't be able to book any services on the Schedule Widget." The help center's remedy is a guide for clients on how to enable cookies. That is a support ticket pointed at your front desk, except the member never files it. They close the tab.
The browsers already handed out the way through. WebKit: "WebKit for Safari 18.4 on macOS Sequoia 15.4, iOS 18.4, and visionOS 2.4 introduce support for opt-in partitioned cookies, known as CHIPS," where "Partitioned cookies allow third-party content on a web page to create and access cookies on that specific site without allowing cross-site tracking." A cookie marked that way is keyed to your site and is useless anywhere else, which is why Safari lets it through.
That is the cookie our frame holds. The session belongs to your website and to nothing else, and signing in inside it does not sign anyone into anything on our domain. The loader checks for that cookie on every load. When it does not come back, which means Safari 18.3 and older or a browser with cookies switched off, the embed hands the class over to the studio's own Frontmat page with a link back to your site, and the booking still happens. The bad case is one extra page, not a member who cannot book.
Frontmat is $99 a month flat. Every feature, every location, month to month. Card processing is Stripe’s published rate and goes to Stripe.
Start free, no sales callFree trial without a card. Your data exports any time, including after you cancel.Your website plan is the second gate
The snippet has to survive your site builder, and on the cheap tiers it does not. Squarespace is explicit: "Adding JavaScript or iframes to code blocks is available in the Core, Plus, Advanced, Business, Commerce Basic, and Commerce Advanced plans." Basic is not on that list. Arketa tells its own customers the same thing in its setup guide: "Adding JavaScript or iframes to Code Blocks is a Premium feature available in Business and Commerce plans."
WordPress.com is stricter. "Tags like iframe, script, style, form, embed, and object require a paid plan with hosting features activated," and "The Custom HTML block accepts restricted tags only on a paid plan." Paste a snippet on the free plan and your "code disappears or is partially removed after you save." Nobody tells you. The page just comes back blank where the schedule should be.
Wix and GoDaddy are a different case again. Their HTML boxes are sandboxed frames of their own, so our loader cannot reach the page around it and switches to handoff on purpose: the schedule renders on your page, and tapping a class opens it on your Frontmat address with a way back. Wix's Custom Element, on its premium plans, runs the same snippet in the frame. Arketa's Wix instructions carry a caveat worth knowing before you plan a page: "Web pages can only support one embed per page."
What ours does
- Four views from the same snippet: the full schedule, next classes, buy classes, and the member's account.
- A 2.4KB gzipped loader. The frame sizes itself to its contents, so no inner scrollbar and no guessed height.
- Two embeds on one page is a supported layout, not a workaround.
- Transparent background, your brand colour, and "Powered by Frontmat" can be turned off.
- Steps written for Squarespace, Wix, WordPress, Shopify, Webflow and GoDaddy.
- Included in the $99. No add-on, no per-member fee.
The first-timer is the point. Pick a class, get an email link, sign the waiver, pick a reformer, booked, without ever seeing a Frontmat page. On a phone the schedule is one header row, a filter panel and classes as rows, about half the height of the cards. Here it is on a made-up studio's website, running live off our demo studio.
Four minutes, on your own phone
Open your website in Safari on your phone, signed out of everything, the way a stranger arrives. Tap a class and book it. Count the pages that are not yours, and note the first moment it asks you to make an account somewhere. Whatever you find is what your first-timers found this week.
Frontmat is $99 a month flat. Every feature, every location, month to month. Card processing is Stripe’s published rate and goes to Stripe.
Start free, no sales callFree trial without a card. Your data exports any time, including after you cancel.