Optimization Guide

Shopify Footwear & Shoes Schema — Size Systems (US/EU/UK/CM), Width, Sole Technology & ASTM Safety Certification Structured Data

AI shopping agents handling queries like "wide-width men's running shoes EU 44," "waterproof Gore-Tex hiking boots women's size 8," "ASTM F2412 steel toe work boots size 11 medium," or "vegan canvas sneakers slip-on EU 42" need machine-readable shoe size systems, width, closure type, and material data to match those requests to your catalog. Shopify's default JSON-LD outputs name and price only — the absence of size system mapping, width enumeration, and sole technology means every filter-based footwear query is unmatched. Footwear is among the highest-return-rate categories in e-commerce precisely because size and fit are invisible in unstructured data; structured data solves both the discovery problem and, indirectly, the fit-mismatch return problem by surfacing the correct variant. This guide shows exactly how to implement schema.org SizeSpecification, WearableSizeSystemEnumeration, hasCertification for ASTM F2412, and a full footwear.* metafield Liquid template for the Dawn theme.

TL;DR Use ProductGroup with hasVariant and variesBy: "SizeSpecification". Each variant carries a SizeSpecification declaring sizeSystem (WearableSizeSystemUS / EU / UK), sizeGroup (WearableSizeGroupMens / WearableSizeGroupWomens), and equivalent sizes in other systems as additionalProperty. Width goes in additionalProperty propertyID: "shoeWidth" — critical because "size 10" without width is ambiguous. ASTM F2412 safety certification uses hasCertification. Gore-Tex waterproofing uses additionalProperty propertyID: "waterproofRating" with value "Waterproof" (not "Water-Resistant" — AI agents treat these as distinct filter buckets). Drive all 15 fields from a footwear.* metafield namespace in Liquid.

Why Footwear Is Invisible to AI Size-Filter Queries

Footwear is the apparel subcategory with the most complex size vocabulary. A single shoe exists in US men's sizing, US women's sizing, EU sizing, UK sizing, Japanese (CM) sizing, and foot-length-in-centimeters — five separate numerical systems, none of which map to each other linearly. Width adds another dimension: US men's D is standard, 2E is wide, 4E is extra-wide, while US women's B is standard, D is wide, 2E is extra-wide. AI agents answering international size queries must normalize across all of these simultaneously.

Shopify stores shoe size as a variant option string — "US 10 / Wide" or "EU 44" or simply "10". This string lives in the variant title and is not emitted in Shopify's default Product JSON-LD as any structured property. The agent reading your schema sees only the product name (which may or may not contain the size) and the price. When the agent applies a filter for "EU 44 wide-width running shoes," your US 10 2E listing is silently excluded — not because it doesn't match, but because there is no machine-readable mapping between "US 10 2E" and "EU 44 wide."

The fix is a ProductGroup with per-variant SizeSpecification, supplemented by additionalProperty entries for each equivalent size system and for width. This page covers the complete schema pattern for three footwear archetypes — running shoes with multi-system sizing, steel-toe work boots with ASTM certification, and waterproof hiking boots with Gore-Tex structured data — plus a Shopify Liquid implementation template and a reference for width codes and size conversions. For the foundational ProductGroup pattern, see our ProductGroup variant schema guide.

Footwear AI query types requiring structured data

Query type Example query Required schema signal Missing from Shopify default
International size filter "men's running shoes EU 44" sizeSystem: WearableSizeSystemEU + name: "44" Yes — no SizeSpecification in default JSON-LD
Width filter "wide-width shoes US 10" additionalProperty: shoeWidth: "2E / Wide" Yes — width is not a schema.org variant property
Safety certification "ASTM F2412 steel toe work boots" hasCertification: ASTM F2412 Yes — no hasCertification in default JSON-LD
Waterproof technology "Gore-Tex waterproof hiking boots" additionalProperty: waterproofTechnology: "Gore-Tex" Yes — no waterproof properties in default JSON-LD
Material + gender "vegan women's sneakers slip-on" upperMaterial: "Canvas" + closureType: "Slip-On" Yes — no material or closure data in default JSON-LD
Sole technology "EVA foam midsole trail runners" additionalProperty: soleTechnology: "EVA foam midsole" Yes — no sole technology field in default JSON-LD

Section 1: Running Shoe ProductGroup with US/EU/UK/CM Size Systems

The canonical pattern for footwear with multiple size variants: a ProductGroup declaring variesBy: "SizeSpecification", with each size as a child variant Product. Each variant's Offer carries a size property pointing to a SizeSpecification that names the EU size as primary (many running shoe brands use EU as primary), declares the size system, and includes equivalent US, UK, and CM measurements as additionalProperty entries.

Width is declared on the variant's additionalProperty array — not inside the SizeSpecification — because width is a separate fit dimension, not part of the size system itself. The width code uses the US men's letter system (D = Standard, 2E = Wide, 4E = Extra-Wide) with a descriptive label because AI agents processing "wide" queries match against the human-readable value, not the opaque letter code alone.

