How to Add Certification & 3D Model Structured Data for Merchant Listings

Why Google Now Supports Certification & 3D Data in Merchant Listings
π§ Whatβs New in 2025?
Google has expanded its support for structured data within merchant listings by introducing:
hasCertification
β Add certifications (eco-labels, safety, regulatory) directly to product schemacertificationIdentification
&certificationRating
β Clarify certification IDs and performance levels3DModel
schema support β Display rich, interactive 3D product previews- Enhanced eligibility for AI-powered product experiences, including voice + visual search
These additions help sellers stand out in search results and meet new regulatory expectations, especially across the EU and US.
π Why This Matters for SEO
Feature | Benefit |
---|---|
β Certification markup | Increases trust, visibility & click-throughs |
β 3D product schema | Enhances AI Overviews and image-rich carousels |
β Compliance metadata | Helps you meet Googleβs transparency and labeling policies |
π See related:
π― What Certifications Can Be Added?
You can now mark up official certifications such as:
- Energy labels (EU, BIS, ENERGY STAR)
- Safety standards (FDA, ISI, FCC)
- Sustainability badges (Fair Trade, FSC, Green Seal)
- Performance ratings (COβ emission grades, efficiency tiers)
π§© Overview of New Schema Properties
Property | Type | Description |
---|---|---|
hasCertification | Certification | Top-level product certification |
issuedBy | Organization | Who issued the certificate |
certificationIdentification | Text | ID or serial number |
certificationRating | Text | Label rating (e.g., A+, 5 stars) |
subjectOf β 3DModel | MediaObject | Path to glTF/GLB 3D model of product |
β Requirements to Qualify
To use these new structured data features:
- The product must display the certification or model clearly on the page
- Markup must follow Schema.org format exactly
- The certification must come from a verifiable authority
- The 3D model must use the glTF file format and be accessible at a direct URL
π¦ What This Article Will Cover (Next Parts)
- Full JSON-LD schema for certifications
- EU energy label & COβ rating examples
- Using
subjectOf
+3DModel
in structured data - Google validation using Rich Results Test
- WordPress + Shopify integration methods
Adding Certification Metadata with JSON-LD Schema
β
Basic Certification Markup with hasCertification
To declare that a product has an official certification, use the hasCertification
property inside the Product
schema. This signals trust and compliance to Google.
π§ Example: Basic Certification Markup (JSON-LD)
jsonCopyEdit{
"@context": "https://schema.org",
"@type": "Product",
"name": "EcoSmart Refrigerator 230L",
"image": "https://kumarharshit.in/images/refrigerator.jpg",
"description": "Energy-efficient refrigerator with A+++ EU energy label",
"sku": "ECOFR230L",
"hasCertification": {
"@type": "Certification",
"name": "EU Energy Label",
"issuedBy": {
"@type": "Organization",
"name": "European Union Energy Directorate",
"url": "https://europa.eu"
}
}
}
π Add certificationIdentification
(e.g., Serial or Reference ID)
Use certificationIdentification
when your product includes a certificate number or ID.
π§ Example:
jsonCopyEdit"hasCertification": {
"@type": "Certification",
"name": "EU Energy Label",
"issuedBy": {
"@type": "Organization",
"name": "European Union Energy Directorate"
},
"certificationIdentification": "EU-ENERGY-2025-A+++"
}
β Add certificationRating
(e.g., A+++, Gold, Tier 1)
Use certificationRating
to specify a ranked or graded value from the certifier.
π§ Example:
jsonCopyEdit"certificationRating": "A+++"
You can include this alongside certificationIdentification
.
π Full Certification Snippet with All Fields
jsonCopyEdit"hasCertification": {
"@type": "Certification",
"name": "EU Energy Label",
"issuedBy": {
"@type": "Organization",
"name": "European Union Energy Directorate",
"url": "https://europa.eu"
},
"certificationIdentification": "EU-ENERGY-2025-A+++",
"certificationRating": "A+++"
}
π§ You can apply this to any certifying authority: USDA Organic, BIS India, FDA Approved, ENERGY STAR, etc.
π Validation Tip:
Use Google’s Rich Results Test to check your implementation.
Your output should show Product
β hasCertification
β Certification
with nested values.
π Related Reading:
Adding Multiple Certifications with Schema Markup
π§© Can You Add More Than One Certification?
Yes β if your product qualifies for multiple certifications, Google supports marking them up using a JSON array inside the hasCertification
field.
This is useful for:
- Products with regulatory + sustainability certifications
- Tech devices with both regional and global trust marks
- Food products with organic + fair trade + ISO labels
β Example: Two Certifications β Organic + Fair Trade
jsonCopyEdit"hasCertification": [
{
"@type": "Certification",
"name": "USDA Organic",
"issuedBy": {
"@type": "Organization",
"name": "US Department of Agriculture",
"url": "https://www.usda.gov"
},
"certificationIdentification": "ORG-2025-88",
"certificationRating": "Certified Organic"
},
{
"@type": "Certification",
"name": "Fair Trade Certified",
"issuedBy": {
"@type": "Organization",
"name": "Fair Trade USA",
"url": "https://www.fairtradecertified.org"
},
"certificationIdentification": "FT-3945-22"
}
]
π§ Each object in the array must be individually valid, with its own
name
andissuedBy
.
π Global Certification Examples by Industry
Industry | Certification Example | Provider |
---|---|---|
Food & Beverage | USDA Organic, India Organic, Non-GMO | USDA, APEDA, Non-GMO Project |
Consumer Electronics | BIS Certified, ENERGY STAR | BIS India, ENERGY STAR USA |
Furniture | FSC Certified, Green Seal | FSC International, Green Seal |
Health & Supplements | FDA Approved, GMP Certified | FDA, NSF International |
Fashion | GOTS (Organic Textile), OEKO-TEX | GOTS, OEKO-TEX Association |
π Related: Google Structured Data for Merchant Offers
π Tips for Using Multiple Certifications
- Always verify that all certifications are valid and issued by recognized organizations
- Make sure each certification is mentioned in visible on-page content
- Donβt use
hasCertification
for marketing claims (like “premium quality”) unless backed by a certifier
β Avoid using fake certifiers or made-up badges. Google may penalize schema abuse.
π§ͺ Testing with Multiple Certifications
Paste your full schema into Google Rich Results Test and look for:
- No red errors under
hasCertification
- Each certification item appearing under the
Product
node - Matching labels visible on the live page (important!)
π Related Reading:
- Google E-A-T & Certification Trust Signals
- Merchant Structured Data with Member Pricing
- Structured Data for Voice & AI Search
Adding 3D Product Models Using Structured Data
π¦ What Is the 3DModel
Schema?
Google now supports embedding 3D models of products using structured data. This allows users to interact with a 3D view directly in:
- Google Search
- Google Shopping
- Mobile preview overlays
- AR-integrated results
π§ When to Use It
This is ideal for:
- Electronics (e.g., smartphones, laptops)
- Furniture (sofas, tables, beds)
- Fashion (shoes, accessories)
- Vehicles, home appliances, industrial items
β Basic 3D Model Markup
To include a 3D model, use the subjectOf
property inside the Product
schema, pointing to a 3DModel
type.
π§ JSON-LD Example:
jsonCopyEdit{
"@context": "https://schema.org",
"@type": "Product",
"name": "Modern Wooden Coffee Table",
"image": "https://kumarharshit.in/images/coffee-table.jpg",
"description": "Compact wooden table with Scandinavian design and AR-enabled 3D view",
"sku": "WDCT-1100",
"subjectOf": {
"@type": "3DModel",
"name": "Wooden Coffee Table 3D Preview",
"encoding": {
"@type": "MediaObject",
"contentUrl": "https://kumarharshit.in/3d-models/coffee-table.glb",
"encodingFormat": "model/gltf-binary"
}
}
}
π§© Required Fields for 3D Model Schema
Property | Description |
---|---|
@type: 3DModel | Declares the structured data as a 3D model |
name | Optional title or label for the model |
encoding.contentUrl | Direct URL to the .glb or .gltf file |
encoding.encodingFormat | File type (must be "model/gltf-binary" for .glb ) |
π§ Make sure your hosting supports direct access to
.glb
or.gltf
files without authentication or redirects.
π¨ What Is glTF or GLB?
- glTF (GL Transmission Format) is a royalty-free file format for 3D models
.glb
is the binary version (faster, smaller)- Must be served via HTTPS from your domain
π Learn more: glTF Format Overview
π§ͺ Validation Tips
Use Rich Results Test or Google’s Search Console to confirm your 3DModel
is correctly attached to the Product
.
You wonβt see a 3D preview in the test β but you should see no errors and valid
subjectOf
β3DModel
.
π Related Reading:
Testing, Validating & Debugging Structured Data (2025 Methods)
π οΈ Why Validation Is Critical
Structured data errors can:
- Prevent your products from showing in rich results
- Disqualify your listings from Shopping experiences
- Lead to manual actions if schema abuse is detected
Google has tightened enforcement in 2025 to ensure certifications, models, and trust signals are legitimate.
β Primary Tools to Test Your Markup
Tool | Use |
---|---|
Rich Results Test | Validate JSON-LD, Microdata, or RDFa |
Schema Markup Validator | Check schema.org compatibility |
URL Inspection Tool in GSC | Ensure structured data is indexed and rendered |
π Step-by-Step: Testing Certification Schema
- Go to Rich Results Test
- Paste either:
- Your live URL (preferred)
- Or your full JSON-LD snippet
- Click βTestβ
- Review output:
- No red errors
- All fields (
hasCertification
,issuedBy
, etc.) appear nested underProduct
- Labels match whatβs shown on the live page
π§ͺ Step-by-Step: Testing 3D Model Schema
- Load a product page with your structured
subjectOf β 3DModel
markup - Paste URL into the Rich Results Test
- Confirm:
3DModel
is recognized undersubjectOf
contentUrl
is accessible and direct- Encoding format is
"model/gltf-binary"
Google will not render the 3D preview but will validate the structure.
β οΈ Common Errors & How to Fix Them
Error | Fix |
---|---|
Missing issuedBy in certification | Add the full Organization node |
Invalid JSON format | Use a JSON validator |
Incorrect encoding format for 3D model | Must be "model/gltf-binary" |
Certification not found on the page | Ensure text appears visibly in HTML |
URL blocked by robots.txt | Check /robots.txt and meta tags |
π§ Bonus Tip: Use Google Search Console (GSC)
After deploying changes:
- Go to URL Inspection in GSC
- Enter the product page URL
- Click βTest Live URLβ
- Confirm that:
- Structured data is present
- Page is crawlable and indexed
- No render-blocking issues
π Related: Using GSC & Analytics for SEO
π Related Reading:
Platform-Specific Implementation (WordPress, WooCommerce, Shopify, Custom)
π WordPress (with or without WooCommerce)
WordPress doesnβt support 2025 certification or 3D schema by default. Youβll need to add custom JSON-LD manually or use schema-enabled plugins with support for <script type="application/ld+json">
.
β Method 1: Manual JSON-LD Insertion
- Edit the single product template (
single-product.php
or via Elementor/Block Editor). - Add this inside the
<head>
section or use a plugin like Header Footer Code Manager. - Paste your full schema, e.g.:
htmlCopyEdit<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Wooden Chair - FSC Certified",
"hasCertification": {
"@type": "Certification",
"name": "FSC Certified",
"issuedBy": {
"@type": "Organization",
"name": "Forest Stewardship Council"
}
}
}
</script>
π§ Match structured content with visible on-page content to avoid schema mismatch warnings.
π WooCommerce Users
Use a plugin like:
- β Rank Math Pro (supports custom schema templates)
- β Schema & Structured Data for WP (allows product-level custom fields)
- β Yoast SEO (doesnβt currently support
hasCertification
or3DModel
)
You can define dynamic templates with variables like:
jsonCopyEdit"@type": "Product",
"name": "%%post_title%%",
"hasCertification": {
"@type": "Certification",
"name": "%%cf_cert_name%%",
"issuedBy": {
"@type": "Organization",
"name": "%%cf_cert_issuer%%"
}
}
Add custom fields for cert_name
, cert_issuer
, etc.
π Shopify
Shopify restricts direct code edits on some plans, but you can still inject schema in two ways:
β
Method 1: Edit product.liquid
or main-product.liquid
Insert full JSON-LD into the <head>
tag or just above </body>
:
htmlCopyEdit<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "{{ product.title }}",
"hasCertification": {
"@type": "Certification",
"name": "ENERGY STAR",
"issuedBy": {
"@type": "Organization",
"name": "ENERGY STAR Program"
}
}
}
</script>
Shopifyβs Liquid tags (like
{{ product.title }}
) help auto-fill schema for each item.
β Important Shopify Notes:
- Shopifyβs native schema blocks donβt support
hasCertification
or3DModel
β so you must add custom scripts - Use
content_for_header
or theme file customization - Ensure 3D model files (.glb) are uploaded to Files and are publicly accessible
π Related: Google Page Experience & Shopify Optimization
π¨βπ» Custom Platforms
If you use a custom-built CMS or eCommerce framework:
- Inject JSON-LD via backend templating logic
- Use variables to populate dynamic content like SKU, cert ID, glb file paths
- Store certifications in the database (e.g., as part of product metadata)
Make sure:
- Your JSON-LD is dynamically populated per product
subjectOf β 3DModel β encoding.contentUrl
points to a static file URL, ideally on a CDN or/assets
directory
π Summary Table
Platform | Supported? | Method |
---|---|---|
WordPress | β | Custom JSON-LD or Rank Math templates |
WooCommerce | β | Plugins with schema templating support |
Shopify | β (manually) | Inject into theme files with Liquid |
Custom | β | Server-side injection of schema templates |
π Related Reading:
- Merchant Listing with Pricing Variants
- Technical SEO Implementation
- Google Trends for Content Timing
Final SEO Checklist for Certifications & 3D Schema Compliance
β Certification Markup SEO Checklist
Use this checklist to ensure your certification data is implemented correctly and is eligible for enhanced results:
Task | Status |
---|---|
Certification is issued by a recognized organization | |
hasCertification schema includes @type: Certification | |
Includes name , issuedBy , and optional certificationIdentification | |
Certificate badge is visible on the page (near product title/description) | |
JSON-LD schema is properly nested within Product | |
Schema passes Rich Results Test with no critical errors | |
No use of fake or unverifiable certifications |
β 3D Model Markup SEO Checklist
Ensure your 3D schema is working with this step-by-step list:
Task | Status |
---|---|
3D model file is in .glb or .gltf format | |
File is publicly accessible on HTTPS | |
JSON-LD includes subjectOf β 3DModel β encoding β contentUrl | |
encodingFormat is "model/gltf-binary" | |
Linked on the same page as the product | |
Schema validates via Rich Results Test | |
No file redirections or blocked resources |
π Related Guide: Image License Metadata SEO
π§ Bonus Tips for Higher Visibility
- Use clean, SEO-optimized URLs (see URL Structure Guide)
- Avoid excessive parameters or session IDs in product URLs
- Use
Product
,Offer
,hasCertification
,aggregateRating
, andsubjectOf
together for richer results - Add
gtin
,mpn
, orisbn
to support Google Manufacturer Center data - Pair with image metadata (EXIF, IPTC) for better image visibility in Shopping and Google Lens
π Internal Linking Strategy
Integrate schema-enhanced product pages into your site’s internal linking system:
- Link from category hubs using exact match anchor text
- Include in seasonal landing pages (e.g., βEco-Friendly Home Appliances 2025β)
- Add internal links from top blog posts and FAQs
- Use breadcrumb navigation with structured data support
π Related Reading:
- Faceted Navigation & Crawl Optimization
- Googleβs AI Overview & Structured Content
- Structured Data for Voice SEO
π Additional Tools & References
Tool | Purpose |
---|---|
Rich Results Test | Validate schema & preview supported formats |
Schema Markup Validator | Check for syntax compliance |
JSONLint | Clean and verify JSON structure |
Google Search Console | Test live URLs and indexing status |
Leave a Reply