SD001 – Field Presence Check
Overview
SD001 (Field Presence Check) ensures that your product page includes valid JSON-LD structured data with a Product (or ProductGroup) schema and that all required fields are present. Search engines and AI systems (including generative engines and chatbots) rely on this machine-readable data to understand what the page is about, to index product attributes for retrieval, and to surface your product in answers and recommendations.
Probability that AI systems use this signal: Product schema is one of the most widely consumed structured data types. Crawlers and indexing pipelines (e.g. for search, shopping, and generative AI training or retrieval) parse application/ld+json and extract Product entities for knowledge graphs, comparison, and answer generation. The probability that an AI chat or search system uses Product schema during training or inference is high when the page is in a crawled corpus or when the system answers product-related queries. Missing or incomplete Product schema sharply reduces the chance that your page is correctly interpreted and surfaced.
Impact on geo compliance: Passing SD001 (all required and ideally recommended fields present) supports geo compliance by providing clear, machine-readable product identity, description, and offer data. Systems can use this to align results with the correct locale, currency, and availability and to avoid surfacing incomplete or ambiguous product information that could lead to non-compliant claims (e.g. wrong region, misleading pricing). Failing SD001 increases the risk that your page is ignored or misrepresented in AI-generated answers, which can harm both discoverability and legal/trust compliance.
This assessment is the foundation for the rest of the structured-data chain: SD002, SD003, SD005, SD007, SD008, SD009, and SD010 all assume valid Product data exists.
What We Check
- The page is parsed for
<script type="application/ld+json">blocks. - JSON-LD is parsed; malformed JSON yields a failed result with the message "Malformed JSON-LD found".
- Product schemas are located: objects with
@type"Product"or, for"ProductGroup", items inhasVariantare treated as products. - Only the first product is analyzed (as per the current implementation).
- Required fields (all must be present to pass):
@type,name,description,offers,image. - Recommended fields (improve score and AI understanding):
brand,sku,category,gtin. - If no JSON-LD is found: failed, "No JSON-LD structured data found".
- If no Product schema is found: failed, "No Product schema found in JSON-LD".
Pass / Fail and Score
Status PASSED only when zero required fields are missing (len(missing_fields) == 0).
Score formula:
- Required:
(present_required / 5) × 80 - Recommended:
(present_recommended / 4) × 20 - Total = required_score + recommended_score (0–100).
If any required field is missing, the assessment fails; the score can still be non-zero from recommended fields. A score of 100 requires all five required and all four recommended fields.
How to Fix When It Fails
- When there is no JSON-LD: Add a
<script type="application/ld+json">block to the page with at least one Product or ProductGroup object. - When there is no Product schema: Add an object with
@type"Product"(or use ProductGroup withhasVariant). - When required fields are missing: Add all five:
@type,name,description,offers,image. Ensureoffersis an Offer (or array) with at least price/availability as needed;imagemust be a URL or ImageObject. - For a higher score and better AI understanding: Add recommended fields
brand,sku,category,gtinwhere applicable. - When JSON is malformed: Fix syntax errors (missing commas, trailing commas, unescaped characters) and validate with a JSON-LD or schema.org validator.
Common Issues
- Missing one or more required fields:
@type,name,description,offers,image. - Missing recommended fields:
brand,sku,category,gtin. - No
<script type="application/ld+json">on the page, or invalid JSON. - ProductGroup used without
hasVariant; only the first product in the list is analyzed. offersorimageempty, null, or in wrong format.
Dependencies
None. This assessment runs first in the structured-data chain. SD002 (Field Match With Visible Content), SD003 (Currency & Units), SD005 (Duplicate SKU), SD007 (Offer Object Completeness), SD008 (Review Data Validation), SD009 (Alt Text Image Consistency), and SD010 (Inventory Update Sync) all depend on SD001 passing so that valid Product data exists to validate against.
How to Verify
- Inspect page source for
<script type="application/ld+json">and confirm the JSON is valid. - Use schema.org Validator or Google Rich Results Test on the Product object.
- Confirm the first Product (or first variant in a ProductGroup) has all five required fields and, ideally, the four recommended fields.
Additional Resources
AI and GEO relevance: Product structured data is heavily used by search engines and generative AI systems. Training and inference pipelines that build product knowledge graphs or answer shopping queries rely on schema.org Product for entity resolution, attribute extraction, and ranking. Pages with complete, valid Product schema have a higher probability of being crawled, indexed, and surfaced in a geo-compliant way (e.g., correct locale, pricing, and availability signals), reducing the risk of misleading or non-compliant answers.