{
  "@context": "https://schema.org",
  "@type": "ProductGroup",
  "name": "NovaPace Cloudstride Running Shoe — Men's",
  "description": "Neutral daily trainer with EVA foam midsole, mesh upper, and non-marking rubber outsole. Available in standard (D) and wide (2E) widths. Men's US/EU/UK sizing.",
  "brand": {
    "@type": "Brand",
    "name": "NovaPace"
  },
  "productGroupID": "CLOUDSTRIDE-MENS",
  "variesBy": ["https://schema.org/size"],
  "hasVariant": [
    {
      "@type": "Product",
      "name": "NovaPace Cloudstride Running Shoe — Men's — EU 42 / US 9 / Medium",
      "sku": "NPC-MENS-EU42-D",
      "gtin14": "00123456789012",
      "offers": {
        "@type": "Offer",
        "price": "129.00",
        "priceCurrency": "USD",
        "availability": "https://schema.org/InStock",
        "itemCondition": "https://schema.org/NewCondition",
        "size": {
          "@type": "SizeSpecification",
          "name": "EU 42",
          "sizeSystem": "https://schema.org/WearableSizeSystemEU",
          "sizeGroup": "https://schema.org/WearableSizeGroupMens",
          "suggestedGender": "Male"
        }
      },
      "additionalProperty": [
        {
          "@type": "PropertyValue",
          "propertyID": "sizeUS",
          "name": "US Size",
          "value": "9"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "sizeEU",
          "name": "EU Size",
          "value": "42"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "sizeUK",
          "name": "UK Size",
          "value": "8"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "sizeCM",
          "name": "Foot Length (CM)",
          "value": "27",
          "unitCode": "CMT",
          "unitText": "cm",
          "description": "Foot length in centimeters — the universal sizing reference"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "shoeWidth",
          "name": "Width",
          "value": "D / Medium / Standard",
          "description": "US Men's width scale: B=Narrow, D=Standard/Medium, 2E=Wide, 4E=Extra-Wide. D width is the standard/default width for men's footwear."
        },
        {
          "@type": "PropertyValue",
          "propertyID": "closureType",
          "name": "Closure Type",
          "value": "Lace-Up"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "upperMaterial",
          "name": "Upper Material",
          "value": "Engineered Mesh",
          "description": "Breathable single-layer engineered mesh with TPU overlays at toe box and heel counter"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "soleMaterial",
          "name": "Sole Material",
          "value": "Carbon rubber outsole with EVA foam midsole"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "soleTechnology",
          "name": "Sole Technology",
          "value": "EVA foam midsole + non-marking carbon rubber outsole",
          "description": "22mm heel / 14mm forefoot stack height EVA foam midsole for daily training cushioning. Non-marking carbon rubber outsole for road and treadmill durability."
        },
        {
          "@type": "PropertyValue",
          "propertyID": "stackHeight",
          "name": "Heel Stack Height",
          "value": "22",
          "unitCode": "MMT",
          "unitText": "mm",
          "description": "Heel stack height (midsole + outsole). Forefoot stack: 14mm. Heel-to-toe drop: 8mm."
        }
      ]
    },
    {
      "@type": "Product",
      "name": "NovaPace Cloudstride Running Shoe — Men's — EU 43 / US 10 / Medium",
      "sku": "NPC-MENS-EU43-D",
      "gtin14": "00123456789013",
      "offers": {
        "@type": "Offer",
        "price": "129.00",
        "priceCurrency": "USD",
        "availability": "https://schema.org/InStock",
        "itemCondition": "https://schema.org/NewCondition",
        "size": {
          "@type": "SizeSpecification",
          "name": "EU 43",
          "sizeSystem": "https://schema.org/WearableSizeSystemEU",
          "sizeGroup": "https://schema.org/WearableSizeGroupMens",
          "suggestedGender": "Male"
        }
      },
      "additionalProperty": [
        {
          "@type": "PropertyValue",
          "propertyID": "sizeUS",
          "name": "US Size",
          "value": "10"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "sizeEU",
          "name": "EU Size",
          "value": "43"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "sizeUK",
          "name": "UK Size",
          "value": "9"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "sizeCM",
          "name": "Foot Length (CM)",
          "value": "27.9",
          "unitCode": "CMT",
          "unitText": "cm"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "shoeWidth",
          "name": "Width",
          "value": "D / Medium / Standard",
          "description": "US Men's width scale: B=Narrow, D=Standard/Medium, 2E=Wide, 4E=Extra-Wide."
        },
        {
          "@type": "PropertyValue",
          "propertyID": "closureType",
          "name": "Closure Type",
          "value": "Lace-Up"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "upperMaterial",
          "name": "Upper Material",
          "value": "Engineered Mesh"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "soleTechnology",
          "name": "Sole Technology",
          "value": "EVA foam midsole + non-marking carbon rubber outsole"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "stackHeight",
          "name": "Heel Stack Height",
          "value": "22",
          "unitCode": "MMT",
          "unitText": "mm"
        }
      ]
    },
    {
      "@type": "Product",
      "name": "NovaPace Cloudstride Running Shoe — Men's — EU 44 / US 11 / Wide",
      "sku": "NPC-MENS-EU44-2E",
      "gtin14": "00123456789014",
      "offers": {
        "@type": "Offer",
        "price": "129.00",
        "priceCurrency": "USD",
        "availability": "https://schema.org/InStock",
        "itemCondition": "https://schema.org/NewCondition",
        "size": {
          "@type": "SizeSpecification",
          "name": "EU 44",
          "sizeSystem": "https://schema.org/WearableSizeSystemEU",
          "sizeGroup": "https://schema.org/WearableSizeGroupMens",
          "suggestedGender": "Male"
        }
      },
      "additionalProperty": [
        {
          "@type": "PropertyValue",
          "propertyID": "sizeUS",
          "name": "US Size",
          "value": "11"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "sizeEU",
          "name": "EU Size",
          "value": "44"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "sizeUK",
          "name": "UK Size",
          "value": "10"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "sizeCM",
          "name": "Foot Length (CM)",
          "value": "28.6",
          "unitCode": "CMT",
          "unitText": "cm"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "shoeWidth",
          "name": "Width",
          "value": "2E / Wide",
          "description": "US Men's 2E (Wide) width — one step wider than D Standard. Equivalent to EE in some legacy brand naming. Suitable for wide forefoot or high instep."
        },
        {
          "@type": "PropertyValue",
          "propertyID": "closureType",
          "name": "Closure Type",
          "value": "Lace-Up"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "upperMaterial",
          "name": "Upper Material",
          "value": "Engineered Mesh"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "soleTechnology",
          "name": "Sole Technology",
          "value": "EVA foam midsole + non-marking carbon rubber outsole"
        },
        {
          "@type": "PropertyValue",
          "propertyID": "stackHeight",
          "name": "Heel Stack Height",
          "value": "22",
          "unitCode": "MMT",
          "unitText": "mm"
        }
      ]
    }
  ]
}

