
Every template on this page is our own. uiCookies designs, codes and maintains each one in-house, so this isn't a roundup of other people's themes stitched together — it's a small, deliberate family built to one standard, for the spa, salon, beauty and wellness niche specifically.
A good spa or wellness site has one job: turn a curious visitor into a booking or a sale. That means honest, visible pricing instead of 'contact us for rates', a booking or buy path that's never more than a tap away, room for real photography, and trust signals like named therapists or teachers. The calm these businesses trade on has to live in the design too — restraint, not clutter — which is why we skip the beige-on-beige clichés the category is drowning in.
All of them are free to download, built on Bootstrap 5 with zero jQuery, and ship with a live demo and a direct download — no sign-up wall. They're plain HTML, CSS and JavaScript, so you can open a file, change the copy and prices, drop in your own photos and go live without a build step or a framework to learn.
The templates
Fade

Fade is a bold template for barbershops and men's grooming: a priced services list, a meet-the-barbers row, a 'the cuts' gallery with a lightbox, a step-by-step booking form (barber then service then time), a grooming-products shop and membership and location sections across a home and an About page.
Rugged charcoal-and-amber styling gives it a classic, masculine feel. Built on Bootstrap 5 with vanilla JavaScript, no jQuery.
Serene

Serene is the one to reach for when you sell treatments and need bookings, not browsing. Built for day spas, massage therapists and facial studios, it puts a real, priced treatment menu and a working booking form front and centre, backed by a lightbox gallery and a named-therapist row on a single page. Its blue-slate and warm-greige palette, lit by a single amber accent, deliberately sidesteps the sage-and-terracotta look every other spa template defaults to.
Lumen

Lumen is the only template here built to sell a product rather than book a service — a clean-beauty skincare storefront rather than a treatment room. It suits small skincare and cosmetics brands who want to merchandise a tight line, with a shoppable bestsellers grid, a working category filter, a live add-to-bag counter and discounted bundles. Its standout is transparency: published ingredient percentages, an AM/PM routine builder and a draggable before-and-after slider that do the convincing for you.
Bloom

Bloom is built around a recurring schedule, for studios that sell memberships and classes instead of one-off treatments. It fits yoga, pilates and movement studios, pairing an interactive day-by-day timetable with class-type cards, a teacher row, membership tiers and a retreat feature on one page. Its grounded forest-green and sunrise-gold identity, built on warm oat with a rising-sun motif, trades spa beige for something with more root and warmth.
Compare at a glance
| Template | Best for | Layout | Standout feature |
|---|---|---|---|
| Serene | Day spas & treatment salons | One-page, booking-led | Priced treatment menu + working booking form |
| Lumen | Clean-beauty product brands | Multi-section storefront | Shoppable grid with filter & add-to-bag |
| Bloom | Yoga & movement studios | One-page, schedule-led | Interactive weekly schedule + memberships |
How to choose
Start with what you actually sell, because that decides the template more than colour does. If your revenue is booked treatments, Serene's priced menu and booking form are the whole point. If you sell physical product, Lumen's shoppable grid and cart are built for it. If you run recurring classes on memberships, Bloom's weekly schedule and pricing tiers fit the way you already work. Forcing a product store onto a massage business, or a booking page onto a skincare line, usually means burying the one action you needed the visitor to take.
Whatever you pick, a few things matter more in this niche than in most. Show prices — spa and salon shoppers bounce fast when rates are hidden. Keep the booking or buy button reachable from every screen, and assume mobile first, because most of this traffic is on a phone and often booking same-day. And because these pages are image-heavy by nature — hero shots, galleries, treatment and product photography — unoptimised images are the single biggest thing that will slow you down; compress everything to WebP or AVIF and lazy-load the gallery, and the jQuery-free build stays quick.
One thing to be clear on: the booking form, category filter and add-to-bag are working front-end demos, not a wired-up backend. To take real bookings or payments, connect the form to a service like Formspree or a scheduling provider (Fresha, Acuity, Calendly), or port the markup into WordPress, Shopify or a headless CMS. When you customise, swap the demo photos for your own and resist over-styling — the restrained palettes are doing deliberate work, and your photography is meant to carry the brand. Host the finished files anywhere static — Netlify, Cloudflare Pages, GitHub Pages — and mind the licence on any icon or font you add that we didn't ship.
Frequently asked questions
Can I use these templates for commercial and client work?
Yes. They're free to download and use on commercial spa, salon and wellness projects, including paid client sites. Keep the licence file that ships with each template and check its readme for any attribution note.
Are the templates responsive on phones and tablets?
Yes — they're built on Bootstrap 5's mobile-first grid and tested down to small screens. That matters here because the majority of spa and salon visits, and most same-day bookings, happen on a phone.
Can I edit them without a build step or knowing a framework?
Yes. They're plain HTML, CSS and JavaScript with no jQuery and no build tooling required — open the files in any editor, change the text, prices and images, and refresh the browser. If a template ships SCSS sources you can compile those, but you don't have to.
Do the booking form and add-to-bag actually work?
They work as front-end demos — the filter, cart counter and form interactions all respond — but they aren't connected to a payment or booking backend out of the box. Point the booking form at a form or scheduling service, and wire the cart to your commerce platform, to take real transactions.
Can I connect one to WordPress, Shopify or a booking system?
Yes. The markup is standard and portable, so you can rebuild it as a WordPress theme, drop the sections into a page builder, or move Lumen's store into Shopify or a headless CMS. Service sites often just embed a booking widget from Fresha, Acuity or Calendly into Serene or Bloom.
Will all the photography make the pages slow?
Not if you optimise the images, which is the main thing to get right on an image-led site. Compress your photos to WebP or AVIF, lazy-load the gallery and keep the hero light; the templates themselves are lean and jQuery-free, so images are the main variable.
Related templates
Free Fashion Website Templates · Free Restaurant Website Templates · All free HTML website templates