# Live-Site Audit: What From the Prototype Is Live on shop.usaclean.com

Which features designed in the prototype (demo.thecxlabs.com) have reached the live store, how far each has got, and what is left. Audited 2026-10-13; first audited 2026-09-29.

**Companion to:** [backlog.md](backlog.md) (what's left, as work items) · [decisions.md](decisions.md) (client rulings) · [geo-aeo-audit.md](geo-aeo-audit.md) (the AI-visibility audit this one re-checks)
**Styled version:** [live-site-audit.html](live-site-audit.html)

---

## 01 · TL;DR

Of the 23 features in the prototype, 13 are partly live on shop.usaclean.com, and 10 have not started. None is yet complete as designed. The store already runs on the prototype's foundations. The biggest gaps are navigation, retention features, and two defects: a finder 404 and a search page that jumps as it loads.

### Scorecard

| Status | Count | Features |
|---|---|---|
| Live | 0 | none complete as designed |
| Partly live | 13 | F01 Navigation, F02 Find by Machine, F03 Search, F05 Model pages, F06 Product page, F07 PDP bundles, F09 Guides, F10 Inventory urgency, F12 Cart, F15 Account, F20 Homepage, F21 Header, footer & banner, F23 Caster |
| Built, not live | 0 | none |
| Not started | 10 | F04 Megamenu, F08 Volume discounts, F11 Equipment PDP, F13 Save for later, F14 Named lists, F16 Buy again, F17 My Equipment, F18 Loyalty, F19 Subscribe & Save, F22 Shop Parts landing |

- **The prototype's code is on the store, by name.** The live site carries all 504 Caster design tokens. It also runs the prototype's own markup and copy for the free-shipping banner, the cart page and empty cart, and the account header and tabs ([F23](#f23), [F12](#f12), [F21](#f21), [F15](#f15)).
- **The homepage machine finder is live but fails for Tennant.** Choosing Tennant Company and T500E leads to a "page not found" error, and other brands whose display name differs from their web address can fail the same way. The destination comes from the legacy parts system's data, not the theme ([F02](#f02)).
- **Bundles went live during this audit, without their saving.** A theme update published on 2026-09-29 switched on the Frequently Bought Together block. It now shows on product pages wherever HawkSearch has companion products, but without the prototype's 10% bundle saving or its quantity steppers ([F07](#f07)).
- **The AI-visibility blocker is gone; the search page still jumps.** Since July's GEO/AEO audit, requests identifying as AI crawlers are no longer blocked at the edge, and `robots.txt` is one policy. But in lab tests the search results page measures a layout shift of 0.54 to 0.80 on a phone, well above the 0.1 guideline. The homepage title has been rewritten; meta descriptions, and schema for guides and FAQs, have not started ([section 04](#fixes)).
- **The megamenu and the retention features have not started.** The nav is still the stock dropdown. Buy again, save for later, named lists, loyalty and Subscribe & Save have not started either ([F04](#f04), [F13](#f13), [F14](#f14), [F16](#f16), [F18](#f18), [F19](#f19)).

## 02 · Method & evidence

Three sources, checked against each other:

1. **The prototype and its briefs:** what was designed, and in which phase. That means the feature cards on the prototype home page, the `v2/` pages, each brief's phased recommendation, and the client decisions in the [decision log](decisions.md).
2. **The live store's theme code:** what has been built. This is the Stencil theme repository behind shop.usaclean.com (`quasiobject/usa-clean`): its main branch and every branch not yet merged.
3. **The live store itself:** what shoppers actually get. It was checked on 2026-09-29 signed out (a desktop browser, a phone-width browser, and direct page fetches) and signed in (a retail customer account). A theme update reached the store that afternoon; the product page rows describe the store after it. It was re-checked signed out on 2026-10-13: the store still ran that theme, and the changes since are noted where they apply. The signed-in account and guest-cart observations date from 2026-09-29.

**What counts as proof.** A feature is called Live or Partly live only when something specific was observed on the live store: the page, the date, and the exact thing found (an element, a line of text, or a script). Code on its own never counts. A theme change goes live through a separate publish step, so code can exist for weeks before shoppers see it. The key live observations are recorded as repeatable checks, at least one for every partly live feature, so the next audit can confirm them in minutes (section 08).

**Statuses:**
- **Live:** every element in scope is on the live store.
- **Partly live:** some are, and the row names the rest.
- **Built, not live:** the code exists, but none of it shows on the store.
- **Not started:** no code, and nothing live.

**Flags**, which can be added to any status:
- **Differs from design:** what's live works differently from the prototype, and the row says how.
- **Unconfirmed:** part of the row could not be observed. Usually that's an admin setting, a checkout step, or a page only a B2B company account can see.

**Scope and phase.** Each feature is judged against the phases in its own brief, up to the latest phase with anything live. A feature whose Phase 1 is fully live, and whose Phase 2 hasn't started, reads Live, with its next phase and that phase's trigger noted. Where a live piece existed before the prototype, the row says so.

**What this audit does not measure.** Whether live features perform well (conversion, speed, accessibility). It measures only whether they exist and how they compare with the design. Signed-in observations record the kind of account used, never account details. The signed-in account was a retail customer with no orders, so company-account pages and order-history features could not be seen.

## 03 · Feature ledger

### Summary

| ID | Feature | Status | Flags | Phase |
|---|---|---|---|---|
| [F01](#f01) | Navigation & taxonomy | Partly live | | Phase 3 of 3 (60-120 days) in progress |
| [F02](#f02) | Find by Machine | Partly live | Differs from design | Phase 2 of 2 in progress |
| [F03](#f03) | Search experience | Partly live | | Phase 1 of 3 in progress |
| [F04](#f04) | Find Parts megamenu | Not started | | Phase 1 of 3 not started |
| [F05](#f05) | Model landing pages | Partly live | Differs from design | Phase 2 of 3 in progress |
| [F06](#f06) | Product page layout | Partly live | | No phase plan |
| [F07](#f07) | PDP bundles | Partly live | | Phase 1 of 2 in progress |
| [F08](#f08) | Volume discounts | Not started | Unconfirmed | Phase 1 of 3 not started |
| [F09](#f09) | Install & repair guides | Partly live | Differs from design; Unconfirmed | Phase 1 of 3 in progress |
| [F10](#f10) | Inventory urgency | Partly live | Unconfirmed | Phase 1 of 3 in progress |
| [F11](#f11) | Equipment PDP & compare | Not started | | Phase 1 of 3 not started |
| [F12](#f12) | Cart & cart preview | Partly live | | No phase plan |
| [F13](#f13) | Save for later | Not started | Unconfirmed | Phase 1 of 3 not started |
| [F14](#f14) | Named lists | Not started | Unconfirmed | Starts at Phase 2; not started |
| [F15](#f15) | Account dashboard | Partly live | Unconfirmed | Phase 0 partly live |
| [F16](#f16) | Recently purchased / Buy again | Not started | Unconfirmed | Phase 1 of 3 not started |
| [F17](#f17) | My Equipment | Not started | | Deferred by PD-003 |
| [F18](#f18) | Loyalty | Not started | Unconfirmed | Quick wins not started |
| [F19](#f19) | Subscribe & Save | Not started | | Phase 1 of 3 not started |
| [F20](#f20) | Homepage | Partly live | | No phase plan |
| [F21](#f21) | Header, footer & shipping banner | Partly live | | No phase plan |
| [F22](#f22) | Shop Parts landing | Not started | | No phase plan |
| [F23](#f23) | Caster design system | Partly live | | No phase plan |

**Research only.** The AI Parts Finder ([feasibility brief](parts-finder-feasibility.md)) has nothing to check on the store yet.

### Find & navigate

<a id="f01"></a>
#### F01 · Navigation & taxonomy
**Status:** Partly live · **Flags:** none
**Phase:** Phase 3 of 3 (60-120 days) in progress: two of its sections exist in early form. The Now-phase change to About is partly done.
**What's live:**
- Service as a nav item: "Request Service" links to `/service/` (a single page).
- A documents library at `/diagrams/`, with search by model number and most-viewed diagrams (check `F01-a`).
- About no longer lists Pay an Invoice. Returns is still there, and also in the header.

**What's left:**
- A Find Parts section at `/parts/`, Equipment led by machine type, and a Chemicals & Supplies section ([backlog](backlog.md)).
- A Resources section in the nav, Service as a full section, and Returns moved out of About ([backlog](backlog.md)).

**Code:** No theme code; sections and categories are set in the store admin.
**Sources:** [Sitemap recommendations](USAClean_Sitemap_Recommendations.md) · [annotated sitemap](sitemap.html) · [IA roadmap](USAClean_IA_Search_Roadmap.md)

<a id="f02"></a>
#### F02 · Find by Machine
**Status:** Partly live · **Flags:** Differs from design
**Phase:** Phase 2 of 2 in progress. The product-page fit checker pre-dates the prototype. Phase 1 still lacks the results-page prompt and the nav column.
**What's live:**
- The homepage machine finder, "Shop Parts for Your Equipment", with manufacturer and model pickers (check `F02-a`).
- A fit checker on product pages, "Check Compatibility", with manufacturer and model pickers for the makes each part fits (checks `F02-b`, `F02-c`). Rebuilt as its own component, it went live on 2026-09-29; it shows where the product description names fitting models. There's no fleet machine select.

**What's left:**
- A working destination for every brand. Today, Tennant Company / T500E leads to a "page not found" error ([backlog](backlog.md)).
- The "filter to fit your machine" prompt on results pages, and the find-by-machine column in the nav ([backlog](backlog.md)).
- The finder card's typed model number, serial lookup and diagrams link ([backlog](backlog.md)).
- Phase 2, most of which waits on the part-to-model compatibility mapping (PD-004): the machine-lookup band on model pages, the compatibility filter on results, the "Fits (model)" badge on cart lines, the nav form wired to the lookup, and a fleet machine select in the fit checker ([backlog](backlog.md)).

**Code:** The finder was built 2026-05-26 to 06-23. The product-page checker was rebuilt as its own component from 2026-09-18 and published on 2026-09-29.
**Differs from design:** The finder sends each shopper to a page address supplied by the legacy parts system. For brands whose display name differs from their web address, the address is wrong. "Tennant Company" becomes `/parts-and-supplies/Tennant-Company/T500E/` instead of `/parts-and-supplies/tennant/t500e/`. The live card also drops the prototype's typed model number, serial lookup and diagrams link.

![F02 on the live store](img/live-audit/f02-live.jpg)
![F02 in the prototype](img/live-audit/f02-prototype.jpg)

**Sources:** [Search experience](search-experience-concepts.md) · `v2/index.html` · PD-004

<a id="f03"></a>
#### F03 · Search experience
**Status:** Partly live · **Flags:** none
**Phase:** Phase 1 of 3 in progress. The live pieces pre-date the prototype.
**What's live:**
- The header search field on every page, "Search by part number, brand, or machine model" (check `F03-a`).
- Grouped autocomplete: top categories, popular searches and top product matches.

**What's left:**
- Saved machines and a "Shopping for" pill for signed-in buyers ([backlog](backlog.md)).
- The hero search as the main homepage interaction ([backlog](backlog.md)).
- The Caster look on the HawkSearch results page. The results page is HawkSearch's standard design ([backlog](backlog.md)).

**Code:** The HawkSearch templates existed before March; the 2026 changes were styling and tracking.
**Sources:** [Search experience](search-experience-concepts.md) · `v2/plp.html`

<a id="f04"></a>
#### F04 · Find Parts megamenu
**Status:** Not started · **Flags:** none
**Phase:** Phase 1 of 3 not started.
**What's live:** Nothing from this design. The nav uses the stock dropdowns: Manufacturer (18 links), Category (17) and Equipment Type (16).

**What's left:**
- The full-width Find Parts panel, with brand, grouped-category and promoted columns ([backlog](backlog.md)).
- Compact dropdowns for the other sections, and the mobile drawer ([backlog](backlog.md)).

**Code:** None for the megamenu. The nav's other changes since March keep the stock dropdowns.
**Sources:** [Megamenu concepts](megamenu-concepts.md) · `v2/megamenu.html`

<a id="f05"></a>
#### F05 · Model landing pages
**Status:** Partly live · **Flags:** Differs from design
**Phase:** Phase 2 of 3 in progress: the Phase 2 parts grid already existed. Phase 1 (the four elements agreed in PD-008) is partly live, in a form that pre-dates the prototype.
**What's live:**
- On `/parts-and-supplies/tennant/t500e/` (check `F05-a`):
  - the machine name and photo
  - a documentation list: parts, diagrams, manuals, bulletins, other docs (check `F05-b`)
  - "Contact our Experts" and "Ask our Team" calls to action
  - a filterable parts list for the machine, with no compatible-parts count

**What's left:**
- The model header with class, description and "Buy or quote this machine" ([backlog](backlog.md)).
- Related models, and the dispatch-a-tech call to action as designed ([backlog](backlog.md)).
- The `/parts/by-machine/` addresses with redirects from the old ones ([backlog](backlog.md)).
- Phase 2: the hero stat bar, the specs card, and the compatible-parts count ([backlog](backlog.md)).

**Code:** The page existed before the prototype. Its documentation component was added in March, and a resource-list pop-up in July. An unmerged branch reorganizes the page's templates and, since 2026-10-06, builds a model landing page styled with Caster (see section 05).
**Differs from design:** The live page leads with a parts list and a sidebar, where the prototype leads with a model header and documentation grid. A buyer who came to learn about the machine lands in a parts list.

![F05 on the live store](img/live-audit/f05-live.jpg)
![F05 in the prototype](img/live-audit/f05-prototype.jpg)

**Sources:** [Model landing pages](model-landing-concepts.md) · `v2/model-tennant-t500e-phase1.html` · PD-008

### Evaluate & decide

<a id="f06"></a>
#### F06 · Product page layout
**Status:** Partly live · **Flags:** none
**Phase:** No phase plan. 9 of the 10 designed elements are at least partly live.
**What's live:**
- The product image, without thumbnails.
- Title, key specs, price, quantity and Add to Cart.
- Description and Specifications tabs, since 2026-09-29; the Specifications tab hides when a product has none, and there's no Shipping & Returns tab (check `F06-e`).
- "Shop alternatives and save" (check `F06-a`).
- "May Fit These Models" and "Alternate Part Numbers" (checks `F06-b`, `F06-c`).
- The alternative items grid (check `F06-d`).
- A sticky add-to-cart bar that the prototype did not design.

**What's left:**
- The breadcrumb, and image thumbnails where a product has several images ([backlog](backlog.md)).
- The Shipping & Returns tab ([backlog](backlog.md)).

**Code:** The new product page was built from 2026-03-31. The fit and alternates lists existed before. The tabs were published on 2026-09-29, with a Videos tab for products that have videos.
**Sources:** `v2/pdp.html`

<a id="f07"></a>
#### F07 · PDP bundles (Frequently Bought Together)
**Status:** Partly live · **Flags:** none
**Phase:** Phase 1 of 2 in progress.
**What's live:**
- Since 2026-09-29, the Frequently Bought Together block on product pages where HawkSearch has companion products: this item plus two companions, a checkbox on each, the bundle total, Select all, and Add selected to cart (check `F07-a`). It showed on 3 of the 4 part pages checked.

**What's left:**
- Settle the bundle saving. The prototype takes 10% off the bundle total, with a "Save 10%" line; the live total is the plain sum, because the theme's discount was set to zero on 2026-09-01. If a store promotion applies the saving, the block should show it as designed; if not, it should not promise one ([backlog](backlog.md)).
- The per-item quantity steppers ([backlog](backlog.md)).

**Code:** Built 2026-08-13 to 09-01, with HawkSearch recommendations as the data source; the discount was turned off on 09-01. Rebuilt as its own component without the switch that hid it, and published on 2026-09-29.
**Sources:** [Bundle concepts](bundle-concepts.md) · `v2/pdp.html` · PD-001

<a id="f08"></a>
#### F08 · Volume discounts
**Status:** Not started · **Flags:** Unconfirmed (Phase 2: category tier templates are an admin setting)
**Phase:** Phase 1 of 3 not started.
**What's live:** Nothing from this design. No tier tables appeared on the four consumables checked.

**What's left:**
- The "Buy more, save more" table on product pages, and the Bulk save badge on listings ([backlog](backlog.md)).
- The cart's bulk pill, nudge and savings strip ([backlog](backlog.md)).

**Code:** The cart styles include the pill and strip classes, but no page uses them.
**Sources:** [Volume discounts](volume-discount-concepts.md)

<a id="f09"></a>
#### F09 · Install & repair guides
**Status:** Partly live · **Flags:** Differs from design; Unconfirmed (model-to-part document inheritance, a Phase 2 item, is data-side)
**Phase:** Phase 1 of 3 in progress.
**What's live:**
- A Documentation list on every product page, with the prototype's six labels (check `F09-a`).

**What's left:**
- The Guides & Videos tab with the part's own install and repair files ([backlog](backlog.md)).
- Links that open this part's documents ([backlog](backlog.md)).
- The mobile "Guides & Videos" button; on phones the sticky bar is Add to Cart ([backlog](backlog.md)).

**Code:** The documentation component was added 2026-03-19; the documents library followed in July. The theme published on 2026-09-29 adds a Videos tab for products that have videos; none of the product pages checked has any.
**Differs from design:** The list looks like the prototype's, but every link opens a library search page instead of this part's documents. It's identical on every product page, so a buyer looking for this part's install guide has to search for it.

![F09 on the live store](img/live-audit/f09-live.jpg)
![F09 in the prototype](img/live-audit/f09-prototype.jpg)

**Sources:** [Install & repair guides](install-repair-guides-concepts.md) · `v2/pdp.html`

<a id="f10"></a>
#### F10 · Inventory urgency
**Status:** Partly live · **Flags:** Unconfirmed (Phase 2: low-stock thresholds are an admin setting)
**Phase:** Phase 1 of 3 in progress.
**What's live:**
- "Ships same day" badges on listing cards.
- A "Ships same day" pill on cart lines (check `F10-a`).

**What's left:**
- "Only N left" counts on product pages and cards ([backlog](backlog.md)).
- The cart line's stock counts: "N left" and "ships within N days" ([backlog](backlog.md)).
- Backorder states and notify-me ([backlog](backlog.md)).

**Code:** The cart pill was added in June.
**Sources:** [Inventory urgency](inventory-urgency-concepts.md)

<a id="f11"></a>
#### F11 · Equipment PDP & compare
**Status:** Not started · **Flags:** none
**Phase:** Phase 1 of 3 not started. The choice between Concept A and B (PD-005) is still open.
**What's live:** Nothing from this design. Equipment pages carry the same generic documentation links as parts pages, and a warranty link that pre-dates the prototype.

**What's left:**
- **Phase 1 native fixes** ([backlog](backlog.md)):
  - the grouped spec table
  - the corrected warranty banner
  - consistent titles, meta descriptions and breadcrumbs (today the page title and heading name the machine differently)
  - request a quote
  - reviews
  - compare-with-similar
  - compare checkboxes on the listing

**Code:** The equipment components moved into their own files in March; the warranty link and calls to action pre-date the prototype.
**Sources:** [Equipment PDP & compare](equipment-concepts.md) · `v2/equipment-pdp-a.html` · PD-005

### Cart & checkout

<a id="f12"></a>
#### F12 · Cart & cart preview
**Status:** Partly live · **Flags:** none
**Phase:** No phase plan. 5 of the 6 designed elements are live (whether the order summary stays in view on scroll was not checked).
**What's live:** The cart page reuses the prototype's markup and copy:
- "Your Cart (1 item)" and the ship-today line, "In stock items will ship today if ordered before 5pm (Central Time)" (check `F12-b`).
- Line items with SKU and quantity.
- The order summary with coupon and Apple Pay.
- "Your cart is empty / Keep shopping" (check `F12-a`).

**What's left:**
- The benefits list under checkout ([backlog](backlog.md)).

**Code:** The cart and cart preview were rebuilt 2026-06-08 to 06-18.
**Sources:** `v2/cart.html`

<a id="f13"></a>
#### F13 · Save for later
**Status:** Not started · **Flags:** Unconfirmed (persistent cart could not be tested)
**Phase:** Phase 1 of 3 not started.
**What's live:** Nothing. There's no Save for later action and no saved section.

**What's left:**
- The whole Phase 1 ([backlog](backlog.md)).

**Code:** None.
**Sources:** [Saved cart](saved-cart-concepts.md)

<a id="f14"></a>
#### F14 · Named lists
**Status:** Not started · **Flags:** Unconfirmed (company Shopping Lists could not be seen from a retail account)
**Phase:** Starts at the saved-cart brief's Phase 2; not started.
**What's live:** Nothing. The Wish Lists page shows no lists and no way to create one.

**What's left:**
- Named lists and a Saved Lists page ([backlog](backlog.md)).

**Code:** None.
**Sources:** [Saved cart](saved-cart-concepts.md)

### Account & retention

<a id="f15"></a>
#### F15 · Account dashboard
**Status:** Partly live · **Flags:** Unconfirmed (the Phase 0 tiles, account pills and support card are built for National Account groups, which a retail account cannot see)
**Phase:** Phase 0 (the reskin) is partly live.
**What's live:**
- The account pages carry the prototype's Phase 0 header ("Welcome back") and tabs: Orders, Addresses, Recently Viewed, Account Settings (check `F15-a`).
- The prototype's empty-orders message, word for word.

**What's left:**
- The account number in the header ([backlog](backlog.md)).
- Phases 0.5 to 3 ([backlog](backlog.md)).

**Code:** The account pages were restyled 2026-06-09 to 06-11.
**Sources:** [Account concepts](account-concepts.md) · [Account phases](account-phases.html) · PD-003

<a id="f16"></a>
#### F16 · Recently purchased / Buy again
**Status:** Not started · **Flags:** Unconfirmed (per-order reorder needs an account with orders)
**Phase:** Phase 1 of 3 not started.
**What's live:** Nothing. There's no Buy Again tab or list, and no re-buy rails.

**What's left:**
- The Buy Again list and tab, and the guest sign-in bridge ([backlog](backlog.md)).

**Code:** Only restyles of the stock order pages.
**Sources:** [Recently purchased](recently-purchased-concepts.md)

<a id="f17"></a>
#### F17 · My Equipment
**Status:** Not started · **Flags:** none
**Phase:** Deferred by PD-003 until the National Account fleet phase.
**What's live:** Nothing. This is deferred on purpose.

**What's left:**
- The fleet phase, when it enters scope ([backlog](backlog.md)).

**Code:** None.
**Sources:** [Account concepts](account-concepts.md) · PD-003

<a id="f18"></a>
#### F18 · Loyalty
**Status:** Not started · **Flags:** Unconfirmed (account creation at checkout could not be tested)
**Phase:** The quick wins have not started; the mechanic decision (PD-006) is still open.
**What's live:** Nothing. The free-shipping threshold is a flat $250, signed in or out.

**What's left:**
- The quick wins: a lower threshold for signed-in buyers, and the freight progress nudge in the cart ([backlog](backlog.md)).

**Code:** None.
**Sources:** [Loyalty](loyalty-concepts.md) · PD-006

<a id="f19"></a>
#### F19 · Subscribe & Save
**Status:** Not started · **Flags:** none
**Phase:** Phase 1 of 3 not started.
**What's live:** Nothing.

**What's left:**
- The Subscribe & Save option on product pages, with cadence and terms ([backlog](backlog.md)).
- The Subscribe badge and auto-ship price hint on listing cards ([backlog](backlog.md)).

**Code:** None.
**Sources:** [Subscribe & Save](subscribe-concepts.md)

### Site-wide

<a id="f20"></a>
#### F20 · Homepage
**Status:** Partly live · **Flags:** none
**Phase:** No phase plan. 5 of the 9 designed elements are at least partly live.
**What's live:**
- The hero headline and copy (check `F20-a`).
- The three value props (check `F20-b`).
- The OEM Diagrams card (check `F20-c`).
- Best Sellers (check `F20-d`).
- Shop by Brand (check `F20-e`).

**What's left:**
- The hero's calls to action and stats bar ([backlog](backlog.md)).
- Equipment-type tiles, subscription bundles, and the "Why USA Clean" band ([backlog](backlog.md)).

**Code:** The hero was built 2026-05-21 on the prototype's `home-hero` design.
**Sources:** `v2/index.html`

<a id="f21"></a>
#### F21 · Header, footer & shipping banner
**Status:** Partly live · **Flags:** none
**Phase:** No phase plan. 6 of the 8 designed elements are at least partly live.
**What's live:**
- The prototype's free-shipping banner, in its original code (check `F21-a`).
- The sticky header.
- The Expert Support phone number (check `F21-b`).
- Sign In, Account and Sign Out (check `F21-d`).
- The cart count.
- The footer newsletter signup (check `F21-c`).

**What's left:**
- The notifications bell ([backlog](backlog.md)).
- The announcement bar: warehouses, hours, Pro Account, Help, Track Order ([backlog](backlog.md)).
- The signed-in name and company in the header ([backlog](backlog.md)).
- The "Talk to a parts expert" call-out in the nav bar; today the phone number sits in the header ([backlog](backlog.md)).

**Code:** The header and footer were restyled in March and May; the banner is placed as a page-builder widget.
**Sources:** `v2/shipping-banner.html`

<a id="f22"></a>
#### F22 · Shop Parts landing
**Status:** Not started · **Flags:** none
**Phase:** No phase plan.
**What's live:** Nothing from this design. "Shop Parts" leads to an A-Z brand directory at `/parts-and-supplies/`. It was new in March, but it isn't the machine-first landing.

**What's left:**
- The machine-first hero with brand chips and model or serial entry ([backlog](backlog.md)).
- Shortcuts to saved machines and parts-diagram upload, the machine illustration with part-number callouts, and the value-props strip ([backlog](backlog.md)).

**Code:** The brand directory, 2026-03-25.
**Sources:** `v2/shop-parts.html`

<a id="f23"></a>
#### F23 · Caster design system
**Status:** Partly live · **Flags:** none
**Phase:** No phase plan. 4 of the 10 designed layers are at least partly live.
**What's live:**
- All 504 Caster design tokens, identical to the design system's.
- The cart and account page styles (check `F23-a`), and on product pages the bundle block's and the video cards' styles.

**What's left:**
- The component library: buttons, product cards, pills, stock badges, machine cards and the rest ([backlog](backlog.md)).
- The rest of the product page styles: the price block, and the compatibility checker, which is still styled without Caster ([backlog](backlog.md)).

**Code:** Caster files arrived 2026-06-08. The theme published on 2026-09-29 moved the older custom styles aside, replaced the bundle styles, and added the video-card styles.
**Sources:** [Caster design system](../design-system/)

<a id="fixes"></a>
## 04 · Fixes & recommendations

The IA roadmap's 17 recommendations and the GEO/AEO audit's 15, checked the same way.

| ID | Fix | Status | Flags | Evidence |
|---|---|---|---|---|
| IA-01 | Fix the HawkSearch searchRequest null reference | Not started | | The faulty line is unchanged; one results page showed a different script error |
| IA-02 | Add /diagrams/ to the navigation | Partly live | | The diagrams library exists and the homepage links it; the nav does not |
| IA-03 | Fix the /search trailing-slash duplicate | Partly live | Unconfirmed (whether analytics still splits the two forms is not visible from outside) | One form redirects, but the reverse of the recommended direction; the search then rewrites the address, so both forms still appear |
| IA-04 | Merge the Batteries taxonomy and fix the Chemicals URL | Not started | | `/lithium-batteries/` and `/chemicals/` still load without redirects |
| IA-05 | Reclassify Escatechnique in the Equipment nav | Not started | | Still listed beside New and Used Equipment |
| IA-06 | Move Pay an Invoice and Returns to the utility nav | Partly live | | Returns is in the header; Pay an Invoice is not found |
| IA-07 | Fix the Shop Parts top-level link destination | Not started | | Still lands on the manufacturer browse (rebuilt as "Shop by Brand"); no neutral landing |
| IA-08 | Elevate search as the primary homepage interaction | Not started | | The hero is the machine finder |
| IA-09 | Surface all 40+ part categories in the nav | Not started | | The dropdown lists 17 |
| IA-10 | Redesign mobile navigation | Not started | | The stock drawer |
| IA-11 | Fix Cumulative Layout Shift (CLS 0.29) | Not started | | In lab tests on 2026-09-29 and 2026-10-13, the search results page measures 0.54 to 0.80 on a phone and 0.63 to 0.65 on desktop, far above the 0.1 guideline; the homepage is fine |
| IA-12 | Build a model number / machine lookup path | Partly live | | The homepage finder is live but fails for Tennant; no serial lookup |
| IA-13 | Separate consumables from repair parts at the top nav | Not started | | No consumables or repair-parts split in the nav |
| IA-14 | Reorganise the Equipment nav by type, condition as a filter | Not started | | Still split New / Used |
| IA-15 | Build an account hub for repeat B2B buyers | Not started | Unconfirmed | The account pages are reskinned; no hub features for a retail account |
| IA-16 | Elevate Service to a first-class section | Not started | | A single link |
| IA-17 | Run a formal card sort | Not started | Unconfirmed | Not run, per the project team |
| GEO-R1 | Unblock AI retrieval crawlers at the Cloudflare edge | Live | | Requests identifying as GPTBot, ClaudeBot and PerplexityBot now get the page (blocked in July) |
| GEO-R2 | Reconcile robots.txt into one policy | Partly live | | One policy now; AI retrieval and training bots are treated the same |
| GEO-R3 | Decide Google-Extended explicitly | Live | | Named and allowed |
| GEO-R4 | Ship llms.txt | Not started | | Returns "not found" |
| GEO-R5 | Entity-clarity copy pass | Not started | | About and guide pages open with marketing copy |
| GEO-R6 | Put 600 technicians / 40 years into crawlable HTML | Not started | | Not in the homepage or About text (the Service page mentions 600 technicians) |
| GEO-R7 | Article, author, and date schema on guides | Not started | | No schema on the pad selection guide |
| GEO-R8 | Q&A blocks and FAQPage schema on top categories | Not started | | Breadcrumb schema only |
| GEO-R9 | PDP meta-description template | Not started | | Still the part number alone |
| GEO-R10 | Homepage title tag rewrite | Live | | Rewritten by 2026-10-13: "USA-CLEAN \| Floor Cleaning Equipment Parts \| Buy Now" (it was "USA-CLEAN") |
| GEO-R11 | Convert /home/ 404 to a 301 | Not started | | Still "not found" |
| GEO-R12 | GA4 AI Assistant channel group | Not started | Unconfirmed | Not visible on the store; not confirmed either way |
| GEO-R13 | Monthly citation panel | Not started | Unconfirmed | Not visible on the store; not confirmed either way |
| GEO-R14 | Quarterly crawler-access re-check | Not started | Unconfirmed | No standing schedule on record; this audit ran it once |
| GEO-R15 | Video transcripts and VideoObject schema | Not started | | No VideoObject schema on the sampled pages. None of the product pages checked has a video, and the videos library embeds none in its served page; the product page template has a Videos tab for products that have videos |

As in July, the homepage carries Organization, Store and WebSite schema.

## 05 · In progress

The product page work on the theme branch `cxl21` was published to the store on 2026-09-29, during this audit, though it is not yet merged into the theme's main line. It brought the Description and Specifications tabs and a Videos tab for products with videos ([F06](#f06)), the compatibility checker rebuilt as its own component ([F02](#f02)), the bundles block without the switch that hid it ([F07](#f07)), and a Klaviyo component. The rows above describe the store after it.

Still on a branch, `cxl22`, and not seen on the store when it was re-checked on 2026-10-13:
- **Category and model pages.** The category templates are cleaned up, including the model page's layout ([F05](#f05)).
- **A model landing page**, started 2026-10-06: a page styled with Caster, and a custom template for the new-equipment category ([F05](#f05)).
- **A Nilfisk brand page template**, started 2026-10-06.

## 06 · Shipped, not in the prototype

Live on the store and designed by no brief:
- A sticky add-to-cart bar on product pages (March 2026).
- The A-Z brand directory that "Shop Parts" leads to (March 2026).
- A battery guide block on product pages.
- A Tax Exemption link in the signed-in header.
- Klaviyo scripts on every page.
- A live-chat tab on every page.
- Homepage structured data for the organization and store.
- Search keyword redirects: words that match a category ("squeegee", "gasket") jump to that category page instead of showing results.

## 07 · What's left, by phase

**Phase 1 and no-phase work that is open now**
- **Find:**
  - [F01](#f01): the IA roadmap's sections, Resources and Service in the nav, and Returns moved out of About.
  - [F02](#f02): fix the finder's Tennant 404; add the results-page prompt, the nav column, and the finder's typed model, serial and diagrams link.
  - [F03](#f03): signed-in search; the hero search; Caster on the search results page.
  - [F04](#f04): the megamenu.
  - [F05](#f05): model header, related models, the dispatch-a-tech call to action, new addresses with redirects.
- **Evaluate:**
  - [F06](#f06): the breadcrumb, image thumbnails and the Shipping & Returns tab.
  - [F07](#f07): settle the bundle saving, and add the quantity steppers.
  - [F08](#f08): tier tables and cart savings.
  - [F09](#f09): the part's own guides and videos, and the mobile guides button.
  - [F10](#f10): stock counts, backorder states and notify-me.
  - [F11](#f11): the native equipment fixes.
- **Cart:**
  - [F12](#f12): the benefits list.
  - [F13](#f13): save for later.
- **Account and retention:**
  - [F15](#f15): the account number in the header, then Phase 0.5, the personalized account home.
  - [F16](#f16): Buy Again.
  - [F18](#f18): the loyalty quick wins.
  - [F19](#f19): Subscribe & Save.
- **Site-wide:**
  - [F20](#f20): the hero calls to action and stats.
  - [F21](#f21): the announcement bar, notifications, signed-in header, and the parts-expert call-out.
  - [F22](#f22): the machine-first Shop Parts landing.
  - [F23](#f23): the Caster component library and the rest of the product page styles.

**Phase 2 and later (data-gated or deferred)**
- [F02](#f02), [F05](#f05) and [F16](#f16) wait on the part-to-model compatibility mapping (PD-004, PD-008).
- [F07](#f07)'s Build Your Bundle waits on bundle data (PD-001).
- [F14](#f14) named lists follow save for later.
- [F17](#f17) waits for the fleet phase (PD-003).
- [F15](#f15)'s Phases 1 to 3 follow the [account phase plan](account-phases.html).
- [F18](#f18)'s tiers follow the pending loyalty decision (PD-006).

## 08 · How to re-run this audit

The checks behind the live claims are kept with the repository (`tools/live-audit/`, not published to this site). A re-run does three things:
- It fetches each page again and reports anything that has gone missing or newly appeared.
- It lists the manual checks that need a person in a browser.
- It summarizes new theme code since this audit.

A clean run takes a few minutes; the manual pass takes about an hour.

## 09 · Sources

- [Prototype home](../index.html) and the `v2/` prototype pages
- [IA & Search Roadmap](USAClean_IA_Search_Roadmap.md) · [Sitemap recommendations](USAClean_Sitemap_Recommendations.md) · [GEO/AEO audit](geo-aeo-audit.md) · [Decision log](decisions.md)
- Briefs: [search experience](search-experience-concepts.md), [megamenu](megamenu-concepts.md), [model landing pages](model-landing-concepts.md), [bundles](bundle-concepts.md), [volume discounts](volume-discount-concepts.md), [install & repair guides](install-repair-guides-concepts.md), [inventory urgency](inventory-urgency-concepts.md), [equipment](equipment-concepts.md), [saved cart](saved-cart-concepts.md), [account](account-concepts.md), [account phases](account-phases.html), [recently purchased](recently-purchased-concepts.md), [loyalty](loyalty-concepts.md), [subscribe](subscribe-concepts.md), [AI Parts Finder](parts-finder-feasibility.md)
- shop.usaclean.com, checked 2026-09-29
- Theme repository `quasiobject/usa-clean` (private), main and open branches as of 2026-09-29