Note that the wide-width variant (EU 44 2E) has the same SizeSpecification.name as the standard-width EU 44 variant. The differentiator for AI agents is the shoeWidth additionalProperty — "D / Medium / Standard" vs "2E / Wide." Without this distinction, an agent matching "wide EU 44 running shoes" cannot differentiate the two variants. For our foundational approach to ProductGroup and variant schema patterns, see the ProductGroup variant schema guide.

Section 2: Steel-Toe Work Boots — ASTM F2412 Certification Schema

Work boot certification is a safety-critical structured data use case. Industrial buyers sourcing PPE footwear specifically search for "ASTM F2412 I/75 C/75 EH rated work boots" or "OSHA-compliant steel toe boots size 11 medium" — these queries require machine-readable certification data, not just the word "safety" or "steel toe" in the product title. Structured hasCertification blocks are the signal AI agents use to distinguish between decorative steel-look toe caps and genuine ASTM-rated impact/compression protection.

ASTM F2412 is the test method standard (it defines the testing procedures: impact resistance, compression resistance, metatarsal protection, puncture resistance, conductive and electrical hazard). ASTM F2413 is the performance requirements standard (it defines the minimum performance levels). A compliant boot is tested to F2412 methods and meets F2413 requirements — both are relevant to buyers and should be declared separately in hasCertification.

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "IronClad Forge Pro Work Boot — Men's Steel Toe — Size 11 Medium",
  "description": "Full-grain leather work boot with ASTM F2412/F2413 steel toe (I/75 impact, C/75 compression), EH electrical hazard rating, waterproof membrane, and steel shank. OSHA 29 CFR 1910.136 compliant.",
  "brand": {
    "@type": "Brand",
    "name": "IronClad"
  },
  "sku": "IC-FORGE-11D-ST",
  "gtin14": "00987654321098",
  "offers": {
    "@type": "Offer",
    "price": "189.00",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock",
    "itemCondition": "https://schema.org/NewCondition",
    "size": {
      "@type": "SizeSpecification",
      "name": "11",
      "sizeSystem": "https://schema.org/WearableSizeSystemUS",
      "sizeGroup": "https://schema.org/WearableSizeGroupMens",
      "suggestedGender": "Male"
    }
  },
  "hasCertification": [
    {
      "@type": "Certification",
      "name": "ASTM F2412",
      "issuedBy": {
        "@type": "Organization",
        "name": "ASTM International",
        "url": "https://www.astm.org"
      },
      "certificationRating": {
        "@type": "Rating",
        "ratingValue": "I/75 C/75",
        "bestRating": "I/75 C/75"
      },
      "certificationStatus": "https://schema.org/CertificationActive",
      "description": "ASTM F2412 Standard Test Methods for Foot Protection: Impact Resistance I/75 (75 ft-lbs impact absorbed by toe box) and Compression Resistance C/75 (2,500 lbs static compression resistance)."
    },
    {
      "@type": "Certification",
      "name": "ASTM F2413",
      "issuedBy": {
        "@type": "Organization",
        "name": "ASTM International",
        "url": "https://www.astm.org"
      },
      "certificationRating": {
        "@type": "Rating",
        "ratingValue": "EH",
        "bestRating": "EH"
      },
      "certificationStatus": "https://schema.org/CertificationActive",
      "description": "ASTM F2413 Standard Specification for Performance Requirements for Protective Footwear: Electrical Hazard (EH) rated — outsole and heel resist 18,000 volts at 60Hz for one minute with no current flow exceeding 1.0 milliampere under dry conditions."
    },
    {
      "@type": "Certification",
      "name": "OSHA 29 CFR 1910.136",
      "issuedBy": {
        "@type": "Organization",
        "name": "Occupational Safety and Health Administration",
        "url": "https://www.osha.gov"
      },
      "certificationStatus": "https://schema.org/CertificationActive",
      "description": "Meets OSHA 29 CFR 1910.136 foot protection requirements for general industry — compatible with jobsites mandating ANSI/ASTM protective footwear."
    }
  ],
  "additionalProperty": [
    {
      "@type": "PropertyValue",
      "propertyID": "sizeUS",
      "name": "US Size",
      "value": "11"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "sizeEU",
      "name": "EU Size",
      "value": "44.5"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "shoeWidth",
      "name": "Width",
      "value": "D / Medium / Standard",
      "description": "US Men's D width (Standard/Medium). Also available in EE (2E Wide) — see separate listing."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "safetyToeType",
      "name": "Safety Toe Type",
      "value": "Steel",
      "description": "Steel toe cap. Heavier than composite or alloy alternatives; conducts temperature. Not airport-friendly (triggers metal detectors). Meets ASTM F2413 I/75 C/75."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "toeBoxImpactRating",
      "name": "Toe Box Impact Rating",
      "value": "I/75",
      "description": "75 ft-lbs (101.7 J) impact energy absorbed per ASTM F2412 impact test. The toe box deflects no more than the clearance specified in F2413 after impact."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "compressionResistance",
      "name": "Compression Resistance",
      "value": "C/75",
      "description": "2,500 lbs (11,120 N) static compression resistance per ASTM F2412 compression test. Toe box maintains minimum clearance under full 2,500 lb load."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "shankMaterial",
      "name": "Shank Material",
      "value": "Steel shank",
      "description": "Full-length steel shank for torsional rigidity and arch support on uneven terrain. Composite shank variant not available in this model."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "metatarsalGuard",
      "name": "Metatarsal Guard",
      "value": "false",
      "description": "No external metatarsal guard. For M/75 metatarsal protection (ASTM F2413), see the IronClad Forge Pro MT model."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "punctureResistance",
      "name": "Puncture Resistance",
      "value": "PR",
      "description": "ASTM F2412 puncture resistance (PR) rated — steel puncture plate embedded in midsole. Withstands 270 lbs (1,201 N) penetration force per F2412 Section 12."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "electricalHazardRating",
      "name": "Electrical Hazard Rating",
      "value": "EH",
      "description": "ASTM F2413 Electrical Hazard (EH) designation. Rated for secondary electrical hazard protection only — not for primary electrical protection. Wear appropriate PPE for primary electrical work."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "chemicalResistance",
      "name": "Chemical Resistance",
      "value": "Oil and slip resistant outsole",
      "description": "ASTM F2913 slip resistance tested on wet and contaminated surfaces. Oil-resistant rubber compound outsole. Not rated for chemical immersion."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "waterproofRating",
      "name": "Waterproof Rating",
      "value": "Waterproof",
      "description": "Full-grain leather upper with waterproof membrane — not water-resistant, fully submersible to 3 inches (7.6cm) for 60 minutes per internal test protocol. Seam-sealed construction."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "upperMaterial",
      "name": "Upper Material",
      "value": "Full-grain leather with waterproof membrane",
      "description": "2.0–2.2mm full-grain leather upper bonded to waterproof breathable membrane. Leather is chrome-free tanned."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "closureType",
      "name": "Closure Type",
      "value": "Lace-Up",
      "description": "Waxed cotton speed-lace system with hook-and-loop top eyelet for secure ankle lockdown."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "soleTechnology",
      "name": "Sole Technology",
      "value": "Polyurethane midsole + oil-resistant rubber outsole",
      "description": "Dual-density PU midsole for all-day comfort on concrete. Carbon rubber outsole with lug pattern for grip on wet and contaminated surfaces."
    }
  ]
}

