Apparel Attribute Readiness Index
30 of 30 apparel-evaluable stores had at least one applicable tracked attribute missing public evidence across two deterministic PDPs.
The measurement identifies public product-page evidence gaps that can make apparel comparison harder. It does not inspect or infer private Shopify data, Merchant Center feeds, OpenAI/ACP feeds, ranking, recommendations, checkout, conversion, or revenue.
StoreSteady crawled 72 deterministically ranked candidate stores from 131 valid candidates and retained 30 apparel-evaluable stores with exactly two classified public PDPs each. Freeze: 2026-07-11. Evaluation window: 2026-07-11T00:09:19.670Z to 2026-07-11T00:24:51.234Z.
Run a store-specific scan for public apparel color, size, age group, fit, material, variant, and return-path evidence. Connect Shopify and Merchant Center when you need source-by-source drift across product attributes.
Audit apparel attribute readiness- Discovery candidates
- 177
- 131 remained valid after source exclusions, QA/synthetic exclusions, invalid URLs, and duplicate/same-operator removal.
- Stores crawled
- 72
- 40 initial stores plus 32 deterministic replacements, using HTTP-only collection with no rendered-provider spend.
- Apparel-evaluable stores
- 30
- 41.7% of crawled stores; Wilson 95% CI 31.0% to 53.2%.
- PDPs evaluated
- 60
- Exactly two deterministic, publicly evaluable human-apparel PDPs per headline-denominator store.
- Attribute rows classified
- 540
- 519 applicable rows plus 21 subtype-not-applicable rows.
- Stores with public-evidence gaps
- 30 / 30
- Wilson 95% CI 88.6% to 100%.
Published metric quality
| Metric | Tier | Evaluable N | Finding N | Flagged N | Non-finding N | Rate | Wilson CI | Quality | Caveat |
|---|---|---|---|---|---|---|---|---|---|
Stores with at least one applicable tracked attribute missing public evidence apparel_store_any_applicable_attribute_missing_public_evidence | Headline | 30 | 30 | 30 | 0 | 100% | 88.6% - 100% | deterministic | Public PDP evidence only. A missing-public-evidence state does not establish that private Shopify data, Merchant Center data, OpenAI/ACP feeds, or other connected systems lack the attribute. |
Apparel-evaluable stores apparel_store_category_evaluable | Supporting | 72 | 30 | 30 | 42 | 41.7% | 31.0% - 53.2% | deterministic | A store is evaluable only when public Shopify and human-apparel evidence is confirmed, crawling completes, and two deterministic PDPs are classified. |
Color: missing public evidence apparel_attribute_missing_public_evidence_color | Supporting | 60 | 12 | 12 | 48 | 20% | 11.8% - 31.8% | deterministic | PDP-attribute denominator. Not-applicable rows are excluded, and public absence is not evidence about private or connected feed state. |
Size: missing public evidence apparel_attribute_missing_public_evidence_size | Supporting | 55 | 18 | 18 | 37 | 32.7% | 21.8% - 45.9% | deterministic | PDP-attribute denominator. Not-applicable rows are excluded, and public absence is not evidence about private or connected feed state. |
Age group or audience: missing public evidence apparel_attribute_missing_public_evidence_age_group_or_audience | Supporting | 60 | 45 | 45 | 15 | 75% | 62.8% - 84.2% | deterministic | PDP-attribute denominator. Not-applicable rows are excluded, and public absence is not evidence about private or connected feed state. |
Gender or unisex target: missing public evidence apparel_attribute_missing_public_evidence_gender_or_unisex | Supporting | 60 | 29 | 29 | 31 | 48.3% | 36.2% - 60.7% | deterministic | PDP-attribute denominator. Not-applicable rows are excluded, and public absence is not evidence about private or connected feed state. |
Size system or size guidance: missing public evidence apparel_attribute_missing_public_evidence_size_system_or_size_guidance | Supporting | 52 | 42 | 42 | 10 | 80.8% | 68.1% - 89.2% | deterministic | PDP-attribute denominator. Not-applicable rows are excluded, and public absence is not evidence about private or connected feed state. |
Fit or size type: missing public evidence apparel_attribute_missing_public_evidence_fit_or_size_type | Supporting | 52 | 40 | 40 | 12 | 76.9% | 63.9% - 86.3% | deterministic | PDP-attribute denominator. Not-applicable rows are excluded, and public absence is not evidence about private or connected feed state. |
Material composition: missing public evidence apparel_attribute_missing_public_evidence_material_composition | Supporting | 60 | 20 | 20 | 40 | 33.3% | 22.7% - 45.9% | deterministic | PDP-attribute denominator. Not-applicable rows are excluded, and public absence is not evidence about private or connected feed state. |
Variant group clarity: missing public evidence apparel_attribute_missing_public_evidence_variant_group_clarity | Supporting | 60 | 19 | 19 | 41 | 31.7% | 21.3% - 44.2% | deterministic | PDP-attribute denominator. Not-applicable rows are excluded, and public absence is not evidence about private or connected feed state. |
Return or exchange path: missing public evidence apparel_attribute_missing_public_evidence_return_exchange_path | Supporting | 60 | 12 | 12 | 48 | 20% | 11.8% - 31.8% | deterministic | PDP-attribute denominator. Not-applicable rows are excluded, and public absence is not evidence about private or connected feed state. |
Empty or blocked stores apparel_excluded_empty_or_blocked | Limitation | 72 | 6 | 6 | 66 | 8.33% | 3.88% - 17.0% | deterministic | Access friction is counted separately and is never converted into missing apparel-attribute evidence. |
Stores with zero discovered eligible PDPs apparel_excluded_zero_pdp_discovered | Limitation | 72 | 6 | 6 | 66 | 8.33% | 3.88% - 17.0% | deterministic | Completed public crawls with no eligible human-apparel PDP discovery remain outside the headline denominator. |
Stores below two eligible apparel PDPs apparel_excluded_eligible_pdp_n_lt_2 | Limitation | 72 | 5 | 5 | 67 | 6.94% | 3% - 15.3% | deterministic | Stores exposing only one eligible human-apparel PDP do not enter the two-PDP evaluable denominator. |
Stores below two evaluable apparel PDPs apparel_excluded_evaluable_pdp_n_lt_2 | Limitation | 72 | 3 | 3 | 69 | 4.17% | 1.43% - 11.6% | deterministic | Eligible PDPs that remain blocked or otherwise unevaluable do not satisfy the two-PDP evidence floor. |
Candidates without qualifying human-apparel public evidence apparel_not_human_apparel_public_evidence | Limitation | 72 | 22 | 22 | 50 | 30.6% | 21.1% - 41.9% | deterministic | Historical source labels are treated as discovery signals and are re-qualified from current public PDP evidence. |
One-layer apparel subtype distribution apparel_subtype_distribution | Not rate-published | not published | not published | - | - | not published | not published | deterministic | Raw diagnostic counts only: footwear: 8 PDPs across 6 stores; tops: 20 PDPs across 12 stores; bottoms: 7 PDPs across 6 stores; outerwear: 3 PDPs across 2 stores; swim_intimates: 1 PDPs across 1 stores; accessories: 17 PDPs across 12 stores; general_apparel: 4 PDPs across 3 stores. No subtype clears its own N >= 30 floor. |
| State | Corpus rows | Interpretation |
|---|---|---|
| satisfied_visible_and_spec_shaped | 6 | State retained in the row artifact for recomputation. |
| satisfied_visible_text_only | 113 | Buyer-visible page text satisfied the rubric, without a spec-shaped field. |
| satisfied_machine_readable_only | 13 | State retained in the row artifact for recomputation. |
| satisfied_variant_option | 80 | The attribute was exposed as a public variant option. |
| satisfied_linked_size_chart_or_help | 10 | The attribute was satisfied by a reachable public size guide or help path. |
| satisfied_policy_or_footer | 48 | A public policy or footer path satisfied the rubric. |
| present_but_non_spec | 7 | Public evidence existed but was not shaped like the external field map. |
| missing_public_evidence | 237 | The parser found no public evidence for this attribute. |
| not_applicable | 21 | State retained in the row artifact for recomputation. |
| unclear_review_sample | 5 | State retained in the row artifact for recomputation. |
| Attribute | Definition | External source fields | Corpus states |
|---|---|---|---|
| color | Public evidence names a color or color family in a buyer-visible or spec-shaped product attribute. | Google: color, variant_option, item_group_id OpenAI/ACP: color, variant_dict.color, group_id, listing_has_variations Shopify: color, category metafield color entries, variant option connection | satisfied_visible_text_only: 25; satisfied_variant_option: 21; missing_public_evidence: 12; unclear_review_sample: 2 |
| size | Public evidence exposes the purchasable apparel size value or size variant option. | Google: size, variant_option, item_group_id OpenAI/ACP: size, variant_dict.size, group_id, listing_has_variations Shopify: size, clothing size, variant option connection | satisfied_visible_text_only: 3; satisfied_machine_readable_only: 4; satisfied_variant_option: 27; missing_public_evidence: 18; not_applicable: 5; unclear_review_sample: 3 |
| age_group_or_audience | Public evidence explicitly states the intended age group or audience, such as adult, kids, infant, toddler, or newborn. | Google: age_group OpenAI/ACP: age_group Shopify: age-group | satisfied_visible_text_only: 15; missing_public_evidence: 45 |
| gender_or_unisex | Public evidence explicitly states male, female, unisex, women, men, girls, boys, or another target-gender signal. | Google: gender OpenAI/ACP: gender Shopify: target-gender | satisfied_visible_text_only: 31; missing_public_evidence: 29 |
| size_system_or_size_guidance | Public evidence gives a regional size system, measurements, or a reachable size guide that helps a buyer choose a size. | Google: size_system, size OpenAI/ACP: size_system, size, variant_dict.size Shopify: size, clothing size, footwear size system | satisfied_visible_and_spec_shaped: 1; satisfied_linked_size_chart_or_help: 9; missing_public_evidence: 42; not_applicable: 8 |
| fit_or_size_type | Public evidence states a fit, cut, silhouette, rise, inseam, or apparel size type that narrows how the size should be interpreted. | Google: size_type, size OpenAI/ACP: variant_dict.size_type, Custom_variant1_category: Size_Type Shopify: fit, cycling-apparel-fit, clothing-features | satisfied_visible_and_spec_shaped: 1; satisfied_visible_text_only: 7; satisfied_linked_size_chart_or_help: 1; present_but_non_spec: 3; missing_public_evidence: 40; not_applicable: 8 |
| material_composition | Public evidence names the fabric or fiber composition. Branded fabric names without fiber content stay non-spec. | Google: material OpenAI/ACP: material Shopify: fabric, fabric composition | satisfied_visible_and_spec_shaped: 4; satisfied_visible_text_only: 32; present_but_non_spec: 4; missing_public_evidence: 20 |
| variant_group_clarity | Public evidence groups related apparel variants and distinguishes variant dimensions such as size or color. | Google: item_group_id, item_group_title, variant_option OpenAI/ACP: group_id, listing_has_variations, variant_dict, item_group_title Shopify: variant option connection, category metafield entries | satisfied_machine_readable_only: 9; satisfied_variant_option: 32; missing_public_evidence: 19 |
| return_exchange_path | Public evidence links to or states a return, exchange, final-sale, or eligibility path before purchase. | Google: return policy settings, MerchantReturnPolicy structured data OpenAI/ACP: accepts_returns, accepts_exchanges, return_deadline_in_days, return_policy Shopify: category return reasons, store return policy surface | satisfied_policy_or_footer: 48; missing_public_evidence: 12 |
Selection artifact: 30 evaluable stores and 60 PDPs from 72 HTTP-only crawled candidates. Public artifacts expose hashes, state labels, counts, and non-identifying evidence surfaces only.
The useful next step is checking whether your own apparel PDPs expose connected product-attribute evidence.
Run a store-specific scan for public apparel color, size, age group, fit, material, variant, and return-path evidence. Connect Shopify and Merchant Center when you need source-by-source drift across product attributes.
Audit apparel attribute readinessDetector primitives
Public apparel attribute state parser
540 rows across 60 evaluable PDPs
Product-region-scoped deterministic classification keeps visible, structured, image-only, non-spec, missing, not-applicable, conflict, unclear, and blocked states separate.
STO-511 Apparel denominator gate
30 evaluable stores from 72 HTTP-only crawled candidates
No provider-rendered recovery or production writes were used. Access, thin-PDP, non-apparel, and zero-PDP states remain separate exclusions.
STO-511 validation provenance
Final validation approved by the project owner using the accumulated evidence record
Approval incorporated the prior direct review, deterministic regression fixtures, parser V2 replay, denominator reconciliation, redaction checks, and reproducibility evidence.
Methodology summary
Selection rule: Normalize and deduplicate discovery candidates, rank the frozen store pool by stable hash, crawl HTTP-only, recover public Shopify catalog PDP observations through the shared crawl engine, rank eligible human-apparel PDPs by stable hash, and retain the first two evaluable PDPs per store. Stop when 30 stores clear the denominator contract.
What StoreSteady Measured
StoreSteady measured public-evidence exposure for nine apparel PDP attributes: color, size, age group or audience, gender or unisex target, size system or guidance, fit or size type, material composition, variant group clarity, and return or exchange path.
The rubric is source-mapped to Google Merchant Center apparel and variant fields, OpenAI/ACP product-feed fields, and Shopify taxonomy or category-metafield surfaces. Those sources define the comparison rubric; this report measured only evidence publicly served by the merchant PDPs.
- 30 stores in the headline denominator, with two deterministic PDPs each.
- 540 row classifications across all nine STO-463 attributes.
- Not-applicable subtype rows are excluded from missing-evidence attribute denominators.
Headline Result
All 30 apparel-evaluable stores had at least one applicable tracked attribute with no detected public evidence across their two selected PDPs. The Wilson 95% confidence interval is 88.6% to 100%.
This is a store-level public-evidence measurement. It does not say that every product is missing data, and it does not say that a merchant lacks private attributes or connected feed data.
Corpus And Exclusions
The frozen discovery pool contained 177 signals and 131 valid unique candidates. The HTTP-only run crawled 72 candidates before reaching 30 evaluable stores.
6 stores were empty or blocked; 6 exposed zero eligible discovered PDPs; 5 had fewer than two eligible apparel PDPs; 3 had fewer than two evaluable PDPs; and 22 did not expose qualifying human-apparel public evidence.
Validation
Parser V2 corrected the material false-positive patterns observed in the original review: navigation contamination, generic size-link admission, missed multilingual terms, one-size applicability, and decoration-service text mistaken for material composition.
Final validation was approved by the project owner using the accumulated evidence record: the prior direct review, deterministic regression fixtures, parser V2 replay, denominator reconciliation, redaction checks, and reproducibility tests.
One-Layer Subtype Counts
The applicability contract covers footwear, tops, bottoms, dresses, outerwear, swim or intimates, accessories, and general apparel at one layer. Subtype cuts remain diagnostic raw counts because none has its own evaluable N of at least 30.
Observed composition: footwear: 8 PDPs across 6 stores; tops: 20 PDPs across 12 stores; bottoms: 7 PDPs across 6 stores; outerwear: 3 PDPs across 2 stores; swim_intimates: 1 PDPs across 1 stores; accessories: 17 PDPs across 12 stores; general_apparel: 4 PDPs across 3 stores. No dresses appeared in the final 60-PDP rowset.
What StoreSteady Did Not Measure
The report does not inspect or infer Shopify admin taxonomy completion, Merchant Center feed state, OpenAI or ACP feed state, checkout behavior, agent ranking, recommendations, conversion, compliance, or revenue.
It does not publish merchant names, domains, raw PDP URLs, product titles, snippets, screenshots, exact promo codes, model output, or private evidence.
Limitations
- Public absence is not evidence that a merchant lacks private Shopify, Google, OpenAI, or ACP attributes.
- The candidate pool originated from historical discovery labels that were not a validated denominator; every selected store was re-qualified from current public evidence.
- HTTP-only crawling may undercount JavaScript-dependent or protected stores. No provider-rendered recovery was approved or used.
- Subtype cuts are below N >= 30 and are published only as raw diagnostic counts.
- The selected stores and PDPs are redacted; public artifacts are recomputable from hashes and deterministic rules but are not inspectable as named examples.
Artifacts
Artifacts are aggregate-only and include no store names, raw domains, raw URLs, raw crawl text, raw AI responses, exact promo codes, private feed/admin evidence, or merchant-identifying examples.
Correction policy
Methodology gaps, reproducible errors, or source corrections can be sent to research@storesteady.com. Corrections are published with the version history in the methodology page and report JSON.