Case study · WordPress sites

Spa Fleet: WordPress, WooCommerce and technical SEO for a mobile sauna rental business

A mobile sauna rental site on WordPress and WooCommerce: night-based booking packages, delivery pricing, a Yoast baseline and an SEO audit.

Sector
Mobile sauna rental, bookings and events
Category
WordPress sites
Scope
One live WordPress site, spafleetrental.com, reviewed from public pages in October 2026

At a glance

Who it's for
A small rental business that delivers a mobile sauna to customer addresses and events in the states the site names (New York, New Jersey and Connecticut, with Pennsylvania, Massachusetts and Vermont added on some pages), and takes bookings online.
Core stack
WordPress 7.1.3, WooCommerce 11.2.1, Yoast SEO 28.7, Divi Builder 4.27.9, the ova-brw booking plugin 2.0.5, Stripe gateway
What sets it apart
Hotel-style booking: a package per night count, an availability calendar, and a cart that works out the delivery fee from the customer's state, city and zip code.

The live site

The homepage and the pricing and availability page, captured in October 2026. Each opens the live page.

spafleetrental.com
Spa Fleet homepage as captured in October 2026: a large hero photo with a logo on each side of the header.
Spa Fleet: homepage A header with the Spa Fleet name, a logo on each side and a menu (Home, About, Book, Cart, Event Rentals, Gift Certificates, News & Offers), above a large hero photo of a mobile sauna at dusk.
spafleetrental.com/pricing-availability/
Spa Fleet pricing and availability page as captured in October 2026: plain text on how nightly bookings, pricing, delivery fees and full-service rentals work.
Spa Fleet: pricing and availability A text page that explains night-based bookings, pricing, delivery fees and times, and full-service rentals.

The challenge

Spa Fleet rents out a physical product that travels. A customer needs to see what the sauna is, pick dates, learn what delivery to their address costs, and pay, all without calling. The same business also takes event bookings with an attendant, and sells gift certificates, which do not fit a normal checkout.

The business also names several states under one small brand. The site has to say where it works, keep prices clear, and give search engines a clean set of pages to read.

What is built

The site runs on WordPress with WooCommerce. A booking page lists the Cloudberry mobile sauna as nine night packages, from 1 to 56 nights, each with an extra-nights selector and a Check Availability button. The cart prices delivery from the state, city and zip code, and the pricing page notes that New York deliveries carry 8% sales tax.

Event rentals, gift certificates, a news page for offers, a Q and A page and a downloadable rental agreement sit around the booking flow. Yoast SEO writes titles, canonicals (tags that tell search engines which address is the main one), Open Graph tags (tags that control how a link previews when shared), schema (structured data that describes the page to search engines) and the XML sitemaps.

Key pages and structure

Counts come from the site's own XML sitemaps and page source, October 2026.

  • 01

    Booking and pricing

    The book page shows nine packages (1, 7, 14, 21, 28, 35, 42, 49 and 56 nights) with an availability check on each. The pricing page explains the nightly model: delivery by 5 p.m. on the first day, pickup by noon the day after the last night.

    Pattern: one booking page, one pricing page, one cart.

  • 02

    Products and add-ons

    The product sitemap lists 8 URLs: the Cloudberry Mobile Sauna, a cold dunk tank, a single and a set of two cold dunk sit tubs, rental towels and a birch whisk, plus two entries that look like leftovers (/product/test-2/ and /sauna-culture-2/). A separate mobile-sauna content type lists 2 URLs.

    Pattern: /product/cold-dunk-tank/.

  • 03

    Event rentals and gift certificates

    The event page sets out the terms for larger events: an attendant at $50 per sauna run-time hour, room and board or a $200 per night per diem, and an optional insurance listing fee. The gift certificate page is a form with a sum question and a cheque or PayPal choice.

    Both pages end with a contact form or an email address.

  • 04

    Questions and news

    The Q and A page has 8 questions headed "Q:" on use, cost, rental terms, cancellation, fire safety and delivery site needs, with a user manual and rental agreement to download. The news page holds a summer offer dated 11 August 2026.

  • 05

    Supporting pages

    About (the Cloudberry features), contact form, privacy policy, a rental agreement page, gallery, press room and sauna culture pages. The page sitemap holds 20 URLs, including /checkout/, /checkout-test-2/ and /sauna-culture-old/.

    Contact: an info@ email address; no phone number or street address was found.

Technical SEO baseline

What is in place on spafleetrental.com, read from the page source, robots.txt (the file that tells search engines which areas to skip), sitemaps and response headers.

  1. Booking and product pages/book/, /product/, /pricing-availability/
  2. Yoast SEO 28.7title, canonical, Open Graph, schema
  3. Sitemaps and robots.txt14 child sitemaps, 7 blocked bots
  4. Cart and checkout/cart/ with /checkout/ canonical to it
  5. Delivery and paymentstate, city, zip fee; Stripe gateway