The separation between ASTM F2412 (test methods) and ASTM F2413 (performance requirements) matters to industrial buyers. Searching for "F2413 EH rated" specifically means the buyer wants the performance standard number, not just the test method. Declaring both as separate hasCertification objects ensures the product surfaces for queries using either standard number. For work boot PPE categories, also consider our outdoor sporting goods schema guide for adjacent certification patterns (EN ISO 20345, CSA Z195).

Section 3: Waterproof Hiking Boot — Gore-Tex and Waterproof Schema

Waterproof footwear queries split into two categories that AI agents handle differently: "waterproof" (fully impermeable construction rated for sustained exposure) and "water-resistant" (DWR-treated uppers that bead water in light rain but saturate in sustained precipitation). These are not synonymous — a buyer searching "waterproof hiking boots" is explicitly filtering out water-resistant products. Your additionalProperty waterproofRating value must use the exact term the buyer is filtering against: "Waterproof" or "Water-Resistant", not "Hydro-Shield" or "AquaDry" (proprietary names that AI agents cannot normalize).

Gore-Tex is the most recognizable waterproof membrane brand in footwear. Declaring waterproofTechnology: "Gore-Tex Extended Comfort" (or "Gore-Tex Surround", "Gore-Tex Performance Comfort") in additionalProperty gives AI agents the brand-level signal for queries like "Gore-Tex trail runners women's size 8" while the generic waterproofRating: "Waterproof" catches the category-level queries. Declare both — they serve different query intents.

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "TrailEdge Summit GTX Hiking Boot — Women's — Size 8 Medium",
  "description": "Mid-cut waterproof hiking boot with Gore-Tex Extended Comfort lining, full-grain leather upper, Vibram Megagrip outsole, and EVA midsole. Women's sizing. Bluesign certified materials.",
  "brand": {
    "@type": "Brand",
    "name": "TrailEdge"
  },
  "sku": "TE-SUMMIT-GTX-W8-M",
  "offers": {
    "@type": "Offer",
    "price": "229.00",
    "priceCurrency": "USD",
    "availability": "https://schema.org/InStock",
    "itemCondition": "https://schema.org/NewCondition",
    "size": {
      "@type": "SizeSpecification",
      "name": "8",
      "sizeSystem": "https://schema.org/WearableSizeSystemUS",
      "sizeGroup": "https://schema.org/WearableSizeGroupWomens",
      "suggestedGender": "Female"
    }
  },
  "hasCertification": [
    {
      "@type": "Certification",
      "name": "bluesign",
      "issuedBy": {
        "@type": "Organization",
        "name": "bluesign technologies ag",
        "url": "https://www.bluesign.com"
      },
      "certificationStatus": "https://schema.org/CertificationActive",
      "description": "bluesign system partner certification for textile supply chain. Fabrics and chemical inputs meet bluesign BLUEFINDER standards for restricted substances, resource efficiency, and worker safety."
    }
  ],
  "additionalProperty": [
    {
      "@type": "PropertyValue",
      "propertyID": "sizeUS",
      "name": "US Women's Size",
      "value": "8"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "sizeEU",
      "name": "EU Size",
      "value": "39"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "sizeUK",
      "name": "UK Size",
      "value": "6"
    },
    {
      "@type": "PropertyValue",
      "propertyID": "sizeCM",
      "name": "Foot Length (CM)",
      "value": "25.4",
      "unitCode": "CMT",
      "unitText": "cm",
      "description": "Foot length in centimeters corresponding to US Women's 8 / EU 39 / UK 6."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "shoeWidth",
      "name": "Width",
      "value": "B / Medium / Standard",
      "description": "US Women's B width (Standard/Medium). US Women's width scale: AAA=Extra-Narrow, AA=Narrow, A=Narrow, B=Standard, D=Wide, 2E=Extra-Wide."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "waterproofRating",
      "name": "Waterproof Rating",
      "value": "Waterproof",
      "description": "Full waterproof construction — Gore-Tex Extended Comfort membrane is fully bonded to the upper. Not water-resistant; rated for sustained rain and shallow stream crossings."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "waterproofTechnology",
      "name": "Waterproof Technology",
      "value": "Gore-Tex Extended Comfort",
      "description": "W.L. Gore & Associates Gore-Tex Extended Comfort footwear lining. Optimized for high-output hiking with enhanced moisture vapor transmission while maintaining full waterproofing."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "waterColumnRating",
      "name": "Water Column Rating",
      "value": "28000",
      "unitCode": "MMT",
      "unitText": "mm",
      "description": "28,000mm water column resistance — fully waterproof in sustained rain, stream crossings, and wet snow. Tested per ISO 811 hydrostatic pressure method."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "breathability",
      "name": "Breathability",
      "value": "RET < 6",
      "description": "Moisture Vapor Transmission Rate (MVTR): greater than 20,000 g/m²/24h. Resistance to Evaporative Transfer (RET) less than 6 — classified 'very breathable' per ISO 11092. Gore-Tex Extended Comfort grade for sustained aerobic output."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "upperMaterial",
      "name": "Upper Material",
      "value": "Full-grain leather + Gore-Tex Extended Comfort membrane",
      "description": "1.8–2.0mm chrome-free full-grain leather with nubuck heel and toe cap reinforcement. Gore-Tex bootie construction — not just a liner, but a sock-shaped waterproof bootie sealed at the collar."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "midsole",
      "name": "Midsole Material",
      "value": "Dual-density EVA",
      "description": "High-density EVA heel plug bonded to medium-density EVA forefoot for stability underfoot on uneven terrain."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "outsoleBrand",
      "name": "Outsole Brand",
      "value": "Vibram Megagrip",
      "description": "Vibram Megagrip compound outsole with 4mm multi-directional lug pattern. Megagrip compound rated for high friction on wet rock, mud, and loose trail surfaces."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "lugDepth",
      "name": "Lug Depth",
      "value": "4",
      "unitCode": "MMT",
      "unitText": "mm",
      "description": "4mm multi-directional lug depth for mud evacuation and grip on soft trail surfaces."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "ankleCut",
      "name": "Ankle Support",
      "value": "Mid-cut",
      "description": "Mid-cut collar at ankle height — above the ankle bone for lateral support on uneven terrain, without the restriction of a full high-cut boot."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "activity",
      "name": "Suggested Activity",
      "value": "Hiking, Backpacking, Trekking",
      "description": "Designed for day hiking and multi-day backpacking on maintained and unmaintained trail. Not rated for technical mountaineering (no crampon compatibility notch)."
    },
    {
      "@type": "PropertyValue",
      "propertyID": "closureType",
      "name": "Closure Type",
      "value": "Lace-Up",
      "description": "Traditional round lace with speed hooks from mid-boot to collar for precise fit adjustment."
    }
  ]
}

