Visual E2E Report

Declutter with Kiah — Desktop / Tablet / Mobile
141 passed 1 skipped 142 tests · 11 modules · 3 viewports
Booking Wizard 20
booking wizard — step 1: service selection › renders available services from seed data
3.8s
desktop
booking wizard — step 1: service selection › renders available services from seed data desktop
tablet (iPad)
booking wizard — step 1: service selection › renders available services from seed data tablet
mobile (Pixel 7)
booking wizard — step 1: service selection › renders available services from seed data mobile
booking wizard — step 1: service selection › shows service names, prices, and durations
7.9s
desktop
booking wizard — step 1: service selection › shows service names, prices, and durations desktop
tablet (iPad)
booking wizard — step 1: service selection › shows service names, prices, and durations tablet
mobile (Pixel 7)
booking wizard — step 1: service selection › shows service names, prices, and durations mobile
booking wizard — step 1: service selection › service cards are clickable
4.1s
desktop
booking wizard — step 1: service selection › service cards are clickable desktop
tablet (iPad)
booking wizard — step 1: service selection › service cards are clickable tablet
mobile (Pixel 7)
booking wizard — step 1: service selection › service cards are clickable mobile
booking wizard — step 1: service selection › pre-selects service via URL query param
7.9s
desktop
booking wizard — step 1: service selection › pre-selects service via URL query param desktop
tablet (iPad)
booking wizard — step 1: service selection › pre-selects service via URL query param tablet
mobile (Pixel 7)
booking wizard — step 1: service selection › pre-selects service via URL query param mobile
booking wizard — step 2: date/time › step 2 shows date options after service selection
21.6s
desktop
booking wizard — step 2: date/time › step 2 shows date options after service selection desktop
tablet (iPad)
booking wizard — step 2: date/time › step 2 shows date options after service selection tablet
mobile (Pixel 7)
booking wizard — step 2: date/time › step 2 shows date options after service selection mobile
booking wizard — step 3: customer details › shows Your Details heading and form fields
25.3s
desktop
booking wizard — step 3: customer details › shows Your Details heading and form fields desktop
tablet (iPad)
booking wizard — step 3: customer details › shows Your Details heading and form fields tablet
mobile (Pixel 7)
booking wizard — step 3: customer details › shows Your Details heading and form fields mobile
booking wizard — step 3: customer details › shows selected service and "date to be scheduled"
22.9s
desktop
booking wizard — step 3: customer details › shows selected service and "date to be scheduled" desktop
tablet (iPad)
booking wizard — step 3: customer details › shows selected service and "date to be scheduled" tablet
mobile (Pixel 7)
booking wizard — step 3: customer details › shows selected service and "date to be scheduled" mobile
booking wizard — step 3: customer details › has Continue to Pricing button
22.1s
desktop
booking wizard — step 3: customer details › has Continue to Pricing button desktop
tablet (iPad)
booking wizard — step 3: customer details › has Continue to Pricing button tablet
mobile (Pixel 7)
booking wizard — step 3: customer details › has Continue to Pricing button mobile
booking wizard — step 4: pricing › shows Choose Your Price heading
24.8s
desktop
booking wizard — step 4: pricing › shows Choose Your Price heading desktop
tablet (iPad)
booking wizard — step 4: pricing › shows Choose Your Price heading tablet
mobile (Pixel 7)
booking wizard — step 4: pricing › shows Choose Your Price heading mobile
booking wizard — step 4: pricing › shows tier buttons with "Most chosen" badge
24.3s
desktop
booking wizard — step 4: pricing › shows tier buttons with "Most chosen" badge desktop
tablet (iPad)
booking wizard — step 4: pricing › shows tier buttons with "Most chosen" badge tablet
mobile (Pixel 7)
booking wizard — step 4: pricing › shows tier buttons with "Most chosen" badge mobile
booking wizard — step 4: pricing › has Continue to Payment button
30.1s
desktop
booking wizard — step 4: pricing › has Continue to Payment button desktop
tablet (iPad)
booking wizard — step 4: pricing › has Continue to Payment button tablet
mobile (Pixel 7)
booking wizard — step 4: pricing › has Continue to Payment button mobile
booking wizard — step 5: payment › shows Review & Pay heading and booking summary
88.3s
desktop
booking wizard — step 5: payment › shows Review & Pay heading and booking summary desktop
tablet (iPad)
booking wizard — step 5: payment › shows Review & Pay heading and booking summary tablet
mobile (Pixel 7)
booking wizard — step 5: payment › shows Review & Pay heading and booking summary mobile
booking wizard — step 5: payment › shows service name in summary
25.6s
desktop
booking wizard — step 5: payment › shows service name in summary desktop
tablet (iPad)
booking wizard — step 5: payment › shows service name in summary tablet
mobile (Pixel 7)
booking wizard — step 5: payment › shows service name in summary mobile
booking wizard — step 5: payment › shows payment gateway options
22.9s
desktop
booking wizard — step 5: payment › shows payment gateway options desktop
tablet (iPad)
booking wizard — step 5: payment › shows payment gateway options tablet
mobile (Pixel 7)
booking wizard — step 5: payment › shows payment gateway options mobile
booking wizard — step 5: payment › has terms checkbox and gift card section
26.0s
desktop
booking wizard — step 5: payment › has terms checkbox and gift card section desktop
tablet (iPad)
booking wizard — step 5: payment › has terms checkbox and gift card section tablet
mobile (Pixel 7)
booking wizard — step 5: payment › has terms checkbox and gift card section mobile
booking wizard — pay on day gateway › can select Pay on Day and see Confirm Booking
19.9s
desktop
booking wizard — pay on day gateway › can select Pay on Day and see Confirm Booking desktop
tablet (iPad)
booking wizard — pay on day gateway › can select Pay on Day and see Confirm Booking tablet
mobile (Pixel 7)
booking wizard — pay on day gateway › can select Pay on Day and see Confirm Booking mobile
booking wizard — pay on day gateway › page source includes pay_on_day gateway case in blade
1.5s
desktop
booking wizard — pay on day gateway › page source includes pay_on_day gateway case in blade desktop
tablet (iPad)
booking wizard — pay on day gateway › page source includes pay_on_day gateway case in blade tablet
mobile (Pixel 7)
booking wizard — pay on day gateway › page source includes pay_on_day gateway case in blade mobile
booking wizard — pay on day gateway › service selection triggers step advance
3.2s
desktop
booking wizard — pay on day gateway › service selection triggers step advance desktop
tablet (iPad)
booking wizard — pay on day gateway › service selection triggers step advance tablet
mobile (Pixel 7)
booking wizard — pay on day gateway › service selection triggers step advance mobile
booking wizard — embed variant › /book/embed loads in iframe-safe layout
1.6s
desktop
booking wizard — embed variant › /book/embed loads in iframe-safe layout desktop
tablet (iPad)
booking wizard — embed variant › /book/embed loads in iframe-safe layout tablet
mobile (Pixel 7)
booking wizard — embed variant › /book/embed loads in iframe-safe layout mobile
booking wizard — embed variant › /book/embed has no main site navigation
1.5s
desktop
booking wizard — embed variant › /book/embed has no main site navigation desktop
tablet (iPad)
booking wizard — embed variant › /book/embed has no main site navigation tablet
mobile (Pixel 7)
booking wizard — embed variant › /book/embed has no main site navigation mobile
Contact Form 12
contact form — page and layout › contact page renders form with all fields
1.7s
desktop
contact form — page and layout › contact page renders form with all fields desktop
tablet (iPad)
contact form — page and layout › contact page renders form with all fields tablet
mobile (Pixel 7)
contact form — page and layout › contact page renders form with all fields mobile
contact form — page and layout › embed variant renders without site navigation
1.1s
desktop
contact form — page and layout › embed variant renders without site navigation desktop
tablet (iPad)
contact form — page and layout › embed variant renders without site navigation tablet
mobile (Pixel 7)
contact form — page and layout › embed variant renders without site navigation mobile
contact form — validation › shows error when name is empty
8.5s
desktop
contact form — validation › shows error when name is empty desktop
tablet (iPad)
contact form — validation › shows error when name is empty tablet
mobile (Pixel 7)
contact form — validation › shows error when name is empty mobile
contact form — validation › shows error when email is empty
1.9s
desktop
contact form — validation › shows error when email is empty desktop
tablet (iPad)
contact form — validation › shows error when email is empty tablet
mobile (Pixel 7)
contact form — validation › shows error when email is empty mobile
contact form — validation › browser blocks submission with invalid email format
1.5s
desktop
contact form — validation › browser blocks submission with invalid email format desktop
tablet (iPad)
contact form — validation › browser blocks submission with invalid email format tablet
mobile (Pixel 7)
contact form — validation › browser blocks submission with invalid email format mobile
contact form — validation › phone is optional — form submits without it
7.1s
desktop
contact form — validation › phone is optional — form submits without it desktop
tablet (iPad)
contact form — validation › phone is optional — form submits without it tablet
mobile (Pixel 7)
contact form — validation › phone is optional — form submits without it mobile
contact form — successful submission › submitting with name and email shows success
7.8s
desktop
contact form — successful submission › submitting with name and email shows success desktop
tablet (iPad)
contact form — successful submission › submitting with name and email shows success tablet
mobile (Pixel 7)
contact form — successful submission › submitting with name and email shows success mobile
contact form — successful submission › submitting with all fields shows success
13.4s
desktop
contact form — successful submission › submitting with all fields shows success desktop
tablet (iPad)
contact form — successful submission › submitting with all fields shows success tablet
mobile (Pixel 7)
contact form — successful submission › submitting with all fields shows success mobile
contact form — successful submission › success state shows booking button
8.7s
desktop
contact form — successful submission › success state shows booking button desktop
tablet (iPad)
contact form — successful submission › success state shows booking button tablet
mobile (Pixel 7)
contact form — successful submission › success state shows booking button mobile
contact form — honeypot › filling honeypot field silently succeeds but does not create submission
6.9s
desktop
contact form — honeypot › filling honeypot field silently succeeds but does not create submission desktop
tablet (iPad)
contact form — honeypot › filling honeypot field silently succeeds but does not create submission tablet
mobile (Pixel 7)
contact form — honeypot › filling honeypot field silently succeeds but does not create submission mobile
contact form — embed interaction › embed form submits successfully
8.2s
desktop
contact form — embed interaction › embed form submits successfully desktop
tablet (iPad)
contact form — embed interaction › embed form submits successfully tablet
mobile (Pixel 7)
contact form — embed interaction › embed form submits successfully mobile
contact form — embed interaction › embed success buttons use target="_top"
12.6s
desktop
contact form — embed interaction › embed success buttons use target="_top" desktop
tablet (iPad)
contact form — embed interaction › embed success buttons use target="_top" tablet
mobile (Pixel 7)
contact form — embed interaction › embed success buttons use target="_top" mobile
Customer Account 12
customer account (authenticated) › /account/orders shows the orders page
13.0s
desktop
customer account (authenticated) › /account/orders shows the orders page desktop
tablet (iPad)
customer account (authenticated) › /account/orders shows the orders page tablet
mobile (Pixel 7)
customer account (authenticated) › /account/orders shows the orders page mobile
customer account (authenticated) › /account/orders shows order statuses
12.5s
desktop
customer account (authenticated) › /account/orders shows order statuses desktop
tablet (iPad)
customer account (authenticated) › /account/orders shows order statuses tablet
mobile (Pixel 7)
customer account (authenticated) › /account/orders shows order statuses mobile
customer account (authenticated) › /account/orders page loads completely
6.1s
desktop
customer account (authenticated) › /account/orders page loads completely desktop
tablet (iPad)
customer account (authenticated) › /account/orders page loads completely tablet
mobile (Pixel 7)
customer account (authenticated) › /account/orders page loads completely mobile
customer account (authenticated) › /book/my-bookings loads
17.7s
desktop
customer account (authenticated) › /book/my-bookings loads desktop
tablet (iPad)
customer account (authenticated) › /book/my-bookings loads tablet
mobile (Pixel 7)
customer account (authenticated) › /book/my-bookings loads mobile
customer account (authenticated) › /book/my-bookings has booking status badges
13.0s
desktop
customer account (authenticated) › /book/my-bookings has booking status badges desktop
tablet (iPad)
customer account (authenticated) › /book/my-bookings has booking status badges tablet
mobile (Pixel 7)
customer account (authenticated) › /book/my-bookings has booking status badges mobile
customer account (authenticated) › /account/profile shows the profile form
14.1s
desktop
customer account (authenticated) › /account/profile shows the profile form desktop
tablet (iPad)
customer account (authenticated) › /account/profile shows the profile form tablet
mobile (Pixel 7)
customer account (authenticated) › /account/profile shows the profile form mobile
customer account (authenticated) › /account/profile has pre-filled customer data
7.4s
desktop
customer account (authenticated) › /account/profile has pre-filled customer data desktop
tablet (iPad)
customer account (authenticated) › /account/profile has pre-filled customer data tablet
mobile (Pixel 7)
customer account (authenticated) › /account/profile has pre-filled customer data mobile
customer account (authenticated) › /account/profile shows email (read-only)
15.1s
desktop
customer account (authenticated) › /account/profile shows email (read-only) desktop
tablet (iPad)
customer account (authenticated) › /account/profile shows email (read-only) tablet
mobile (Pixel 7)
customer account (authenticated) › /account/profile shows email (read-only) mobile
customer account (authenticated) › customer can navigate between account pages
8.4s
desktop
customer account (authenticated) › customer can navigate between account pages desktop
tablet (iPad)
customer account (authenticated) › customer can navigate between account pages tablet
mobile (Pixel 7)
customer account (authenticated) › customer can navigate between account pages mobile
customer login page (unauthenticated) › /account/login shows email input
1.0s
desktop
customer login page (unauthenticated) › /account/login shows email input desktop
tablet (iPad)
customer login page (unauthenticated) › /account/login shows email input tablet
mobile (Pixel 7)
customer login page (unauthenticated) › /account/login shows email input mobile
customer login page (unauthenticated) › /account/login has send verification code button
6.5s
desktop
customer login page (unauthenticated) › /account/login has send verification code button desktop
tablet (iPad)
customer login page (unauthenticated) › /account/login has send verification code button tablet
mobile (Pixel 7)
customer login page (unauthenticated) › /account/login has send verification code button mobile
customer logout › logout redirects to booking page
16.4s
desktop
customer logout › logout redirects to booking page desktop
tablet (iPad)
customer logout › logout redirects to booking page tablet
mobile (Pixel 7)
customer logout › logout redirects to booking page mobile
Email Preferences 6
email preferences — show page › preferences page shows toggles for each category
7.6s
desktop
email preferences — show page › preferences page shows toggles for each category desktop
tablet (iPad)
email preferences — show page › preferences page shows toggles for each category tablet
mobile (Pixel 7)
email preferences — show page › preferences page shows toggles for each category mobile
email preferences — show page › preferences page greets customer by name
12.7s
desktop
email preferences — show page › preferences page greets customer by name desktop
tablet (iPad)
email preferences — show page › preferences page greets customer by name tablet
mobile (Pixel 7)
email preferences — show page › preferences page greets customer by name mobile
email preferences — show page › unsigned URL returns 403
1.0s
desktop
email preferences — show page › unsigned URL returns 403 desktop
tablet (iPad)
email preferences — show page › unsigned URL returns 403 tablet
mobile (Pixel 7)
email preferences — show page › unsigned URL returns 403 mobile
email preferences — update › can toggle newsletter preference and save
3.1s
desktop
email preferences — update › can toggle newsletter preference and save desktop
tablet (iPad)
email preferences — update › can toggle newsletter preference and save tablet
mobile (Pixel 7)
email preferences — update › can toggle newsletter preference and save mobile
email preferences — unsubscribe › unsubscribe URL shows confirmation
8.0s
desktop
email preferences — unsubscribe › unsubscribe URL shows confirmation desktop
tablet (iPad)
email preferences — unsubscribe › unsubscribe URL shows confirmation tablet
mobile (Pixel 7)
email preferences — unsubscribe › unsubscribe URL shows confirmation mobile
email preferences — unsubscribe › unsubscribe page shows manage preferences or resubscribe option
13.8s
desktop
email preferences — unsubscribe › unsubscribe page shows manage preferences or resubscribe option desktop
tablet (iPad)
email preferences — unsubscribe › unsubscribe page shows manage preferences or resubscribe option tablet
mobile (Pixel 7)
email preferences — unsubscribe › unsubscribe page shows manage preferences or resubscribe option mobile
Gift Cards 15
gift cards — step 1: configuration › renders amount presets ($50, $100, $150, $200)
1.7s
desktop
gift cards — step 1: configuration › renders amount presets ($50, $100, $150, $200) desktop
tablet (iPad)
gift cards — step 1: configuration › renders amount presets ($50, $100, $150, $200) tablet
mobile (Pixel 7)
gift cards — step 1: configuration › renders amount presets ($50, $100, $150, $200) mobile
gift cards — step 1: configuration › $100 is selected by default
4.8s
desktop
gift cards — step 1: configuration › $100 is selected by default desktop
tablet (iPad)
gift cards — step 1: configuration › $100 is selected by default tablet
mobile (Pixel 7)
gift cards — step 1: configuration › $100 is selected by default mobile
gift cards — step 1: configuration › clicking a preset updates the selected amount
6.6s
desktop
gift cards — step 1: configuration › clicking a preset updates the selected amount desktop
tablet (iPad)
gift cards — step 1: configuration › clicking a preset updates the selected amount tablet
mobile (Pixel 7)
gift cards — step 1: configuration › clicking a preset updates the selected amount mobile
gift cards — step 1: configuration › custom amount input activates on click
1.0s
desktop
gift cards — step 1: configuration › custom amount input activates on click desktop
tablet (iPad)
gift cards — step 1: configuration › custom amount input activates on click tablet
mobile (Pixel 7)
gift cards — step 1: configuration › custom amount input activates on click mobile
gift cards — step 1: configuration › shows all three delivery methods
1.6s
desktop
gift cards — step 1: configuration › shows all three delivery methods desktop
tablet (iPad)
gift cards — step 1: configuration › shows all three delivery methods tablet
mobile (Pixel 7)
gift cards — step 1: configuration › shows all three delivery methods mobile
gift cards — step 1: configuration › selecting "email directly" shows recipient fields
1.8s
desktop
gift cards — step 1: configuration › selecting "email directly" shows recipient fields desktop
tablet (iPad)
gift cards — step 1: configuration › selecting "email directly" shows recipient fields tablet
mobile (Pixel 7)
gift cards — step 1: configuration › selecting "email directly" shows recipient fields mobile
gift cards — step 1: configuration › selecting "send to me" hides recipient fields
1.3s
desktop
gift cards — step 1: configuration › selecting "send to me" hides recipient fields desktop
tablet (iPad)
gift cards — step 1: configuration › selecting "send to me" hides recipient fields tablet
mobile (Pixel 7)
gift cards — step 1: configuration › selecting "send to me" hides recipient fields mobile
gift cards — step 1: configuration › selecting "just give me the link" hides message and recipient
6.5s
desktop
gift cards — step 1: configuration › selecting "just give me the link" hides message and recipient desktop
tablet (iPad)
gift cards — step 1: configuration › selecting "just give me the link" hides message and recipient tablet
mobile (Pixel 7)
gift cards — step 1: configuration › selecting "just give me the link" hides message and recipient mobile
gift cards — step 1: configuration › message textarea is visible for email delivery methods
1.6s
desktop
gift cards — step 1: configuration › message textarea is visible for email delivery methods desktop
tablet (iPad)
gift cards — step 1: configuration › message textarea is visible for email delivery methods tablet
mobile (Pixel 7)
gift cards — step 1: configuration › message textarea is visible for email delivery methods mobile
gift cards — step 1: configuration › buyer email field is present
12.4s
desktop
gift cards — step 1: configuration › buyer email field is present desktop
tablet (iPad)
gift cards — step 1: configuration › buyer email field is present tablet
mobile (Pixel 7)
gift cards — step 1: configuration › buyer email field is present mobile
gift cards — step 1: configuration › continue button shows formatted amount
1.3s
desktop
gift cards — step 1: configuration › continue button shows formatted amount desktop
tablet (iPad)
gift cards — step 1: configuration › continue button shows formatted amount tablet
mobile (Pixel 7)
gift cards — step 1: configuration › continue button shows formatted amount mobile
gift cards — embed variant › /gift-cards/embed loads in iframe-safe layout
7.2s
desktop
gift cards — embed variant › /gift-cards/embed loads in iframe-safe layout desktop
tablet (iPad)
gift cards — embed variant › /gift-cards/embed loads in iframe-safe layout tablet
mobile (Pixel 7)
gift cards — embed variant › /gift-cards/embed loads in iframe-safe layout mobile
gift cards — form fields › page shows all required sections in order
6.5s
desktop
gift cards — form fields › page shows all required sections in order desktop
tablet (iPad)
gift cards — form fields › page shows all required sections in order tablet
mobile (Pixel 7)
gift cards — form fields › page shows all required sections in order mobile
gift cards — form fields › minimum amount is displayed
7.4s
desktop
gift cards — form fields › minimum amount is displayed desktop
tablet (iPad)
gift cards — form fields › minimum amount is displayed tablet
mobile (Pixel 7)
gift cards — form fields › minimum amount is displayed mobile
gift cards — confirmation page › confirmation page shows gift card code and share options
2.0s
desktop
gift cards — confirmation page › confirmation page shows gift card code and share options desktop
tablet (iPad)
gift cards — confirmation page › confirmation page shows gift card code and share options tablet
mobile (Pixel 7)
gift cards — confirmation page › confirmation page shows gift card code and share options mobile
Hourly Booking 22
hourly service — hour picker › hourly service card shows rate and minimum
2.6s
desktop
hourly service — hour picker › hourly service card shows rate and minimum desktop
tablet (iPad)
hourly service — hour picker › hourly service card shows rate and minimum tablet
mobile (Pixel 7)
hourly service — hour picker › hourly service card shows rate and minimum mobile
hourly service — hour picker › clicking hourly service expands hour picker
6.4s
desktop
hourly service — hour picker › clicking hourly service expands hour picker desktop
tablet (iPad)
hourly service — hour picker › clicking hourly service expands hour picker tablet
mobile (Pixel 7)
hourly service — hour picker › clicking hourly service expands hour picker mobile
hourly service — hour picker › hour picker defaults to 3 hours at $150
7.2s
desktop
hourly service — hour picker › hour picker defaults to 3 hours at $150 desktop
tablet (iPad)
hourly service — hour picker › hour picker defaults to 3 hours at $150 tablet
mobile (Pixel 7)
hourly service — hour picker › hour picker defaults to 3 hours at $150 mobile
hourly service — hour picker › plus button increases hours and updates price
9.1s
desktop
hourly service — hour picker › plus button increases hours and updates price desktop
tablet (iPad)
hourly service — hour picker › plus button increases hours and updates price tablet
mobile (Pixel 7)
hourly service — hour picker › plus button increases hours and updates price mobile
hourly service — hour picker › minus button decreases hours with minimum enforcement
13.7s
desktop
hourly service — hour picker › minus button decreases hours with minimum enforcement desktop
tablet (iPad)
hourly service — hour picker › minus button decreases hours with minimum enforcement tablet
mobile (Pixel 7)
hourly service — hour picker › minus button decreases hours with minimum enforcement mobile
hourly service — hour picker › continue with hours advances to step 2
8.1s
desktop
hourly service — hour picker › continue with hours advances to step 2 desktop
tablet (iPad)
hourly service — hour picker › continue with hours advances to step 2 tablet
mobile (Pixel 7)
hourly service — hour picker › continue with hours advances to step 2 mobile
hourly service — hour picker › hourly service skips PWYW step (step 4)
12.3s
desktop
hourly service — hour picker › hourly service skips PWYW step (step 4) desktop
tablet (iPad)
hourly service — hour picker › hourly service skips PWYW step (step 4) tablet
mobile (Pixel 7)
hourly service — hour picker › hourly service skips PWYW step (step 4) mobile
fixed service — PWYW flow › fixed service shows PWYW step (step 4)
14.4s
desktop
fixed service — PWYW flow › fixed service shows PWYW step (step 4) desktop
tablet (iPad)
fixed service — PWYW flow › fixed service shows PWYW step (step 4) tablet
mobile (Pixel 7)
fixed service — PWYW flow › fixed service shows PWYW step (step 4) mobile
hourly service — back navigation › back from step 5 skips step 4 for hourly service
8.1s
desktop
hourly service — back navigation › back from step 5 skips step 4 for hourly service desktop
tablet (iPad)
hourly service — back navigation › back from step 5 skips step 4 for hourly service tablet
mobile (Pixel 7)
hourly service — back navigation › back from step 5 skips step 4 for hourly service mobile
service sort order › services appear in correct order on booking page
2.1s
desktop
service sort order › services appear in correct order on booking page desktop
tablet (iPad)
service sort order › services appear in correct order on booking page tablet
mobile (Pixel 7)
service sort order › services appear in correct order on booking page mobile
hourly service — service pages › service index shows hourly pricing
8.2s
desktop
hourly service — service pages › service index shows hourly pricing desktop
tablet (iPad)
hourly service — service pages › service index shows hourly pricing tablet
mobile (Pixel 7)
hourly service — service pages › service index shows hourly pricing mobile
hourly service — service pages › hourly service detail shows rate and book button
7.8s
desktop
hourly service — service pages › hourly service detail shows rate and book button desktop
tablet (iPad)
hourly service — service pages › hourly service detail shows rate and book button tablet
mobile (Pixel 7)
hourly service — service pages › hourly service detail shows rate and book button mobile
quote form › quote link is visible on step 1
7.1s
desktop
quote form › quote link is visible on step 1 desktop
tablet (iPad)
quote form › quote link is visible on step 1 tablet
mobile (Pixel 7)
quote form › quote link is visible on step 1 mobile
quote form › clicking quote link shows the form
13.9s
desktop
quote form › clicking quote link shows the form desktop
tablet (iPad)
quote form › clicking quote link shows the form tablet
mobile (Pixel 7)
quote form › clicking quote link shows the form mobile
quote form › form without email or phone shows error
8.7s
desktop
quote form › form without email or phone shows error desktop
tablet (iPad)
quote form › form without email or phone shows error tablet
mobile (Pixel 7)
quote form › form without email or phone shows error mobile
quote form › quote form submits with just an email
13.5s
desktop
quote form › quote form submits with just an email desktop
tablet (iPad)
quote form › quote form submits with just an email tablet
mobile (Pixel 7)
quote form › quote form submits with just an email mobile
quote form › quote form submits with just a phone
8.8s
desktop
quote form › quote form submits with just a phone desktop
tablet (iPad)
quote form › quote form submits with just a phone tablet
mobile (Pixel 7)
quote form › quote form submits with just a phone mobile
quote form › quote form submits with full details
7.8s
desktop
quote form › quote form submits with full details desktop
tablet (iPad)
quote form › quote form submits with full details tablet
mobile (Pixel 7)
quote form › quote form submits with full details mobile
quote form › quote form has service interest dropdown and address fields
9.1s
desktop
quote form › quote form has service interest dropdown and address fields desktop
tablet (iPad)
quote form › quote form has service interest dropdown and address fields tablet
mobile (Pixel 7)
quote form › quote form has service interest dropdown and address fields mobile
quote form › quote form validates email format
8.8s
desktop
quote form › quote form validates email format desktop
tablet (iPad)
quote form › quote form validates email format tablet
mobile (Pixel 7)
quote form › quote form validates email format mobile
quote form › quote form honeypot silently blocks spam
3.2s
desktop
quote form › quote form honeypot silently blocks spam desktop
tablet (iPad)
quote form › quote form honeypot silently blocks spam tablet
mobile (Pixel 7)
quote form › quote form honeypot silently blocks spam mobile
quote form › quote form toggle opens and closes
5.2s
desktop
quote form › quote form toggle opens and closes desktop
tablet (iPad)
quote form › quote form toggle opens and closes tablet
mobile (Pixel 7)
quote form › quote form toggle opens and closes mobile
Newsletter Subscribe 8
newsletter — embed subscribe form › embed page shows email input, checkbox, and subscribe button
2.7s
desktop
newsletter — embed subscribe form › embed page shows email input, checkbox, and subscribe button desktop
tablet (iPad)
newsletter — embed subscribe form › embed page shows email input, checkbox, and subscribe button tablet
mobile (Pixel 7)
newsletter — embed subscribe form › embed page shows email input, checkbox, and subscribe button mobile
newsletter — embed subscribe form › subscribing with valid email and consent shows success
7.5s
desktop
newsletter — embed subscribe form › subscribing with valid email and consent shows success desktop
tablet (iPad)
newsletter — embed subscribe form › subscribing with valid email and consent shows success tablet
mobile (Pixel 7)
newsletter — embed subscribe form › subscribing with valid email and consent shows success mobile
newsletter — embed subscribe form › subscribing without checking consent checkbox is blocked
2.6s
desktop
newsletter — embed subscribe form › subscribing without checking consent checkbox is blocked desktop
tablet (iPad)
newsletter — embed subscribe form › subscribing without checking consent checkbox is blocked tablet
mobile (Pixel 7)
newsletter — embed subscribe form › subscribing without checking consent checkbox is blocked mobile
newsletter — embed subscribe form › subscribing with empty email is blocked
2.3s
desktop
newsletter — embed subscribe form › subscribing with empty email is blocked desktop
tablet (iPad)
newsletter — embed subscribe form › subscribing with empty email is blocked tablet
mobile (Pixel 7)
newsletter — embed subscribe form › subscribing with empty email is blocked mobile
newsletter — embed subscribe form › subscribing with invalid email is blocked by browser
2.0s
desktop
newsletter — embed subscribe form › subscribing with invalid email is blocked by browser desktop
tablet (iPad)
newsletter — embed subscribe form › subscribing with invalid email is blocked by browser tablet
mobile (Pixel 7)
newsletter — embed subscribe form › subscribing with invalid email is blocked by browser mobile
newsletter — embed subscribe form › shows unsubscribe link in consent text
1.4s
desktop
newsletter — embed subscribe form › shows unsubscribe link in consent text desktop
tablet (iPad)
newsletter — embed subscribe form › shows unsubscribe link in consent text tablet
mobile (Pixel 7)
newsletter — embed subscribe form › shows unsubscribe link in consent text mobile
newsletter — footer subscribe section › footer "Stay in the loop" section has email input and subscribe button
2.0s
desktop
newsletter — footer subscribe section › footer "Stay in the loop" section has email input and subscribe button desktop
tablet (iPad)
newsletter — footer subscribe section › footer "Stay in the loop" section has email input and subscribe button tablet
mobile (Pixel 7)
newsletter — footer subscribe section › footer "Stay in the loop" section has email input and subscribe button mobile
newsletter — footer subscribe section › footer subscribe works with valid email and consent
18.2s
desktop
newsletter — footer subscribe section › footer subscribe works with valid email and consent desktop
tablet (iPad)
newsletter — footer subscribe section › footer subscribe works with valid email and consent tablet
mobile (Pixel 7)
newsletter — footer subscribe section › footer subscribe works with valid email and consent mobile
Public Pages 18 1
public pages — core routes › / redirects to /book
6.7s
desktop
public pages — core routes › / redirects to /book desktop
tablet (iPad)
public pages — core routes › / redirects to /book tablet
mobile (Pixel 7)
public pages — core routes › / redirects to /book mobile
public pages — core routes › /book renders the booking wizard
3.2s
desktop
public pages — core routes › /book renders the booking wizard desktop
tablet (iPad)
public pages — core routes › /book renders the booking wizard tablet
mobile (Pixel 7)
public pages — core routes › /book renders the booking wizard mobile
public pages — core routes › /shop renders the digital products listing
21.1s
desktop
public pages — core routes › /shop renders the digital products listing desktop
tablet (iPad)
public pages — core routes › /shop renders the digital products listing tablet
mobile (Pixel 7)
public pages — core routes › /shop renders the digital products listing mobile
public pages — core routes › /gift-cards renders the purchase form
4.9s
desktop
public pages — core routes › /gift-cards renders the purchase form desktop
tablet (iPad)
public pages — core routes › /gift-cards renders the purchase form tablet
mobile (Pixel 7)
public pages — core routes › /gift-cards renders the purchase form mobile
public pages — core routes › /contact-us renders the contact form
6.7s
desktop
public pages — core routes › /contact-us renders the contact form desktop
tablet (iPad)
public pages — core routes › /contact-us renders the contact form tablet
mobile (Pixel 7)
public pages — core routes › /contact-us renders the contact form mobile
public pages — core routes › /quiz renders the clutter quiz
7.6s
desktop
public pages — core routes › /quiz renders the clutter quiz desktop
tablet (iPad)
public pages — core routes › /quiz renders the clutter quiz tablet
mobile (Pixel 7)
public pages — core routes › /quiz renders the clutter quiz mobile
public pages — core routes › /tools renders the tools page
7.4s
desktop
public pages — core routes › /tools renders the tools page desktop
tablet (iPad)
public pages — core routes › /tools renders the tools page tablet
mobile (Pixel 7)
public pages — core routes › /tools renders the tools page mobile
public pages — core routes › /services lists service landing pages
3.6s
desktop
public pages — core routes › /services lists service landing pages desktop
tablet (iPad)
public pages — core routes › /services lists service landing pages tablet
mobile (Pixel 7)
public pages — core routes › /services lists service landing pages mobile
public pages — core routes › /book/pay-what-you-want loads
1.6s
desktop
public pages — core routes › /book/pay-what-you-want loads desktop
tablet (iPad)
public pages — core routes › /book/pay-what-you-want loads tablet
mobile (Pixel 7)
public pages — core routes › /book/pay-what-you-want loads mobile
public pages — embed variants › /book/embed renders without site header
1.7s
desktop
public pages — embed variants › /book/embed renders without site header desktop
tablet (iPad)
public pages — embed variants › /book/embed renders without site header tablet
mobile (Pixel 7)
public pages — embed variants › /book/embed renders without site header mobile
public pages — embed variants › /shop/embed renders products
8.6s
desktop
public pages — embed variants › /shop/embed renders products desktop
tablet (iPad)
public pages — embed variants › /shop/embed renders products tablet
mobile (Pixel 7)
public pages — embed variants › /shop/embed renders products mobile
public pages — embed variants › /gift-cards/embed renders the stepper
1.4s
desktop
public pages — embed variants › /gift-cards/embed renders the stepper desktop
tablet (iPad)
public pages — embed variants › /gift-cards/embed renders the stepper tablet
mobile (Pixel 7)
public pages — embed variants › /gift-cards/embed renders the stepper mobile
public pages — embed variants › /quiz/embed renders the quiz
6.2s
desktop
public pages — embed variants › /quiz/embed renders the quiz desktop
tablet (iPad)
public pages — embed variants › /quiz/embed renders the quiz tablet
mobile (Pixel 7)
public pages — embed variants › /quiz/embed renders the quiz mobile
public pages — embed variants › /tools/embed renders tools
1.6s
desktop
public pages — embed variants › /tools/embed renders tools desktop
tablet (iPad)
public pages — embed variants › /tools/embed renders tools tablet
mobile (Pixel 7)
public pages — embed variants › /tools/embed renders tools mobile
public pages — embed variants › /contact-us/embed renders the form
6.7s
desktop
public pages — embed variants › /contact-us/embed renders the form desktop
tablet (iPad)
public pages — embed variants › /contact-us/embed renders the form tablet
mobile (Pixel 7)
public pages — embed variants › /contact-us/embed renders the form mobile
public pages — embed variants › /newsletter/embed renders signup form
5.8s
desktop
public pages — embed variants › /newsletter/embed renders signup form desktop
tablet (iPad)
public pages — embed variants › /newsletter/embed renders signup form tablet
mobile (Pixel 7)
public pages — embed variants › /newsletter/embed renders signup form mobile
public pages — navigation and footer › header has main navigation links (desktop)
6.7s
desktop
public pages — navigation and footer › header has main navigation links (desktop) desktop
tablet (iPad)
public pages — navigation and footer › header has main navigation links (desktop) tablet
mobile (Pixel 7)
public pages — navigation and footer › header has main navigation links (desktop) mobile
public pages — navigation and footer › footer shows copyright and version
7.2s
desktop
public pages — navigation and footer › footer shows copyright and version desktop
tablet (iPad)
public pages — navigation and footer › footer shows copyright and version tablet
mobile (Pixel 7)
public pages — navigation and footer › footer shows copyright and version mobile
public pages — navigation and footer › sign in link is visible (desktop) or menu exists (mobile)
6.0s
desktop
public pages — navigation and footer › sign in link is visible (desktop) or menu exists (mobile) desktop
tablet (iPad)
public pages — navigation and footer › sign in link is visible (desktop) or menu exists (mobile) tablet
mobile (Pixel 7)
public pages — navigation and footer › sign in link is visible (desktop) or menu exists (mobile) mobile
Schema & Structured Data 6
schema.org — Google Search Console merchant fields › gift-cards Product has merchant fields and references WP org by @id
6.1s
desktop
schema.org — Google Search Console merchant fields › gift-cards Product has merchant fields and references WP org by @id desktop
tablet (iPad)
schema.org — Google Search Console merchant fields › gift-cards Product has merchant fields and references WP org by @id tablet
mobile (Pixel 7)
schema.org — Google Search Console merchant fields › gift-cards Product has merchant fields and references WP org by @id mobile
schema.org — Google Search Console merchant fields › shop (ItemList) each item has shipping + return policy, no self-rating
12.8s
desktop
schema.org — Google Search Console merchant fields › shop (ItemList) each item has shipping + return policy, no self-rating desktop
tablet (iPad)
schema.org — Google Search Console merchant fields › shop (ItemList) each item has shipping + return policy, no self-rating tablet
mobile (Pixel 7)
schema.org — Google Search Console merchant fields › shop (ItemList) each item has shipping + return policy, no self-rating mobile
schema.org — Google Search Console merchant fields › digital shipping details use zero-cost instant delivery
4.2s
desktop
schema.org — Google Search Console merchant fields › digital shipping details use zero-cost instant delivery desktop
tablet (iPad)
schema.org — Google Search Console merchant fields › digital shipping details use zero-cost instant delivery tablet
mobile (Pixel 7)
schema.org — Google Search Console merchant fields › digital shipping details use zero-cost instant delivery mobile
schema.org — Google Search Console merchant fields › return policy is MerchantReturnNotPermitted for digital goods
7.2s
desktop
schema.org — Google Search Console merchant fields › return policy is MerchantReturnNotPermitted for digital goods desktop
tablet (iPad)
schema.org — Google Search Console merchant fields › return policy is MerchantReturnNotPermitted for digital goods tablet
mobile (Pixel 7)
schema.org — Google Search Console merchant fields › return policy is MerchantReturnNotPermitted for digital goods mobile
schema.org — Google Search Console merchant fields › global WebSite schema references WP organization by @id
5.8s
desktop
schema.org — Google Search Console merchant fields › global WebSite schema references WP organization by @id desktop
tablet (iPad)
schema.org — Google Search Console merchant fields › global WebSite schema references WP organization by @id tablet
mobile (Pixel 7)
schema.org — Google Search Console merchant fields › global WebSite schema references WP organization by @id mobile
schema.org — Google Search Console merchant fields › no duplicate LocalBusiness/ProfessionalService on shop pages
2.6s
desktop
schema.org — Google Search Console merchant fields › no duplicate LocalBusiness/ProfessionalService on shop pages desktop
tablet (iPad)
schema.org — Google Search Console merchant fields › no duplicate LocalBusiness/ProfessionalService on shop pages tablet
mobile (Pixel 7)
schema.org — Google Search Console merchant fields › no duplicate LocalBusiness/ProfessionalService on shop pages mobile
Shop 14
shop — product listing › displays seeded products with names
7.9s
desktop
shop — product listing › displays seeded products with names desktop
tablet (iPad)
shop — product listing › displays seeded products with names tablet
mobile (Pixel 7)
shop — product listing › displays seeded products with names mobile
shop — product listing › displays product prices
6.9s
desktop
shop — product listing › displays product prices desktop
tablet (iPad)
shop — product listing › displays product prices tablet
mobile (Pixel 7)
shop — product listing › displays product prices mobile
shop — product listing › product cards link to detail pages
16.3s
desktop
shop — product listing › product cards link to detail pages desktop
tablet (iPad)
shop — product listing › product cards link to detail pages tablet
mobile (Pixel 7)
shop — product listing › product cards link to detail pages mobile
shop — product listing › shows product descriptions
15.4s
desktop
shop — product listing › shows product descriptions desktop
tablet (iPad)
shop — product listing › shows product descriptions tablet
mobile (Pixel 7)
shop — product listing › shows product descriptions mobile
shop — product detail › renders product name and price
7.1s
desktop
shop — product detail › renders product name and price desktop
tablet (iPad)
shop — product detail › renders product name and price tablet
mobile (Pixel 7)
shop — product detail › renders product name and price mobile
shop — product detail › shows product description
1.2s
desktop
shop — product detail › shows product description desktop
tablet (iPad)
shop — product detail › shows product description tablet
mobile (Pixel 7)
shop — product detail › shows product description mobile
shop — product detail › has a buy/purchase button
6.9s
desktop
shop — product detail › has a buy/purchase button desktop
tablet (iPad)
shop — product detail › has a buy/purchase button tablet
mobile (Pixel 7)
shop — product detail › has a buy/purchase button mobile
shop — product detail › has email input for buyer
2.0s
desktop
shop — product detail › has email input for buyer desktop
tablet (iPad)
shop — product detail › has email input for buyer tablet
mobile (Pixel 7)
shop — product detail › has email input for buyer mobile
shop — product detail › second product also renders correctly
6.6s
desktop
shop — product detail › second product also renders correctly desktop
tablet (iPad)
shop — product detail › second product also renders correctly tablet
mobile (Pixel 7)
shop — product detail › second product also renders correctly mobile
shop — embed variant › /shop/embed loads products in iframe-safe layout
9.8s
desktop
shop — embed variant › /shop/embed loads products in iframe-safe layout desktop
tablet (iPad)
shop — embed variant › /shop/embed loads products in iframe-safe layout tablet
mobile (Pixel 7)
shop — embed variant › /shop/embed loads products in iframe-safe layout mobile
shop — embed variant › embedded product detail uses embed layout
5.6s
desktop
shop — embed variant › embedded product detail uses embed layout desktop
tablet (iPad)
shop — embed variant › embedded product detail uses embed layout tablet
mobile (Pixel 7)
shop — embed variant › embedded product detail uses embed layout mobile
shop — download page › download page shows product name and download button
6.0s
desktop
shop — download page › download page shows product name and download button desktop
tablet (iPad)
shop — download page › download page shows product name and download button tablet
mobile (Pixel 7)
shop — download page › download page shows product name and download button mobile
shop — download page › invalid download token returns 404
0.2s
desktop
shop — download page › invalid download token returns 404 desktop
tablet (iPad)
shop — download page › invalid download token returns 404 tablet
mobile (Pixel 7)
shop — download page › invalid download token returns 404 mobile
shop — download page › download page shows remaining downloads info
1.4s
desktop
shop — download page › download page shows remaining downloads info desktop
tablet (iPad)
shop — download page › download page shows remaining downloads info tablet
mobile (Pixel 7)
shop — download page › download page shows remaining downloads info mobile
Widget Popups 8
widget popups — quote modal › quote modal opens via button click
2.7s
desktop
widget popups — quote modal › quote modal opens via button click desktop
tablet (iPad)
widget popups — quote modal › quote modal opens via button click tablet
mobile (Pixel 7)
widget popups — quote modal › quote modal opens via button click mobile
widget popups — quote modal › quote modal closes via X button
1.7s
desktop
widget popups — quote modal › quote modal closes via X button desktop
tablet (iPad)
widget popups — quote modal › quote modal closes via X button tablet
mobile (Pixel 7)
widget popups — quote modal › quote modal closes via X button mobile
widget popups — quote modal › quote modal closes via Escape key
2.6s
desktop
widget popups — quote modal › quote modal closes via Escape key desktop
tablet (iPad)
widget popups — quote modal › quote modal closes via Escape key tablet
mobile (Pixel 7)
widget popups — quote modal › quote modal closes via Escape key mobile
widget popups — quote modal › close button meets 40px minimum tap target
2.4s
desktop
widget popups — quote modal › close button meets 40px minimum tap target desktop
tablet (iPad)
widget popups — quote modal › close button meets 40px minimum tap target tablet
mobile (Pixel 7)
widget popups — quote modal › close button meets 40px minimum tap target mobile
widget popups — quote modal › quote form has required fields
1.8s
desktop
widget popups — quote modal › quote form has required fields desktop
tablet (iPad)
widget popups — quote modal › quote form has required fields tablet
mobile (Pixel 7)
widget popups — quote modal › quote form has required fields mobile
widget popups — services page quote modal › services page quote buttons open modal
3.9s
desktop
widget popups — services page quote modal › services page quote buttons open modal desktop
tablet (iPad)
widget popups — services page quote modal › services page quote buttons open modal tablet
mobile (Pixel 7)
widget popups — services page quote modal › services page quote buttons open modal mobile
widget popups — quote page standalone › /quote renders the quote form
6.1s
desktop
widget popups — quote page standalone › /quote renders the quote form desktop
tablet (iPad)
widget popups — quote page standalone › /quote renders the quote form tablet
mobile (Pixel 7)
widget popups — quote page standalone › /quote renders the quote form mobile
widget popups — quote page standalone › /quote/embed renders embeddable quote form
6.8s
desktop
widget popups — quote page standalone › /quote/embed renders embeddable quote form desktop
tablet (iPad)
widget popups — quote page standalone › /quote/embed renders embeddable quote form tablet
mobile (Pixel 7)
widget popups — quote page standalone › /quote/embed renders embeddable quote form mobile