Optimization Guide
Shopify Baby & Infant Product Schema — Age Ranges, Safety Certifications & Ingredient Safety JSON-LD
When a parent asks an AI shopping agent for "BPA-free bottles for a 6-month-old" or "GREENGUARD Gold certified crib under $500," every baby product without structured age-range, certification, and ingredient-safety data is invisible — not because it fails to qualify, but because the AI has no machine-readable signal to include it.
suggestedAudience → PeopleAudience with decimal suggestedMinAge/suggestedMaxAge values (0=newborn, 0.5=6mo, 1=12mo, 2=24mo) for age-range filtering. Add hasCertification for JPMA, ASTM, GREENGUARD Gold, OEKO-TEX, and CPSIA CPC. Use safetyConsideration for exact CPSC warning text. Encode BPA-free, phthalate-free, and hypoallergenic signals in additionalProperty blocks. Store everything in a baby.* metafield namespace and inject via a Dawn Liquid snippet.
Why Baby Product Stores Are Invisible to AI Shopping Agents
Baby and infant product queries are the most age-restrictive category in AI shopping. When a parent searches "newborn swaddle sleep sack 0-3 months" or "safe high chair BPA-free for 6-month-old starting solids," the AI agent must simultaneously filter by age range, safety certification, and ingredient safety — three dimensions Shopify's default JSON-LD does not output for any product type.
The default Shopify Product JSON-LD block outputs name, price, availability, brand, and aggregate rating. It does not output age recommendations, safety warnings, chemical certifications, or juvenile product safety standards. A parent using an AI agent to find "JPMA-certified play yard for newborn" will not see your product in results — not because your play yard isn't JPMA-certified, but because the certification is only in your product description text, which AI agents cannot reliably use for structured filtering.
Baby products are also uniquely safety-regulated. The Consumer Product Safety Improvement Act (CPSIA) and CPSC regulations impose specific label requirements — choking hazard warnings, lead content disclosures, CPC requirements — that AI agents are increasingly trained to expect. Products without these signals in structured data are deprioritized for safety-conscious queries.
Baby AI query dimensions requiring structured data
| Query dimension | Example AI query | Required schema signal | Without schema |
|---|---|---|---|
| Age range | "bottles for 6-month-old" | suggestedMinAge: 0.5 |
Age filter cannot apply numeric range |
| Age bucket | "newborn sleep sacks" | additionalProperty ageRange: Newborn |
Newborn vs. infant bucket indistinguishable |
| Chemical safety | "BPA-free sippy cups" | additionalProperty bpaFree: Yes |
BPA-free claim unverifiable from text |
| Safety certification | "JPMA certified play yard" | hasCertification JPMA |
Certification only in description text |
| Textile safety | "OEKO-TEX certified baby clothing" | hasCertification OEKO-TEX Standard 100 |
Cert claim not machine-readable |
| VOC emissions | "GREENGUARD Gold crib" | hasCertification GREENGUARD Gold |
Air quality cert invisible to AI filter |
| Safety warning | "choking hazard warning toys 18 months" | safetyConsideration CPSC text |
Safety signal missing; trust deficit |
| CPSIA compliance | "CPSC compliant baby products" | hasCertification CPC |
Compliance claim unverifiable |
| Feeding type | "anti-colic bottles breastfed babies" | additionalProperty feedingType: Breastfed |
Feeding compatibility not machine-readable |
suggestedAudience: Encoding Age Ranges Machine-Readably
The suggestedAudience property on Product takes a PeopleAudience object. The two key fields are suggestedMinAge and suggestedMaxAge, which expect Number values in years — not strings. Use decimal fractions for sub-year ages.
Age value reference table
| Age stage | Common label | suggestedMinAge | suggestedMaxAge | AI query examples |
|---|---|---|---|---|
| Newborn | 0-3 months | 0 |
0.25 |
"newborn swaddle", "0-3 months onesie" |
| Early infant | 3-6 months | 0.25 |
0.5 |
"3-6 month sleeper", "early infant bouncer" |
| Infant | 6-12 months | 0.5 |
1 |
"high chair 6-month-old", "crawling mat infant" |
| Young toddler | 12-18 months | 1 |
1.5 |
"first walker shoes 12 months", "push toy 1 year old" |
| Toddler | 18-24 months | 1.5 |
2 |
"toddler cup 18 months", "ride-on toy 2 year old" |
| Older toddler | 2-3 years | 2 |
3 |
"toddler backpack 2-3 years", "preschool puzzle 24 months" |
| Preschool | 3-5 years | 3 |
5 |
"preschool art supplies 3+", "tricycle 3 year old" |
{
"@type": "PeopleAudience",
"suggestedMinAge": "6 months",
"suggestedMaxAge": "12 months"
// INVALID — expects Number
// AI agent numeric filter fails
}
{
"@type": "PeopleAudience",
"suggestedMinAge": 0.5,
"suggestedMaxAge": 1,
"audienceType": "Infant"
// 0.5 = 6 months, 1 = 12 months
// Numeric range filter works
}
Pair suggestedAudience with an additionalProperty age bucket using human-readable values (Newborn / Infant / Toddler / Preschool). AI agents that do not yet parse decimal suggestedMinAge values fall back to matching the bucket string, providing two-layer coverage.
Baby-Specific Certifications in hasCertification
Juvenile products are subject to more overlapping certification standards than almost any other product category. Use hasCertification — not a text mention in the product description — for every certification your products hold.
| Certification | Issuing body | Product categories | AI queries matched |
|---|---|---|---|
| JPMA Certified | Juvenile Products Manufacturers Association | Cribs, strollers, high chairs, play yards, infant carriers | "JPMA certified crib", "JPMA play yard" |
| ASTM F406 | ASTM International | Non-full-size cribs, play yards (compliance with portable crib safety standard) | "ASTM F406 play yard", "portable crib safety standard" |
| ASTM F2057 | ASTM International | Dressers, chests, wardrobes (tip-over resistance) | "anti-tip dresser baby room", "ASTM F2057 furniture" |
| ASTM F1899 | ASTM International | Full-size cribs | "ASTM certified full-size crib" |
| GREENGUARD Gold | UL Solutions (formerly UL Environment) | Nursery furniture, mattresses, flooring | "GREENGUARD Gold crib", "low VOC nursery furniture" |
| OEKO-TEX Standard 100 | OEKO-TEX Association | Baby clothing, bedding, swaddles, carriers | "OEKO-TEX baby clothing", "chemical-free infant onesie" |
| GOTS Certified | Global Organic Textile Standard | Organic cotton clothing, bedding | "GOTS organic cotton baby blanket" |
| USDA Organic | USDA Agricultural Marketing Service | Organic cotton textiles, baby food (if applicable) | "USDA organic cotton baby clothing" |
| CPC (Children's Product Certificate) | Manufacturer (CPSIA-required self-certification) | All children's products sold in the US | "CPSIA compliant baby products", "CPC certified" |
| FMVSS 213 | NHTSA (National Highway Traffic Safety Admin) | Car seats, booster seats | "FMVSS 213 car seat", "federally approved infant car seat" |
Complete JSON-LD Example: Convertible Crib (Nursery Furniture)
Nursery furniture requires age-range signaling, GREENGUARD Gold VOC certification, JPMA safety certification, anti-tip ASTM standards, and CPC compliance. This example shows the full markup for a convertible crib that converts from newborn to toddler bed.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Ashwood 4-in-1 Convertible Crib — Converts to Toddler/Full Bed",
"description": "GREENGUARD Gold certified convertible crib with non-toxic finish. Adjustable mattress heights. Converts to toddler bed, daybed, and full-size bed. JPMA certified. Solid New Zealand pine.",
"url": "https://example.com/products/ashwood-4in1-convertible-crib",
"sku": "FURN-CRIB-ASH-01",
"gtin13": "1234567890123",
"brand": { "@type": "Brand", "name": "Ashwood Baby" },
"offers": {
"@type": "Offer",
"price": "429.00",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://example.com/products/ashwood-4in1-convertible-crib"
},
"suggestedAudience": {
"@type": "PeopleAudience",
"suggestedMinAge": 0,
"suggestedMaxAge": 5,
"audienceType": "Newborn to Preschool"
},
"hasCertification": [
{
"@type": "Certification",
"name": "GREENGUARD Gold Certified",
"certificationIdentification": "GG-2025-114892",
"issuedBy": {
"@type": "Organization",
"name": "UL Solutions",
"url": "https://www.ul.com/resources/greenguard-certification"
},
"certificationStatus": "CertificationActive"
},
{
"@type": "Certification",
"name": "JPMA Certified",
"issuedBy": {
"@type": "Organization",
"name": "Juvenile Products Manufacturers Association",
"url": "https://www.jpma.org"
},
"certificationStatus": "CertificationActive"
},
{
"@type": "Certification",
"name": "ASTM F1899 Full-Size Crib Standard",
"issuedBy": {
"@type": "Organization",
"name": "ASTM International",
"url": "https://www.astm.org"
},
"certificationStatus": "CertificationActive"
},
{
"@type": "Certification",
"name": "Children's Product Certificate (CPC)",
"certificationIdentification": "CPC-ASHWOOD-CRIB-2025-001",
"issuedBy": {
"@type": "Organization",
"name": "Ashwood Baby LLC",
"url": "https://example.com/safety/cpc"
},
"certificationStatus": "CertificationActive"
}
],
"legalDisclaimer": "WARNING: To reduce the risk of SIDS and other sleep-related infant deaths, always put baby to sleep on their back. Never place soft bedding, pillows, or bumper pads inside the crib. Assembly must be completed by an adult before placing infant in crib. Inspect crib regularly for loose or broken parts. Keep crib away from windows, blinds, and cords. This crib meets or exceeds ASTM F1899 and federal crib safety standards (16 CFR Parts 1219 and 1220).",
"safetyConsideration": "Safe sleep: place infant on firm, flat mattress on back only. No soft bedding. No bumper pads. Inspect hardware regularly. Ensure mattress support hardware is tight before each use. Do not use with a mattress that does not fit snugly (less than two fingers should fit between mattress and crib sides).",
"additionalProperty": [
{
"@type": "PropertyValue",
"propertyID": "ageRange",
"name": "Recommended Age Range",
"value": "Newborn to 5 Years (Convertible)"
},
{
"@type": "PropertyValue",
"propertyID": "ageBuckets",
"name": "Age Stages",
"value": "Newborn, Infant, Toddler, Preschool"
},
{
"@type": "PropertyValue",
"propertyID": "certificationStatus",
"name": "Safety Certifications",
"value": "GREENGUARD Gold, JPMA, ASTM F1899, CPC"
},
{
"@type": "PropertyValue",
"propertyID": "finishType",
"name": "Finish",
"value": "Non-toxic, lead-free paint"
},
{
"@type": "PropertyValue",
"propertyID": "leadFree",
"name": "Lead Free",
"value": "Yes — lead content below 90ppm (CPSIA limit)"
},
{
"@type": "PropertyValue",
"propertyID": "material",
"name": "Material",
"value": "New Zealand Pine (solid wood)"
},
{
"@type": "PropertyValue",
"propertyID": "adjustableMattressHeight",
"name": "Mattress Height Positions",
"value": "3 positions"
},
{
"@type": "PropertyValue",
"propertyID": "convertibleStages",
"name": "Converts to",
"value": "Crib, Toddler Bed, Daybed, Full-Size Bed"
},
{
"@type": "PropertyValue",
"propertyID": "maxChildWeight",
"name": "Maximum Weight",
"value": {
"@type": "QuantitativeValue",
"value": 50,
"unitCode": "LBR",
"unitText": "lbs (toddler bed mode)"
}
}
]
}
</script>
Complete JSON-LD Example: BPA-Free Infant Feeding Bottle
Feeding products need age-range targeting by feeding stage, BPA/phthalate-free chemical signals, and CPSIA compliance. Add feeding type compatibility (breastfed/bottle-fed/formula) as additionalProperty entries so AI agents can answer queries like "anti-colic bottle compatible with breastfeeding."
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "ClearFlow Anti-Colic Infant Bottle 8oz — Slow Flow Nipple — 3-Pack",
"description": "BPA-free, phthalate-free anti-colic bottle with vented inner tube to reduce gas and colic. Slow-flow silicone nipple mimics breastfeeding. For infants 0+ months. Dishwasher safe.",
"url": "https://example.com/products/clearflow-anti-colic-bottle-8oz",
"sku": "FEED-BOT-CF8-3PK",
"gtin13": "2345678901234",
"brand": { "@type": "Brand", "name": "ClearFlow Baby" },
"offers": {
"@type": "Offer",
"price": "26.99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"url": "https://example.com/products/clearflow-anti-colic-bottle-8oz"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.6",
"reviewCount": "3287",
"bestRating": "5"
},
"suggestedAudience": {
"@type": "PeopleAudience",
"suggestedMinAge": 0,
"suggestedMaxAge": 2,
"audienceType": "Infant"
},
"hasCertification": [
{
"@type": "Certification",
"name": "Children's Product Certificate (CPC)",
"certificationIdentification": "CPC-CF-BOTTLE-2025-002",
"issuedBy": {
"@type": "Organization",
"name": "ClearFlow Baby LLC",
"url": "https://example.com/safety/cpc"
},
"certificationStatus": "CertificationActive"
}
],
"legalDisclaimer": "CPSIA compliant. BPA-free per 21 CFR 177.1520. Phthalate-free: DEHP, DBP, and BBP each below 0.1% by weight per CPSC regulations. Third-party tested. Children's Product Certificate available at example.com/safety/cpc.",
"additionalProperty": [
{
"@type": "PropertyValue",
"propertyID": "ageRange",
"name": "Recommended Age Range",
"value": "Newborn and up (0+ months)"
},
{
"@type": "PropertyValue",
"propertyID": "ageBuckets",
"name": "Age Stage",
"value": "Newborn, Infant"
},
{
"@type": "PropertyValue",
"propertyID": "bpaFree",
"name": "BPA Free",
"value": "Yes — BPA-free per 21 CFR 177.1520"
},
{
"@type": "PropertyValue",
"propertyID": "phthalateFree",
"name": "Phthalate Free",
"value": "Yes — DEHP, DBP, BBP below CPSC 0.1% limit"
},
{
"@type": "PropertyValue",
"propertyID": "pvcFree",
"name": "PVC Free",
"value": "Yes"
},
{
"@type": "PropertyValue",
"propertyID": "feedingType",
"name": "Feeding Compatibility",
"value": "Breastfed, Formula-fed, Combination feeding"
},
{
"@type": "PropertyValue",
"propertyID": "nippleFlowRate",
"name": "Nipple Flow Rate",
"value": "Slow Flow (0+ months)"
},
{
"@type": "PropertyValue",
"propertyID": "bottleCapacity",
"name": "Capacity",
"value": {
"@type": "QuantitativeValue",
"value": 8,
"unitCode": "OZA",
"unitText": "fl oz"
}
},
{
"@type": "PropertyValue",
"propertyID": "dishwasherSafe",
"name": "Dishwasher Safe",
"value": "Yes — top rack, all parts"
},
{
"@type": "PropertyValue",
"propertyID": "material",
"name": "Material",
"value": "Tritan plastic bottle body, silicone nipple"
},
{
"@type": "PropertyValue",
"propertyID": "antiColic",
"name": "Anti-Colic",
"value": "Yes — internal vent tube reduces air ingestion"
}
]
}
</script>
CPSC Safety Warnings in safetyConsideration
The safetyConsideration property on Product is the correct location for CPSC-mandated warning language. Using the exact CPSC-approved phrasing is important: AI agents trained on compliant product data recognize the standard warning text and flag non-standard variations as potentially non-compliant.
Required CPSC warning text by hazard type
| Hazard type | Product categories | Exact CPSC warning text | CFR citation |
|---|---|---|---|
| Choking hazard — small parts | Toys <3 years with small parts | WARNING: CHOKING HAZARD — Small parts. Not for children under 3 yrs. |
16 CFR 1501 |
| Choking hazard — balloon | Balloons, balloon kits | WARNING: CHOKING HAZARD — Children under 8 yrs. can choke or suffocate on uninflated or broken balloons. Adult supervision required. |
16 CFR 1500.19 |
| Choking hazard — small ball | Small balls <44mm diameter | WARNING: CHOKING HAZARD — This toy is a small ball. Not for children under 3 yrs. |
16 CFR 1501 |
| Strangulation hazard — cord | Window blinds, crib mobiles, pacifier clips | WARNING: STRANGULATION HAZARD — Keep cords away from children. Wrap cord and keep out of reach. |
16 CFR 1303 / WCMA |
| Suffocation risk — soft bedding | Infant pillows, crib bumpers, soft bedding | WARNING: SUFFOCATION HAZARD — Do not use in a crib. Keep soft bedding away from babies. Infants can suffocate on soft surfaces. |
CPSC Safe Sleep guidelines |
| Tip-over hazard — furniture | Dressers, chests, wardrobes in nursery | WARNING: TIP-OVER HAZARD — Attach to wall to prevent tip-over. Tip-over can cause serious injury or death. Anti-tip hardware included. |
ASTM F2057 / Stop Tip-Overs Act |
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Stacking Rings Developmental Toy — 9 Rings — 6-36 months",
"safetyConsideration": "WARNING: CHOKING HAZARD — Small parts. Not for children under 3 yrs. Adult supervision required during play. Inspect toy regularly for broken or loose parts. Discard if damaged.",
"suggestedAudience": {
"@type": "PeopleAudience",
"suggestedMinAge": 0.5,
"suggestedMaxAge": 3,
"audienceType": "Infant to Toddler"
},
"legalDisclaimer": "Complies with ASTM F963 Toy Safety Standard. CPSIA compliant. BPA-free. Lead content below 90ppm. Phthalate-free. Third-party tested. Children's Product Certificate on file.",
"additionalProperty": [
{
"@type": "PropertyValue",
"propertyID": "ageRange",
"name": "Recommended Age",
"value": "6 months to 3 years"
},
{
"@type": "PropertyValue",
"propertyID": "safetyStandard",
"name": "Safety Standard",
"value": "ASTM F963 Toy Safety"
},
{
"@type": "PropertyValue",
"propertyID": "bpaFree",
"name": "BPA Free",
"value": "Yes"
},
{
"@type": "PropertyValue",
"propertyID": "phthalateFree",
"name": "Phthalate Free",
"value": "Yes"
}
]
}
</script>
Baby Product additionalProperty Reference
Use these additionalProperty entries to cover the full range of baby-specific query dimensions. Add all that apply to each product — omitting a property is equivalent to claiming it does not apply, from an AI agent's perspective.
| propertyID | name | Example values | Product categories |
|---|---|---|---|
ageRange |
Recommended Age Range | "0-3 months", "6-12 months", "Newborn and up" | All baby products |
ageBuckets |
Age Stage | Newborn, Infant, Toddler, Preschool | All baby products |
bpaFree |
BPA Free | Yes / No | Feeding, toys, teethers, bath |
phthalateFree |
Phthalate Free | Yes / No | Feeding, toys, teethers |
pvcFree |
PVC Free | Yes / No | Feeding, toys, bibs |
leadFree |
Lead Free | Yes — below 90ppm (CPSIA) / Yes — below 40ppm (paint) | Furniture, painted toys |
hypoallergenic |
Hypoallergenic | Yes / No | Clothing, bedding, skincare |
certificationStatus |
Safety Certifications | JPMA, GREENGUARD Gold, OEKO-TEX, CPC, ASTM F963 | All baby products |
feedingType |
Feeding Compatibility | Breastfed, Formula-fed, Combination, Weaning/Solids | Bottles, nipples, feeders |
launderingTemp |
Wash Temperature | "30°C / 86°F gentle cycle", "Machine wash cold" | Clothing, bedding, carriers |
maxChildWeight |
Maximum Child Weight | QuantitativeValue in LBR or KGM | Car seats, carriers, bouncers, high chairs |
installationType |
Installation Type | LATCH, Belt-path, European i-Size | Car seats |
antiColic |
Anti-Colic | Yes / No | Feeding bottles |
dishwasherSafe |
Dishwasher Safe | Yes — top rack / Yes — all parts / No | Feeding, bath toys |
Shopify Metafield Architecture for Baby Products
Create a baby metafield namespace in Shopify Admin → Settings → Custom data → Products. This namespace covers all baby-specific schema signals.
| Metafield key | Type | Maps to | Example value |
|---|---|---|---|
baby.age_min_years |
Decimal | suggestedMinAge |
0.5 |
baby.age_max_years |
Decimal | suggestedMaxAge |
1 |
baby.age_range_label |
Single-line text | additionalProperty ageRange |
6-12 months |
baby.age_buckets |
Single-line text | additionalProperty ageBuckets |
Infant |
baby.bpa_free |
Boolean | additionalProperty bpaFree |
true |
baby.phthalate_free |
Boolean | additionalProperty phthalateFree |
true |
baby.pvc_free |
Boolean | additionalProperty pvcFree |
true |
baby.lead_free |
Boolean | additionalProperty leadFree |
true |
baby.hypoallergenic |
Boolean | additionalProperty hypoallergenic |
true |
baby.certifications |
JSON | hasCertification array |
[{"name":"GREENGUARD Gold","id":"GG-2025-114892","issuer":"UL Solutions"}] |
baby.safety_warning |
Multi-line text | safetyConsideration |
Exact CPSC choking/strangulation warning text |
baby.legal_disclaimer |
Multi-line text | legalDisclaimer |
CPSIA compliance statement, BPA-free regulatory basis |
baby.feeding_type |
Single-line text | additionalProperty feedingType |
Breastfed, Formula-fed |
baby.max_weight_lbs |
Decimal | additionalProperty maxChildWeight |
35 |
Shopify Liquid Snippet for Baby Product Schema
This snippet reads from baby.* metafields and outputs the complete baby-product JSON-LD block including suggestedAudience, hasCertification, safetyConsideration, and all safety-relevant additionalProperty entries. Gate it on product type to avoid applying baby-specific properties to non-baby products.
{% comment %} baby-schema.liquid — outputs baby/infant additionalProperty JSON-LD {% endcomment %}
{% assign is_baby = false %}
{% if product.type == 'Baby' or product.type == 'Infant' or product.type == 'Nursery'
or product.type == 'Baby Clothing' or product.type == 'Baby Feeding'
or product.type == 'Baby Furniture' or product.type == 'Baby Toys' %}
{% assign is_baby = true %}
{% endif %}
{% if product.metafields.baby.age_min_years != blank %}
{% assign is_baby = true %}
{% endif %}
{% if is_baby %}
{% assign b_age_min = product.metafields.baby.age_min_years %}
{% assign b_age_max = product.metafields.baby.age_max_years %}
{% assign b_age_label = product.metafields.baby.age_range_label %}
{% assign b_age_buck = product.metafields.baby.age_buckets %}
{% assign b_bpa = product.metafields.baby.bpa_free %}
{% assign b_phthalate = product.metafields.baby.phthalate_free %}
{% assign b_pvc = product.metafields.baby.pvc_free %}
{% assign b_lead = product.metafields.baby.lead_free %}
{% assign b_hypo = product.metafields.baby.hypoallergenic %}
{% assign b_warning = product.metafields.baby.safety_warning %}
{% assign b_disclaimer = product.metafields.baby.legal_disclaimer %}
{% assign b_certs_json = product.metafields.baby.certifications %}
{% assign b_feeding = product.metafields.baby.feeding_type %}
{% assign b_maxwt = product.metafields.baby.max_weight_lbs %}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": {{ product.title | json }},
"description": {{ product.description | strip_html | truncatewords: 60 | json }},
"url": "{{ shop.url }}{{ product.url }}",
"sku": {{ product.selected_or_first_available_variant.sku | json }},
{% if product.selected_or_first_available_variant.barcode != blank %}
"gtin": {{ product.selected_or_first_available_variant.barcode | json }},
{% endif %}
"brand": { "@type": "Brand", "name": {{ product.vendor | json }} },
"offers": {
"@type": "Offer",
"price": {{ product.selected_or_first_available_variant.price | money_without_currency | json }},
"priceCurrency": {{ cart.currency.iso_code | json }},
"availability": {% if product.available %}"https://schema.org/InStock"{% else %}"https://schema.org/OutOfStock"{% endif %},
"url": "{{ shop.url }}{{ product.url }}"
}
{% if b_age_min != blank %}
,"suggestedAudience": {
"@type": "PeopleAudience",
"suggestedMinAge": {{ b_age_min }},
{% if b_age_max != blank %}"suggestedMaxAge": {{ b_age_max }},{% endif %}
"audienceType": {{ b_age_buck | default: "Baby" | json }}
}
{% endif %}
{% if b_certs_json != blank %}
{% assign certs = b_certs_json | parse_json %}
,"hasCertification": [
{% for cert in certs %}
{
"@type": "Certification",
"name": {{ cert.name | json }},
{% if cert.id != blank %}"certificationIdentification": {{ cert.id | json }},{% endif %}
"issuedBy": { "@type": "Organization", "name": {{ cert.issuer | json }} }
}{% unless forloop.last %},{% endunless %}
{% endfor %}
]
{% endif %}
{% if b_warning != blank %}
,"safetyConsideration": {{ b_warning | json }}
{% endif %}
{% if b_disclaimer != blank %}
,"legalDisclaimer": {{ b_disclaimer | json }}
{% endif %}
,"additionalProperty": [
{% if b_age_label != blank %}
{ "@type": "PropertyValue", "propertyID": "ageRange", "name": "Recommended Age", "value": {{ b_age_label | json }} },
{% endif %}
{% if b_age_buck != blank %}
{ "@type": "PropertyValue", "propertyID": "ageBuckets", "name": "Age Stage", "value": {{ b_age_buck | json }} },
{% endif %}
{% if b_feeding != blank %}
{ "@type": "PropertyValue", "propertyID": "feedingType", "name": "Feeding Compatibility", "value": {{ b_feeding | json }} },
{% endif %}
{% if b_bpa != blank %}
{ "@type": "PropertyValue", "propertyID": "bpaFree", "name": "BPA Free", "value": "{% if b_bpa %}Yes{% else %}No{% endif %}" },
{% endif %}
{% if b_phthalate != blank %}
{ "@type": "PropertyValue", "propertyID": "phthalateFree", "name": "Phthalate Free", "value": "{% if b_phthalate %}Yes{% else %}No{% endif %}" },
{% endif %}
{% if b_pvc != blank %}
{ "@type": "PropertyValue", "propertyID": "pvcFree", "name": "PVC Free", "value": "{% if b_pvc %}Yes{% else %}No{% endif %}" },
{% endif %}
{% if b_lead != blank %}
{ "@type": "PropertyValue", "propertyID": "leadFree", "name": "Lead Free", "value": "{% if b_lead %}Yes — below CPSIA limit{% else %}No{% endif %}" },
{% endif %}
{% if b_hypo != blank %}
{ "@type": "PropertyValue", "propertyID": "hypoallergenic", "name": "Hypoallergenic", "value": "{% if b_hypo %}Yes{% else %}No{% endif %}" },
{% endif %}
{% if b_maxwt != blank %}
{ "@type": "PropertyValue", "propertyID": "maxChildWeight", "name": "Maximum Child Weight", "value": { "@type": "QuantitativeValue", "value": {{ b_maxwt }}, "unitCode": "LBR", "unitText": "lbs" } },
{% endif %}
{ "@type": "PropertyValue", "propertyID": "productCategory", "name": "Category", "value": {{ product.type | json }} }
]
}
</script>
{% endif %}
Save as snippets/baby-schema.liquid and render from your product template: {% raw %}{% render 'baby-schema' %}{% endraw %}. For stores mixing baby and non-baby products, the product type gate at the top ensures the snippet only fires for baby products.
Product Category Breakdown: What to Add Per Category
Different baby product categories require different combinations of schema signals. Use this reference to prioritize which fields to populate first for each category in your catalog.
| Category | Priority certifications | Key additionalProperty fields | safetyConsideration type |
|---|---|---|---|
| Cribs & nursery furniture | GREENGUARD Gold, JPMA, ASTM F1899, CPC | leadFree, convertibleStages, maxChildWeight, adjustableMattressHeight | Safe sleep, tip-over warning |
| Dressers & storage | ASTM F2057, GREENGUARD Gold, CPC | leadFree, antiTipHardware, material | Tip-over hazard (exact ASTM warning) |
| Feeding bottles & sippy cups | CPC | bpaFree, phthalateFree, pvcFree, feedingType, nippleFlowRate, dishwasherSafe | Age appropriateness for flow rate |
| Baby clothing & textiles | OEKO-TEX Standard 100, GOTS, USDA Organic, CPC | hypoallergenic, launderingTemp, material, ageBuckets | None required (check for drawstring hazards) |
| Toys & developmental | ASTM F963, CPC | bpaFree, phthalateFree, ageRange, ageBuckets | Choking hazard (small parts warning) |
| Car seats | FMVSS 213, CPC, optionally JPMA | maxChildWeight, installationType, convertibleStages | Expiration date, harness adjustment instructions |
| Strollers & travel systems | JPMA, CPC, ASTM F833 | maxChildWeight, compatibleCarSeatBrands, foldType | None unless recline/infant insert required |
| Baby monitors & tech | FCC ID, CPC | bpaFree (for wearables), batteryLife, connectivity | None for monitors; RF exposure notice for wearables |
5 Common Baby Product Schema Mistakes
| # | Mistake | Impact | Fix |
|---|---|---|---|
| 1 | Age range as a string in suggestedMinAge ("6 months" instead of 0.5) |
Schema.org expects a Number; string values cause the age filter to fail entirely — AI agents cannot apply range comparisons against string types | Use decimal year values: 0 = newborn, 0.25 = 3mo, 0.5 = 6mo, 1 = 12mo, 2 = 24mo, 3 = 36mo. Pair with a human-readable additionalProperty ageRange label. |
| 2 | CPSC choking hazard warning with non-standard phrasing | CPSC-required warning text has a specific approved format. Non-standard variations ("small piece warning", "not suitable for under 3") are not recognized as CPSC compliance signals by AI agents trained on regulatory text | Use the exact CPSC-approved text: WARNING: CHOKING HAZARD — Small parts. Not for children under 3 yrs. in safetyConsideration and on-label. |
| 3 | BPA-free and phthalate-free claims only in product description text | Chemical safety is a primary parent filter. AI agents cannot reliably extract "BPA-free" from free-text descriptions for structured filtering; 45% of parents cite chemical safety as their top purchase criterion for baby feeding products | Add explicit additionalProperty entries: propertyID: "bpaFree", value: "Yes" and propertyID: "phthalateFree", value: "Yes" with regulatory basis in the value. |
| 4 | GREENGUARD Gold or OEKO-TEX certifications only in the product title | Certification names in the product title are title text, not structured data. AI agents filtering "GREENGUARD Gold certified nursery furniture" cannot match title text against a certification filter | Add full hasCertification objects for every certification held. Include certificationIdentification (the certification number) as a trust signal that the certificate is real and verifiable. |
| 5 | No legalDisclaimer with CPSIA compliance statement |
AI agents trained on CPSC-regulated product data expect CPSIA compliance signals for children's products. Missing legalDisclaimer creates a trust gap — the AI cannot distinguish a compliant product from an uncertified one |
Add legalDisclaimer with your CPSIA compliance statement and CPC reference URL. For lead/phthalate claims, cite the CFR section that establishes the threshold (21 CFR 177.1520 for BPA, 16 CFR 1307 for phthalates). |
Frequently Asked Questions
How do I signal age ranges like "0-3 months" vs "6-12 months" in Shopify schema?
Use suggestedAudience → PeopleAudience with suggestedMinAge and suggestedMaxAge as decimal Number values in years: 0 = newborn, 0.25 = 3 months, 0.5 = 6 months, 0.75 = 9 months, 1 = 12 months, 2 = 24 months, 3 = 36 months. Pair with an additionalProperty ageRange using human-readable text ("6-12 months") and an ageBuckets property ("Infant") for AI agents that match on bucket names rather than numeric ranges.
Is the CPSC choking hazard warning required in structured data?
CPSC warning language is required on physical product labels under 16 CFR 1501 — structured data is additional. However, adding it to safetyConsideration signals compliance to AI agents and ensures the hazard warning appears in AI-generated product summaries. Use the exact approved text verbatim: WARNING: CHOKING HAZARD — Small parts. Not for children under 3 yrs. Non-standard phrasing is not recognized as a CPSC compliance signal in machine-readable contexts.
What does a Children's Product Certificate (CPC) cover and how do I add it to schema?
A CPC is required by CPSIA for all children's products sold in the US. It certifies compliance with applicable CPSC safety rules — lead content limits, phthalate restrictions, and ASTM standards. Add it to hasCertification with name: "Children's Product Certificate (CPC)", your CPC number as certificationIdentification, and your company as issuedBy (you self-issue based on third-party testing). Link to your publicly accessible CPC via the url field in the Certification object.
Should I use a different schema type for car seats and strollers?
No — car seats and strollers use the standard Product type. Use hasCertification for FMVSS 213 compliance (car seats), JPMA, and CPC. Add additionalProperty entries for maximum child weight with a QuantitativeValue, installation type (LATCH, belt-path), and travel system compatibility. The FMVSS 213 certification is a high-value signal for AI queries from safety-researching parents who include federal safety standard references in their queries.
How do I mark baby clothing as OEKO-TEX Standard 100 certified in Shopify schema?
Add a hasCertification object with name: "OEKO-TEX Standard 100", issuedBy Organization name: "OEKO-TEX Association", and your license number as certificationIdentification (format: XX-XXXXX-XXXXX). Add a parallel additionalProperty with propertyID: "certificationStatus" and value "OEKO-TEX Standard 100 Certified". For GOTS certified organic cotton, add a second hasCertification entry. These certifications match parental AI queries like "OEKO-TEX certified baby onesie" and "chemical-free organic infant sleepwear."
Related Resources
- Shopify Toy & Children's Safety Schema — ASTM F963, Age Grading, CPSC Hazard Warnings
- Product Safety Certifications Schema — NSF, CPSC, ASTM, CE in JSON-LD
- Shopify Clothing & Apparel Size Schema — SizeSpecification and ProductGroup
- Shopify Dietary Supplement Schema — DietarySupplement JSON-LD
- E-commerce Product Audience Schema — suggestedAudience Targeting
- Shopify ProductGroup hasVariant Schema — Multi-Variant Structured Data
- Shopify Warranty & Guarantee Schema — WarrantyPromise JSON-LD
- CatalogScan Blog — AI Shopping Agent Optimization
Is your baby product catalog visible to AI shopping agents?
CatalogScan checks your Shopify store for missing age-range signals, absent certifications, unsafe warning text, and BPA-free claim encoding across your entire baby catalog in minutes.
Run Free Scan