The distinction between waterproofRating: "Waterproof" and waterproofRating: "Water-Resistant" is the most commercially important waterproofing signal in footwear schema. An AI agent answering "waterproof hiking boots women's" will exclude any product with a water-resistant declaration or no declaration at all. The same logic applies to the waterproofTechnology value — declare the membrane brand name exactly as the manufacturer licenses it ("Gore-Tex Extended Comfort", not "GTX" or "Gore-Tex® Extended Comfort") because AI agents match the proprietary name against user queries like "boots with Gore-Tex lining."

Section 4: Shoe Width Reference Table

Shoe width is the single most mishandled attribute in footwear structured data. The US letter width system uses different letters for men's and women's standard widths — a men's D is standard/medium, but a women's D is wide. An AI agent without the gender context misattributes width queries, surfacing men's D as "standard" for a women's "standard" query and missing the D-width products that women's buyers actually need.

The table below covers the full US width code system for both men's and women's sizing. Declare both the letter code and the human-readable label in your additionalProperty shoeWidth value — e.g., "2E / Wide" not just "2E" — because AI agents match against the label. Include the gender context in the description field so agents can correctly interpret letter codes across gender groups.

Width Label US Men's Code US Women's Code Description
Extra Extra Narrow AAAA AAAA Rarely stocked; special order in most brands. Less than 3.0" ball circumference (men's size 10 reference).
Extra Narrow AAA AAA Very narrow — stocked by specialty brands. Approximately 3.2" ball circumference (size 10 reference).
Narrow AA or B AA or A Men's AA or B = narrow. Women's AA or A = narrow. Men's B is narrow; women's B is standard — this is a common AI agent error.
Standard / Medium D (also called M or Medium) B (also called M or Medium) Most common width. Men's D = standard; Women's B = standard. An AI agent treating both as the same letter would misclassify width for one gender.
Wide 2E (also EE) D (also called W) Men's 2E / women's D = wide. Note that women's D (Wide) and men's D (Standard) share the same letter but mean different widths — gender context is essential.
Extra Wide 4E (also EEEE) 2E (also EE) Men's 4E / women's 2E = extra wide. Common for orthopedic and diabetic footwear.
Double Extra Wide 6E 4E Men's 6E / women's 4E = double extra wide. Limited availability; specialty orthopedic brands.

