Being Human Clothing — Master CRO Audit
Synthesis of the full storefront funnel audit · 2 September 2026 Store: https://www.beinghumanclothing.com/ (Shopify, HTD/HeartDot custom theme, operated by GreenHonchos) Companion deep-dives: pageaudit/homepage.md, pageaudit/plp.md, pageaudit/pdp.md, pageaudit/cart-checkout.md, pageaudit/support-and-utility.md; business context in business-analysis.md; technical/perf in web-quality-audit.md.
0. How to read this report
This is the consolidation layer. Five specialist page audits were run on the live store (homepage, PLP, PDP, cart/checkout, support & utility) plus a web-quality pass. Each had its own finding IDs (homepage F1–F8, PLP F1–F9, PDP P1–P11, cart-checkout C1–C9, support S1–S9). This document de-duplicates them into one severity-ranked master register (CRO-01 … CRO-32), surfaces the systemic root causes that span pages, and gives a 30/60/90-day execution plan.
Method & honesty caveats (apply to every sub-audit):
- Traffic reality: 95.6% phone / 4.4% desktop / 0% tablet (CrUX, 2026-08-29). Mobile is the operative surface; every finding is weighted for a mobile-first, discount-led, fit-anxious, trust-sensitive audience.
- The test environment renders only a fixed ~1280px desktop viewport — no mobile emulation, no screenshots. Structure, copy, links and interactions were verified against the fully-rendered live DOM (genuine UI clicks) + server-side curl checks. Pixel-level mobile layout (stacking, thumb-reach) is inferred, not visually confirmed, and flagged where relevant.
- The variant / filter / sort failures were proven two ways (live DOM state + server-side
?f./?sort_by=URL params +products/*.jsonvariant-ID cross-checks), so they are device-independent defects, not harness artifacts. - Every "absent" claim (reviews, ratings, FAQ, loyalty, size guide) was re-verified by wait-and-re-scan + static-HTML token check (judgeme/yotpo/loox/stamped/okendo/aggregateRating/reviewCount all = 0), not a single glance.
1. Executive Summary
Overall verdict: the funnel is reachable and the checkout is clean, but the store has one revenue-destroying defect and one trust gap that together cap conversion far below its potential. The brand's assets — Salman Khan halo, "Fashion with a Heart" philanthropy, 11,581-SKU catalog, permanent 50–65% discounting, free shipping, guest checkout, COD with no surcharge — are strong. The execution has critical holes on exactly the two pages where the money is made: the PDP and the cart.
The three findings that matter most:
- CRO-01 — The selected size/colour is silently thrown away at add-to-cart (Critical). On every multi-variant product, the variant a shopper picks is cosmetic only; the default variant lands in the cart and is what they pay for. Proven on 3 products (2 denims + 1 tee) with real clicks and confirmed in the checkout payment-step Order Summary (selected Size 36 → cart/checkout show Size 28). Root cause: a third-party app ("Variant King" combined-listing) that is supposed to sync the form's
input[name=id]is absent from the live DOM, so no JS updates the variant on selection. This is an order-accuracy, returns, refund and reputation catastrophe on a 95.6%-mobile audience that cannot easily spot the mismatch before paying. This single item is the highest-ROI, highest-risk fix on the site and must be solved in theme code, not just by reviving the app.
- CRO-02 — There are no customer reviews or ratings anywhere (Critical). Not on cards, not on PDPs, not in schema (11,581 products,
AggregateRatingabsent). For a discount-led, fit-anxious, 95.6%-mobile buyer, social proof is the #1 purchase-confidence lever — and the store's only social proof is brand-produced celebrity imagery. This is the biggest pure-trust gap.
- CRO-03 — Faceted filtering is dead (Critical).
?f.Color=Blue/?f.Fit=Boot+Cutreturn the identical unfiltered catalog, and the filter/sort toolbar web components render empty. The homepage's flagship "Explore Our Denim Fits" section links to filters that don't filter — a broken discovery promise. Same root-cause app failure as CRO-01.
Underneath those three, a cluster of Major mobile-friction and support/retention gaps (no card-level add-to-cart, no sticky mobile buy bar, no breadcrumbs, no size guide, no delivery estimator, empty-cart dead-end, no FAQ, no on-page contact form, COD-refund messaging that contradicts the "Free 15-Day Returns" promo) blunt the path to purchase and post-purchase retention.
Mobile performance is a live risk too (CRO-15): Lighthouse lab LCP is a catastrophic 12.2s on mobile (4.9× the 2.5s "Good" threshold) driven by 70 scripts and a missing LCP-image preload, while field LCP is a healthier 2.25s but INP sits at 227ms (Needs Improvement). On mid-range Android under real network conditions, the experience degrades sharply.
Net: fix CRO-01 + CRO-03 (one root cause, one fix), install reviews (CRO-02), then work the Major mobile-friction and support/retention list. The quick wins (FAQ, contact form, policy summaries, i18n fix, LCP preload, Twitter Cards) are low-effort and high-leverage.
2. Funnel Health Scorecard
Each stage scored on the live evidence. 🔴 blocks conversion, 🟡 friction, 🟢 healthy.
| Stage | What was tested | Verdict | Headline issue |
|---|---|---|---|
| Discovery (Home) | Live DOM, 16 sections, hero/carousels/nav/footer | 🟡 | No above-fold primary CTA; no reviews; hero alt empty (F1–F8) |
| Listing (PLP) | 3 PLPs, sort/filter validated server-side | 🔴 | Filtering dead (F2); sort UI blank (F3); no card ATC (F4) |
| Product (PDP) | 2 PDPs, real variant clicks to cart | 🔴 | Wrong variant ships (P1); no reviews (P2); no size guide (P4) |
| Cart | /cart reached via real clicks; qty/empty-state tested | 🔴 | Wrong variant in line (C1); stale subtotal (C3); dead-end empty (C2) |
| Checkout | Native Shopify, to final payment step (not submitted) | 🟢 (minus C1) | Guest OK, no accelerator gate, free shipping, COD no surcharge — but Order Summary shows wrong variant (C1) |
| Support / Utility | Our-Story, Contact, Blog, 4 policies, 2 external apps | 🟡 | No FAQ (S1); no contact form (S2); COD-refund mismatch (S3) |
The variant defect (CRO-01) is the only finding that spans PDP→Cart→Checkout as a single unbroken chain of failure — it is the spine of the red column.
3. The Critical Findings (deep dive)
CRO-01 — Selected variant discarded at add-to-cart → wrong item ships (Critical)
- Evidence (3 independent confirmations):
- PDP A (denim): selected Green + Size 34 → cart recorded "Size: 28 Color: Grey" (default). Form
input[name=id]stayed49526304014574(Grey/28), not Green/34's47436097814766. - PDP B (tee): selected Size L → cart recorded "Size: S Color: Blue".
- Cart-checkout audit, 3rd product (Blue Neon denim
bhdi26279): selected Size 36 →/cartline "Size: 28 Color: Blue"; checkout Order Summary "28 / Blue";products/bhdi26279.jsonconfirms size-36 variant =47436094996718, default 28 =47436094865646(the one that shipped).
- PDP A (denim): selected Green + Size 34 → cart recorded "Size: 28 Color: Grey" (default). Form
- Root cause (verified): the
<form action="/cart/add">carries a hiddeninput[name=id]hard-set server-side to the default variant. No script updates it on radio change, because the "Variant King" combined-listing app is missing from the rendered DOM. The radiocheckedstate is purely cosmetic; "Recommended For You" links are correctly variant-parameterized, proving the theme can build correct variant URLs — so this is unambiguously a missing/broken JS handler, not a data problem. - Same root cause, different symptom on PLP: the
initial-search-*filter/sort web components also fail to hydrate (CRO-03) — the storefront over-relies on third-party apps that aren't loading. - Impact: every multi-variant product (the vast majority of 11,581 SKUs) ships the wrong size/colour unless the customer wanted the default. → wrong-size returns, refunds, chargebacks, 1-star reviews, churn. On 95.6% mobile, the mismatch is hard to catch pre-pay.
- Fix: restore the Variant King app and add native Shopify variant JS that updates
input[name=id]on radio change as a belt-and-braces fallback; add a post-select assertion + QA every PDP. Success metric: wrong-variant order rate → 0%.
CRO-02 — No customer reviews/ratings anywhere (Critical)
- Evidence: live DOM + static-HTML token scan (judgeme/yotpo/loox/stamped/okendo/aggregateRating/reviewCount = 0) on homepage, all 3 PLPs, both PDPs, and schema. No "write a review" CTA.
- Why it's Critical here: 95.6% mobile, permanent 50–65% discounts, apparel fit-anxiety. Reviews are the primary trust lever for this exact audience; the store leans only on brand-produced celebrity ambassadors.
- Fix: install Judge.me/Loox; star + count on every card and a reviews+photos+Q&A module on PDP; add
AggregateRating/Reviewschema. Success metric: PDP→cart CVR; review volume.
CRO-03 — Faceted filtering non-functional (Critical)
- Evidence (server-side):
women-jeans?f.Fit=Boot+Cutreturned 45 products = identical to the unfiltered 45;men-shirts?f.Color=Bluereturned 53 = identical to unfiltered 53 (including brown/beige/green/charcoal/black — proof the facet is ignored). The<initial-search-filters>toolbar renders empty (innerHTML ≈ 0); product-count span blank. Sort logic is correct server-side (?sort_by=monotonic PASS) but the sort UI control is also blank/unusable (CRO-04). - Discovery-promise break: the homepage "Explore Our Denim Fits" (Cropped/Skinny/Straight/Anti/Slim/Jogger/Boot Cut) links to
?f.Fit=PLPs that don't filter. A shopper clicking "Boot Cut" sees the whole jeans catalog. - Fix: diagnose why
initial-search-*fails to hydrate; restore?f.Color=/?f.Fit=to actually restrict the grid; add active-filter tags + "Clear All". Success metric: PLP→PDP CTR; merch relevance.
4. Master Findings Register (severity-ranked, de-duplicated)
Severity: 🔴 Critical · 🟠 Major · 🟡 Moderate · ⚪ Minor. "Source" = originating sub-audit finding ID(s).
| # | Finding | Severity | Source | Effort | Why it moves conversion |
|---|---|---|---|---|---|
| CRO-01 | Selected variant discarded at add-to-cart → wrong size/colour ships (PDP→cart→checkout) | 🔴 | P1, C1 | Med | Order-accuracy/returns/reputation catastrophe on 95.6% mobile |
| CRO-02 | No customer reviews/ratings anywhere (cards, PDP, schema) | 🔴 | F1, F1, P2, WQ | Med | #1 trust lever for discount-led mobile buyer |
| CRO-03 | Faceted filtering non-functional (?f. ignored; toolbar empty) | 🔴 | F2 | Med–High | Core discovery tool dead; "Denim Fits" promise broken |
| CRO-04 | Sort control unusable (blank UI; logic correct server-side) | 🟠 | F3 | Med | Users can't re-order by price/newest |
| CRO-05 | No card-level Add-to-Cart / Quick View (every purchase = full PDP visit) | 🟠 | F2, F4, C7 | Med | Cuts taps-to-purchase on 95.6% mobile |
| CRO-06 | No sticky mobile buy / checkout-summary bar (CTA scrolls away) | 🟠 | P6, C9 | Med | Mobile add-to-cart & checkout-initiation rate |
| CRO-07 | No visible breadcrumbs site-wide (JSON-LD only) | 🟠 | F5, P3 | Low | Lost orientation for deep-linked/mobile users |
| CRO-08 | No size guide / fit confidence in buy box (top return driver) | 🟠 | P4 | Low | Return rate; size-related CS tickets |
| CRO-09 | No shipping/delivery estimator (PIN) in buy box or cart | 🟠 | P5, C6 | Med | Delivery-confidence; checkout completion |
| CRO-10 | Empty-cart dead-end (single "Explore Collections" link, no recovery) | 🟠 | C2 | Med | Abandoned-cart recovery; empty→revisit CVR |
| CRO-11 | Cart qty stepper doesn't recalc subtotal live (stale SUBTOTAL) | 🟠 | C3 | Low–Med | Cart-edit completion; "wrong qty" tickets |
| CRO-12 | No on-page FAQ / Help Center (pre-purchase objections undeflected) | 🟠 | S1 | Med | Cuts support tickets; defuses pre-checkout doubt |
| CRO-13 | Contact page has no form (Ask-a-Question gated to PDPs only) | 🟠 | S2 | Low | Mobile support friction; undercuts "we'll assist you" |
| CRO-14 | COD refund = store-credit only, contradicts "Free 15-Day Returns"/BNPL | 🟠 | S3 | Low | Prevents disputes/chargebacks; trust |
| CRO-15 | Mobile performance emergency (lab LCP 12.2s, INP 227ms, 70 scripts) | 🟡 | WQ | Med–High | Mobile conversion; bounce on mid-range Android |
| CRO-16 | Our-Story dead-end; philanthropy differentiator siloed from home | 🟡 | S4, F4 | Low | Leverages brand's unique differentiator |
| CRO-17 | Policy pages wall-of-text (no summary/badges/TOC) | 🟡 | S5 | Med | Comprehension of safety-net policies |
| CRO-18 | No loyalty / membership program (repeat-purchase LTV on table) | 🟡 | S9, F5 | High | Repeat-purchase rate |
| CRO-19 | External utility apps (Track Order/Store Locator) no no-JS fallback | 🟡 | S6 | Med | Fragile post-purchase/offline UX on mobile |
| CRO-20 | PDP gallery weak (empty alt; no zoom/lightbox/360; no per-variant swap) | 🟡 | P7 | Med | Engagement; detail inspection; a11y/SEO |
| CRO-21 | Categorisation leaks (men's denim filed under Women Jeans) | 🟡 | F7 | Low | Relevance; misleads women shoppers |
| CRO-22 | Color swatch mislabeled "Please Select Size"; title not variant-aware | 🟡 | P8 | Low | Variant-selection clarity; support tickets |
| CRO-23 | Footer WhatsApp i18n bug "Translation missing…" (site-wide) | ⚪ | F6, P10, S7 | Low | Polish/trust; visible defect |
| CRO-24 | No cart trust/value badges (payment icons, easy-returns reassurance) | ⚪ | C5 | Low | Cart→checkout CVR |
| CRO-25 | No cart upsells / shipping calc / gift note / free-ship progress bar | ⚪ | C4 | Med | AOV; checkout initiation |
| CRO-26 | Accessibility: 21 empty-alt images + mislabeled controls (search=My account) | ⚪ | WQ, F3 | Low–Med | WCAG; SR usability; image SEO |
| CRO-27 | SEO: Twitter Cards absent; og:image over http://; keyword-stuffed H1 | ⚪ | WQ | Low | Share previews; brand voice; CTR |
| CRO-28 | Blog <title> generic "Post"; only 6 thin articles | ⚪ | S8 | Low–Med | Top-of-funnel SEO/engagement asset |
| CRO-29 | Footer policy links same-tab redirect (no _blank/modal) | ⚪ | P9, C8 | Low | Funnel retention |
| CRO-30 | No recently-viewed / personalization on PDP/home | ⚪ | P11 | Low | Repeat engagement |
| CRO-31 | Redundant homepage sections (2 category rows, 2 trending carousels) | ⚪ | F8 | Low | Scroll depth; cognitive load |
| CRO-32 | Inconsistent size labelling (S/M/L vs numeric waist) across catalog | ⚪ | F9 | Low | Cross-shopping comparison friction |
WQ = web-quality-audit.md
5. Systemic Root Causes (why several findings share one fix)
- Third-party app dependency that isn't loading. CRO-01 (variant sync) and CRO-03/CRO-04 (filter/sort) all stem from Shopify apps ("Variant King", "initial-search-*") that render empty/fail to hydrate in the live DOM. One engineering workstream — make variant selection + filtering/sorting work without depending on a fragile external app, or fix the app load — resolves 4 Critical/Major findings at once. Audit the 70 scripts on the homepage (web-quality §1.4) for other broken/missing app JS.
- Trust infrastructure absent by design. CRO-02 (reviews), CRO-12 (FAQ), CRO-18 (loyalty), CRO-13 (contact form) are all "we never built the trust/retention layer." They compound for a discount-led, mobile, first-time buyer. A reviews app + a FAQ page + a contact form are standard Shopify installs and the highest-leverage trust investments after the variant fix.
- Mobile-first not honored in the buy flow. CRO-05/06/08/09/10/11 (no card ATC, no sticky bar, no size guide, no delivery estimator, empty-cart dead-end, stale subtotal) all hit a 95.6%-phone audience hardest. The store was audited desktop-only, but every buy-flow gap should be spec'd mobile-first.
- Cause-led differentiator under-leveraged on the acquisition path. CRO-16 (Our-Story siloed) + homepage F4. The brand's unique asset ("Fashion with a Heart" / Being Human Foundation) lives on a buried page while the homepage leads with discounts. Closing this is a near-zero-cost copy/CTA change.
6. What's Working Well (preserve)
- Native Shopify checkout, guest (email-only), no OTP/login wall, no accelerator gate — avoids the mandatory-account-creation CRO killer. (cart-checkout §4)
- Free Shipping only, COD with NO surcharge — "hidden COD fee" pitfall avoided. (cart-checkout §4)
- Clean, trustworthy payment presentation — Razorpay + COD, "All transactions are secure and encrypted". (cart-checkout §4)
- Accurate price block — compare-at strikethrough + % off + tax-inclusive. (pdp §2)
- Working remove-item, header cart-count, PROCEED TO CHECKOUT CTA. (cart-checkout §3)
- Strong catalog & merchandising — 11,581 SKUs, denim hero category correctly prioritized, "Explore Our Denim Fits" concept (when filtering works), 50–65% discounting. (business-analysis §12; homepage §3)
- Concrete sustainability/Foundation trust content on Our-Story (seed tags, recycled denim, YODA). (support §1)
- Technical SEO baseline solid — robots, sitemaps, canonical, HTTPS, schema present. (web-quality §3)
- Blog shoppability — 49 internal shop/collection links on the index. (support §2)
7. Prioritized Execution Plan
🔴 Now (Week 1–2) — stop the bleeding
- CRO-01 Fix variant→
input[name=id]sync (native Shopify variant JS as fallback; restore Variant King; post-select assertion; QA all PDPs). Highest ROI/risk. - CRO-03 + CRO-04 Diagnose and fix the
initial-search-*filter/sort app; restore?f.+ sort UI. (Same root cause as CRO-01.) - CRO-15 (quick part) Add
<link rel="preload" as="image" fetchpriority="high">for the LCP hero on every template — removes ~3–6s mobile LCP. (Low effort, huge impact.) - CRO-23 Fix the footer WhatsApp i18n string site-wide.
🟠 30 days — trust & mobile buy-flow
- CRO-02 Install reviews app (Judge.me/Loox) + rating schema.
- CRO-05 / CRO-06 Add Quick View + card-level ATC and a sticky mobile buy/checkout bar.
- CRO-07 / CRO-08 / CRO-09 Breadcrumbs, size guide modal, PIN delivery estimator.
- CRO-10 / CRO-11 Empty-cart recovery carousel + live cart subtotal recalc.
- CRO-12 / CRO-13 / CRO-14 FAQ/Help Center, on-page contact form, reconcile COD-refund messaging with the "Free 15-Day Returns" promo.
🟡 60–90 days — retention, polish, performance
- CRO-15 (rest) Cut app/script bloat (70 scripts), inline critical CSS, defer non-critical JS.
- CRO-18 Launch/feature a loyalty program.
- CRO-16 / CRO-17 Our-Story shop CTAs + cause cross-link on home; policy-page summaries/TOC.
- CRO-19 / CRO-20 / CRO-21 / CRO-22 Harden external apps; PDP gallery zoom/alt/swap; fix categorisation leak; fix swatch label.
- CRO-24 … CRO-32 (Minor) Cart trust badges, upsells, a11y alt fixes, Twitter Cards, blog title, personalization, redundancy cleanup, size-label standardization.
8. Per-Page Audit Index (traceability)
| Audit | File | Scope | Critical / Major findings |
|---|---|---|---|
| Homepage | pageaudit/homepage.md | 16 sections, hero, nav, footer | F1 reviews, F2 no card CTA, F3 hero alt, F4 philanthropy buried |
| PLP | pageaudit/plp.md | men-shirts, women-jeans, men-bottomwear | F2 filter dead, F3 sort blank, F1 reviews, F4 no quick view |
| PDP | pageaudit/pdp.md | denim + tee, real variant clicks | P1 wrong variant ships, P2 no reviews, P4 size guide, P6 no sticky bar |
| Cart & Checkout | pageaudit/cart-checkout.md | PDP→cart→Shopify checkout | C1 wrong variant in checkout, C2 empty-cart dead-end, C3 stale subtotal |
| Support & Utility | pageaudit/support-and-utility.md | story/contact/blog/policies/apps | S1 no FAQ, S2 no contact form, S3 COD-refund mismatch |
| Web Quality | web-quality-audit.md | perf/a11y/SEO/security | Mobile LCP 12.2s, INP 227ms, 21 empty-alt, no Twitter Cards |
| Business Analysis | business-analysis.md | company/market/device/price context | 95.6% mobile; 11,581 SKUs; no reviews/loyalty gaps |
Prepared as the master CRO synthesis for the Being Human Clothing engagement, 2 Sep 2026. All findings traceable to the source page audits listed in §8; every Critical/Major defect was verified by live DOM interaction and/or server-side checks.