Watch Vault is a credible Houston-based luxury watch dealer with a sizable catalog (1,629 products), a working brick-and-mortar story at 4722 Richmond Ave, and a Shopify storefront that already exposes the new agentic-commerce signals (/llms.txt, /agents.md, agentic discovery sitemap). It is reachable by Googlebot, Bingbot, GPTBot, ClaudeBot, and PerplexityBot — there are no crawler-side blocks. The score is held back by an unusually large number of mechanical, fixable problems: every product title is hard-truncated to 70 characters mid-word, the homepage has zero <H1> tags, no LocalBusiness or Organization JSON-LD anywhere on the site, two indexed staging clones (/pages/new-about-us, /pages/contact-us-new) that are 99.4 % and 74.2 % identical to their canonical originals, an external Bootstrap 3 CDN render-blocking every page, and 2,500 of 2,501 sampled images served with no loading="lazy" attribute and no inline width/height. The site footer + homepage + About + Contact display LocalIQ PPC call-tracking number (832) 248-0018 instead of the client-confirmed canonical (281) 516-5977 (verified by Dina on 2026-02-03; matches GBP, MapQuest, contact-page tel: href). LocalIQ tracking is fine for PPC attribution but must not appear on canonical NAP surfaces. There is no crawl-budget crisis, no penalty risk, and no broken information architecture — the work is scoped, predictable, and high-leverage.

Category Scores

Technical SEO
60
22% weight
Content Quality
55
23% weight
On-Page SEO
38
20% weight
Schema / Structured Data
45
10% weight
Performance (CWV est.)
40
10% weight
AI Search Readiness
45
10% weight
Images
50
5% weight

Top 5 Critical Issues

1. Two staging-duplicate pages indexed in production
/pages/new-about-us is 99.4 % identical to /pages/about-us. /pages/contact-us-new is 74.2 % overlap with /pages/contact-us. Both are in sitemap_pages_1.xml; both are crawlable. Last-modified May 2024 / Nov 2024 — live-and-indexed for 12–18 months.
2. 24 of 24 sampled product titles truncated mid-word at exactly 70 chars
Examples: "Breitling Avenger II Seawolf BlackSteel Limited Edition Yellow Dial 45" (cut off "MM M17331"); "Rolex Submariner No Date 41mm Black Dial Stainless Steel Oyster 124060" (off-by-one digit). This is Shopify's hard 70-char SEO-title cap with this theme template. Sitewide CTR damage on 1,629 PDPs.
3. Homepage has zero <H1> tags
Homepage emits 25 H2 tags but no H1. Six other pages also missing H1: /pages/about-us, /pages/get-best-price-rolex-luxury-watches, /pages/new-about-us, /pages/product-warranty, /pages/search-results-page, /pages/watchvault_reviews.
4. Zero LocalBusiness / Organization / Store JSON-LD across the site
A Houston brick-and-mortar at 4722 Richmond Ave with NAP on every page footer, but every one of 100 sampled pages is missing the schema that local pack and AI Overviews rely on. Only WebSite, Product, BreadcrumbList, and BlogPosting are present.
5. LocalIQ tracking number on canonical NAP surfaces
Canonical phone per client (Mike, 2026-02-03): (281) 516-5977. Site footer (200 pages), homepage hero, About, and Contact header display (832) 248-0018 — a LocalIQ PPC call-tracking number. Local pack and AI agents are reading the tracking number from canonical surfaces. /llms.txt and /agents.md already use the canonical (just unformatted as 2815165977); GBP and MapQuest already use the canonical.

Top 5 Quick Wins (combined ≤ 4 hrs dev time)

# Fix Expected impact Effort
1 Unpublish /pages/new-about-us + /pages/contact-us-new; 301 to canonical Reclaims canonical signal; removes split equity XS · 15 min
2 Add loading="lazy" to all <img> emitted by rimg snippet LCP −800 ms to 1.5 s on PLPs/PDPs; bandwidth saving S · 1 hr
3 Replace homepage <title> with "Houston Luxury Watch Buyer & Seller | Watch Vault" SERP CTR uplift sitewide on the highest-impression page XS · 5 min
4 Add an <h1> to homepage hero Restores top-level heading signal for ranking + accessibility XS · 15 min
5 Add JewelryStore / LocalBusiness JSON-LD in theme.liquid head Local pack + AI Overviews + Knowledge Panel eligibility S · 30 min

Category Summaries

Technical SEO 60 / 100

Crawlable and indexable. HSTS at ~91 days (not preload-eligible). HTTP/3 explicitly disabled (alt-svc: clear). Bare-bones CSP. Missing Referrer-Policy, Permissions-Policy, COOP. All AI bots reach the origin. Cloudflare WAF non-blocking.

Content Quality / E-E-A-T 55 / 100