The recommended additionalProperty value format is: "[Letter Code] / [Human Label]", for example "D / Medium / Standard" for men's standard or "2E / Wide" for men's wide. Always include the description field with the gender-contexted explanation of the letter scale. AI agents that encounter only "D" in a men's product will correctly infer standard width; but "D" in a women's product means wide — the description prevents this misclassification.

Section 5: Size System Conversion Table (US/EU/UK/CM/JP)

When a buyer queries "running shoes EU 44," your product listing with a US 10 size needs a machine-readable mapping between US 10 and EU 44 for the agent to make the connection. The SizeSpecification alone declares one system; additionalProperty entries for sizeEU, sizeUK, and sizeCM provide the cross-system signals. The table below shows the men's conversion reference for common sizes — use it to populate your variant metafields.

The WearableSizeSystemEnumeration URL pattern follows the format https://schema.org/WearableSizeSystem[System] — for example https://schema.org/WearableSizeSystemEU for EU sizing. Do not use abbreviated forms or numeric codes — schema.org requires the full enumeration URL. The WearableSizeGroupEnumeration follows the same pattern: https://schema.org/WearableSizeGroupMens, https://schema.org/WearableSizeGroupWomens.

US Men's EU UK Men's CM (Foot Length) JP (cm)
7 40 6 25.0 25.0
7.5 40–41 6.5 25.4 25.5
8 41 7 25.9 26.0
8.5 41–42 7.5 26.2 26.5
9 42 8 27.0 27.0
9.5 43 8.5 27.3 27.5
10 43–44 9 27.9 28.0
10.5 44 9.5 28.3 28.5
11 44–45 10 28.6 29.0
11.5 45 10.5 29.1 29.5
12 46 11 29.5 30.0
12.5 46–47 11.5 30.0 30.5
13 47 12 30.5 31.0

EU sizing is not always a single integer — half-sizes in EU (40.5, 42.5) exist but are brand-inconsistent. When a US half-size maps to a range (e.g., US 8.5 = EU 41–42), declare the lower EU value in the sizeEU additionalProperty and add a description: "EU 41–42 depending on brand last." This gives AI agents a numeric anchor while preserving the nuance. The CM foot length measurement is the most reliable cross-brand signal because it is brand-independent — a 27cm foot is 27cm regardless of which brand's EU 42 it fits.