Booking and product pages feed Yoast, which writes the metadata, schema and sitemaps. Visitors then move through the cart, where delivery is priced and payment is taken.
  • Every public page checked has a canonical tag and Open Graph tags. The schema is a Yoast graph of WebPage, WebSite (with a search action) and BreadcrumbList. No Product, Offer, Organization, LocalBusiness or FAQPage markup was found on the pages checked, including one product page.
  • robots.txt blocks seven crawlers outright (Baiduspider, AhrefsBot, MJ12bot, BLEXBot, DotBot, SemrushBot, YandexBot), allows everything else, and names one sitemap file under /wp-content/uploads/. The Yoast index at /sitemap_index.xml lists 10 post sitemaps plus page, product, mobile-sauna and product category sitemaps.
  • No robots meta tag (a tag that tells search engines whether to index a page) was found on any page checked, so the cart and checkout can be indexed; /checkout/ shows the cart and points its canonical to /cart/. An unknown URL returns a real 404, and the REST API at /wp-json/ is open.

Audit findings

Where the site still has room to improve.

  1. Several H1 headings on one page

    The site title in the header is an H1 (the main page heading that search engines read) on every page, so each page has that H1 before its own heading. The homepage has four H1 elements, one of them empty, and two more read "Have A Look At Our" and "Video!". The book page has ten H1s, one for each package, and the news page has only the site title H1. Using H2 or H3 (second- or third-level headings) for package and offer titles is commonly recommended.

  2. Titles and descriptions

    The homepage title says "Mobile Spa & Sauna Rental" while the visible brand says "Mobile sauna rental". The about page title does not include the brand name. The cart, event rentals, gift certificates and news pages have an empty meta description, and the FAQ description has a typo ("Frequental"). Service-area text differs between pages: the book and about titles name NY, NJ and CT, the pricing title adds PA, MA and VT, and the privacy page description names only CT, MA, PA and VT.

  3. Image alt text

    The homepage has 3 images, and two logos have no alt attribute while a third has an empty one. The about page has 10 images with no alt attribute, and the pricing, cart, event rentals, FAQ and privacy pages each have 2. Alt text is present on the book page's package image ("Mobile Sauna Rental"), so the fix is to add it to the rest.

  4. Schema is thin for a rental business

    There is no Organization or LocalBusiness data, so no logo, contact point or service area is machine-readable. The product pages have no Product schema, and the homepage breadcrumb has one item. The booking packages are not marked up as offers.

  5. Test and duplicate pages

    The sitemaps include /checkout-test-2/ (titled "Checkout_old"), /sauna-culture-old/, /sauna-culture-2/ and a product called "Cloudberry Mobile Sauna 2" at /product/test-2/. All return 200 and have their own canonical. The contact page answered a request sent with a generic browser user-agent string with a 403 error and a noindex tag (an instruction telling search engines to leave a page out of results). Headless Chrome rendered the form normally, so real visitors are not blocked, but a crawler that sends a similar user-agent string could be.

  6. Local signals and analytics

    The service area is written in text, but no phone number, street address or map was found on the pages checked. No Google Analytics or Tag Manager ID appears in the page source. None of the homepage's three images is lazy loaded, while the about page lazy loads 7 of its 10.

  7. Caching and freshness

    A product page is sent with cache-control: no-store, no-cache and an x-cache-enabled: False header. The newest news item is dated 11 August 2026, and the news page also carries cleaning and virus-safety text. PHP version could not be confirmed, as no header reports it.

Technology stack

Taken from the page source and response headers.

Platform
  • WordPress 7.1.3
  • WooCommerce 11.2.1
  • Make theme with a child theme
  • Divi Builder 4.27.9
SEO
  • Yoast SEO 28.7
  • JSON-LD graph
  • XML sitemap index
Bookings and payments
  • ova-brw 2.0.5 booking plugin
  • WooCommerce Stripe Gateway
  • Calendar sync plugin (vr-calendar-sync)
  • reCAPTCHA reference
Hosting
  • nginx
  • No page cache on checked product page

Business value

What the setup enables. No ranking, traffic or booking numbers are claimed.

  • Lets a customer check dates, see a quote and pay online, with delivery priced by address in the cart rather than by phone call.
  • Covers the other ways people rent: events with an attendant, gift certificates and add-on tubs and towels.
  • Answers common buyer questions in plain text on a Q and A page and a pricing page.
  • Turns the audit above into a short fix list, starting with headings, schema, alt text, descriptions and test pages.

Need SEO and WordPress work like this?

Tell us what the site needs to do and we will scope it with you on a call.

Discuss a build