Decent product/collection word counts. Two staging clones live. 14 thin collection pages (107–115 words). Product descriptions are HTML-escaped spec dumps. Blog has no author bylines — weak Person schema, weak AI-citation signal.

On-Page SEO 38 / 100

24 truncated titles, 7 missing H1s, 9 missing meta descriptions, 26 over-long descriptions, generic 12–16-char titles on price-band collections and policy pages. <H3> usage essentially zero across the site.

Schema / Structured Data 45 / 100

Product + BreadcrumbList + WebSite present. Zero LocalBusiness/Organization. No FAQPage on /pages/faqs. No AggregateRating on /pages/watchvault_reviews. No CollectionPage or ItemList on collections. No SearchAction.

Performance (CWV est.) 40 / 100

88 script tags on homepage (72 render-blocking). Bootstrap 3.3.7 + bootstrap-theme served from external maxcdn.bootstrapcdn.com on every page. 73 inline scripts (~46 KB). LCP estimated 4.0–5.5 s mobile.

Images 50 / 100

99.96 % alt-attribute coverage (good). 12 % empty-alt content images (bad). 1 of 2,501 images uses loading="lazy". 1,654 of 2,501 missing width/height — CLS risk. srcset coverage 99.5 % (good).

AI Search Readiness 45 / 100

Recalibrated using 5-dimension framework. Technical accessibility 90/100 (excellent — 16 AI bots verified, agentic discovery published). Held back by Citability 30 (no 134–167 word brand passages, no author bylines), Authority 25 (no Wikipedia, no Wikidata, weak directory presence), Structural Readability 35 (flat H2 layout). See GEO page for full breakdown.

Local & E-commerce 50 / 100

Strong on-page local presence (73/100 pages mention Houston) but zero LocalBusiness schema. NAP phone conflict between site footer and llms.txt. Out-of-stock products kept in sitemap. Product schema missing UsedCondition.

What's Working Well

  • All AI crawlers (GPTBot, ClaudeBot, PerplexityBot, ChatGPT-User) return 200 from origin
  • Cloudflare in front but WAF is not challenging legitimate traffic
  • All sampled pages render server-side (no JS-only content)
  • Canonical tags present on 100 % of sampled pages, all self-referential
  • BreadcrumbList JSON-LD on 95 % of pages
  • Product schema on 100 % of PDPs (with offers, brand, priceValidUntil)
  • Shopify's new agentic-discovery sitemap is published (/llms.txt, /agents.md, /llms-full.txt)
  • 99.5 % of images use srcset for responsive serving
  • 99.96 % of images have an alt attribute
  • Site is in Common Crawl CC-MAIN-2025-43 (verified, multiple captures)
  • Sitemap structure is split correctly across products / collections / pages / blogs / agentic discovery
  • Strong local content presence: Houston (73 pages), Bellaire (35), Richmond Ave (11)

Expected Impact (Roadmap)

Week 1 — Critical fixes
~6 hours combined dev time
  • Unpublish staging clones; 301 to canonical
  • Replace homepage title; add H1
  • Add LocalBusiness JSON-LD sitewide
  • Reconcile NAP phone in /llms.txt + /agents.md
  • Drop external Bootstrap 3 CDN dependency
Weeks 2–3 — High priority
~3–5 days combined
  • Rewrite product title template (kill the 70-char truncation pattern)
  • Lazy-load all below-fold images; add explicit width/height
  • Enrich Product schema (sku, mpn, condition=Used, multi-image, return policy)
  • Add FAQPage schema to /pages/faqs; AggregateRating to /pages/watchvault_reviews
  • Author bespoke /llms.txt with brand portfolio + FAQ
  • Add CollectionPage + ItemList schema to all 47 collections
  • Add HSTS preload + missing security headers; re-enable HTTP/3
Month 2 — Medium priority
~10 days combined
  • Visible breadcrumbs UI
  • 200-word brand introductions on 14 thin collections
  • Blog author bylines + Person schema
  • Hero image preload on homepage
  • Reduce script tag count (audit 7 third-party origins)
  • Connect Search Console + GA4 + CrUX API for next audit pass
  • Reduce empty-alt on content images
Backlog
As capacity allows
  • Replace OG image (PNG → JPG/WebP)
  • fetchpriority hints on critical resources
  • Visible review widget on homepage
  • Dedicated "About Watch Vault" trust page
  • Re-template /pages/get-directions as proper LocalBusiness landing
  • Decide policies indexation strategy
  • Marketplace presence audit (Chrono24, Bezel, WatchProSite)

Expected total: +25–50 % organic sessions within 6 months if all critical + high items complete; +40–80 % AI Overview citation rate within 4–8 weeks of bespoke llms.txt + LocalBusiness deploy.