For women's sizing conversions, subtract approximately 1.5 EU sizes from the men's chart (US Women's 8 = EU 39, not EU 42). Always declare sizeGroup: WearableSizeGroupWomens and suggestedGender: Female on women's variants so AI agents apply the correct conversion table — see our clothing and apparel size guide for the full women's and extended sizing treatment.

Section 6: Shopify Liquid Implementation — footwear.* Metafield Namespace

The cleanest Shopify implementation stores all 15 footwear attributes in a footwear.* metafield namespace and injects them into product JSON-LD via a Dawn theme snippet. This approach separates data (metafields) from presentation (JSON-LD template), making it editable per-variant in the Shopify admin without code changes. Create the metafield definitions in Shopify Admin → Settings → Custom Data → Products, then populate them on each product variant.

The snippet below reads from the footwear.* metafield namespace on the current variant and emits the full structured data block. The ASTM certification block is conditionally emitted only when footwear.safety_toe_type is not blank — this prevents the certification block from appearing on non-safety footwear where it does not apply.

{% comment %}
  Snippet: snippets/footwear-schema.liquid
  Metafield namespace: footwear.*
  Fields: size_system, us_size, eu_size, uk_size, cm_size,
          width_code, closure_type, upper_material, sole_material,
          sole_technology, waterproof_rating, waterproof_technology,
          activity, safety_toe_type, astm_rating
  Usage: {% render 'footwear-schema' %}
{% endcomment %}

{% if product.tags contains 'footwear' or product.tags contains 'shoes' %}

{% assign mf = product.metafields.footwear %}

{% assign gender_group = "https://schema.org/WearableSizeGroupUnisex" %}
{% assign suggested_gender = "Unisex" %}
{% if product.tags contains 'mens' or product.tags contains 'men' %}
  {% assign gender_group = "https://schema.org/WearableSizeGroupMens" %}
  {% assign suggested_gender = "Male" %}
{% elsif product.tags contains 'womens' or product.tags contains 'women' %}
  {% assign gender_group = "https://schema.org/WearableSizeGroupWomens" %}
  {% assign suggested_gender = "Female" %}
{% endif %}

{% assign size_system_url = "https://schema.org/WearableSizeSystemUS" %}
{% if mf.size_system == "EU" %}
  {% assign size_system_url = "https://schema.org/WearableSizeSystemEU" %}
{% elsif mf.size_system == "UK" %}
  {% assign size_system_url = "https://schema.org/WearableSizeSystemUK" %}
{% endif %}


{% endif %}

The 15 metafield keys in the footwear.* namespace are: size_system (values: "US" | "EU" | "UK"), us_size, eu_size, uk_size, cm_size, width_code (e.g., "D / Medium / Standard" or "2E / Wide"), closure_type, upper_material, sole_material, sole_technology, waterproof_rating (exact values: "Waterproof" or "Water-Resistant" or "Not Water-Resistant"), waterproof_technology (e.g., "Gore-Tex Extended Comfort"), activity, safety_toe_type (e.g., "Steel" or "Composite"), astm_rating (e.g., "I/75 C/75 EH PR"). All 15 are of Shopify metafield type single_line_text_field unless you want to enforce enum values, in which case use list.single_line_text_field for multi-value fields like activity.

Section 7: Five Common Footwear Schema Mistakes

Mistake 1: Using WearableSizeSystemUS for EU Sizes

Declaring "sizeSystem": "https://schema.org/WearableSizeSystemUS" on a variant named "EU 44" is a contradictory signal — the size system URL and the size name disagree. AI agents attempting to normalize "EU 44" against a US size chart will produce a nonsensical result (EU 44 ≈ US 10.5, but the declared system says US, so the agent may treat "44" as a US size, which has no EU equivalent, breaking the cross-system match). Always match the sizeSystem enumeration URL to the size number's actual system. If your Shopify variants use EU as the primary size label, set sizeSystem: WearableSizeSystemEU and store the US equivalent in additionalProperty sizeUS.

Mistake 2: Omitting Width — "Size 10" Alone Is Ambiguous

A "size 10" shoe listing without width is ambiguous in any context where width matters. This is most critical for athletic footwear (where wide and extra-wide variants exist for foot conditions like bunions and plantar fasciitis), work boots (where OSHA recommends correct width for all-day safety footwear), and orthopedic footwear. An AI agent answering "wide size 10 running shoes" cannot surface your wide-width size 10 listing if the width is not declared in structured data — even if "Wide" appears in the variant title string. Width must be a structured additionalProperty, not a text fragment in a variant name.

Mistake 3: Putting All Size Variants in One Product Instead of ProductGroup

A single Product with an AggregateOffer covering all sizes collapses per-variant availability into a single availability signal. An AI agent answering "women's size 8 trail runner in stock" cannot determine if size 8 specifically is in stock — only that the product has some offer available. The canonical pattern for footwear is ProductGroup with hasVariant, where each size variant is a child Product with its own Offer and its own availability status. This enables per-size inventory queries and per-size size-system declarations. Review the ProductGroup variant schema guide for the complete implementation pattern.

Mistake 4: Missing SizeSpecification WearableSizeGroupEnumeration (Men's vs Women's)

Declaring a SizeSpecification with a size number but no sizeGroup makes it impossible for AI agents to correctly interpret the size across gender systems. US Men's size 8 = EU 41 = 26cm foot. US Women's size 8 = EU 39 = 25.4cm foot. These are different shoes for different feet — the same "8" means different things depending on the gender sizing group. For unisex footwear sold in both men's and women's sizes, use separate ProductGroup hasVariant entries for each gender sizing group, each with the correct sizeGroup enumeration. Never omit sizeGroup from footwear SizeSpecification.

Mistake 5: Confusing Water-Resistant vs Waterproof

These are not synonymous — they are distinct filter categories for AI shopping agents. A DWR (Durable Water Repellent) treated nylon upper is water-resistant: it beads water in a light shower but saturates in sustained rain. A Gore-Tex membrane is waterproof: it is fully impermeable regardless of precipitation duration. Declaring waterproofRating: "Water-Resistant" on a product with a full waterproof membrane understates the product's capability and excludes it from "waterproof hiking boots" filter queries. Declaring waterproofRating: "Waterproof" on a DWR-only product is false structured data — it will produce consumer trust violations when the product leaks. Use the exact terms "Waterproof," "Water-Resistant," or "Not Water-Resistant" consistently. Use "Waterproof" only when the product has a fully sealed waterproof construction (membrane, taped seams, or equivalent).

Frequently Asked Questions

How do I express shoe sizes in multiple systems (US/EU/UK/CM) in schema.org?

Use SizeSpecification on each variant's Offer with sizeSystem set to the primary size system's WearableSizeSystemEnumeration URL. Add equivalent sizes in other systems as additionalProperty entries with propertyID values of "sizeUS", "sizeEU", "sizeUK", and "sizeCM" (foot length in centimeters). The CM foot length is the most reliable cross-system signal for AI agents because it is brand-independent. For the WearableSizeSystemEnumeration URL pattern, use https://schema.org/WearableSizeSystemEU, https://schema.org/WearableSizeSystemUS, https://schema.org/WearableSizeSystemUK — always the full URL, never an abbreviated form.

How do I mark up shoe width (narrow/wide/extra-wide) in schema.org?

Shoe width has no dedicated schema.org type — use additionalProperty with propertyID: "shoeWidth". Set the value to both the letter code and a human-readable label: "D / Medium / Standard" for men's standard, "2E / Wide" for men's wide, "B / Medium / Standard" for women's standard, "D / Wide" for women's wide. Always include a description that names the gender for which the letter code applies, because men's D (Standard) and women's D (Wide) share a letter but mean different things. This is the most common AI agent width misclassification in footwear structured data.

How do I implement ASTM F2412 steel-toe certification in Shopify schema.org?

Use hasCertification with a Certification object. Set name to "ASTM F2412", issuedBy to ASTM International, and certificationStatus to https://schema.org/CertificationActive. Include a certificationRating with the specific performance code: "I/75 C/75" for impact and compression, "EH" for electrical hazard, "PR" for puncture resistance. Declare ASTM F2413 as a separate hasCertification object — F2412 is the test method, F2413 is the performance specification; industrial buyers search for both numbers. Supplement with additionalProperty for safetyToeType (Steel / Composite / Aluminum), toeBoxImpactRating, and compressionResistance so AI agents can filter by specific performance levels.

What's the schema.org pattern for Gore-Tex or waterproof footwear?

Use two additionalProperty entries: (1) propertyID: "waterproofRating" with value: "Waterproof" — this is the category-level filter signal; (2) propertyID: "waterproofTechnology" with value: "Gore-Tex Extended Comfort" (or the exact licensed membrane name) — this is the brand-level signal for queries specifying the membrane. Add a third for waterColumnRating (value in mm, unitCode: "MMT") and a fourth for breathability (MVTR or RET value). Use the exact string "Waterproof" — not "Fully Waterproof", "100% Waterproof", or "WP." AI agents perform exact-match filtering on the waterproofRating value, and non-standard strings will exclude the product from waterproof filter queries.

How do I handle men's vs women's sizing for the same product in schema.org?

Declare separate ProductGroup hasVariant entries (or separate Product listings) for the men's sizing group and women's sizing group, each with its own SizeSpecification carrying the correct sizeGroup: WearableSizeGroupMens for men's variants and WearableSizeGroupWomens for women's variants. Never declare both gender groups on the same SizeSpecification — the size numbers mean different things (US Men's 9 = EU 42, US Women's 9 = EU 40), and combining them would produce incorrect cross-system conversion results for AI agents. For unisex footwear sold in a single size run, use WearableSizeGroupUnisex and declare the foot-length CM value as the universal reference.

Implementation Checklist

Related Resources

Find Out Which Footwear Queries Your Store Is Missing

CatalogScan audits your Shopify store's structured data and identifies exactly which size-filter, width, certification, and waterproofing signals are absent from your footwear JSON-LD. See which EU size queries, wide-width queries, and ASTM certification queries your products are invisible to — and get a prioritized fix list.

Run Free Footwear Schema Audit