How to create structured data (Product, Breadcrumb, FAQ) in Shopware 6?
Quick Answer
You can create structured data in Shopware 6 by combining the platform’s built-in schema output with custom Twig template overrides or SEO plugins. Most stores already output some Product and Breadcrumb schema, but FAQ schema usually needs manual implementation. The safest approach is to validate each schema type separately in Google Rich Results Test before pushing changes live.
Before You Start
- ✦ Theme access — you’ll need access to your Shopware theme or plugin files to override Twig templates.
- ✦ Production-safe workflow — always test schema changes in staging first because broken JSON-LD can affect rich snippets.
- ✦ Google validation tools — you’ll need Rich Results Test and Schema Validator open while testing output.
Check existing schema output
Before adding anything, check what Shopware already generates. Many modern Shopware themes output Product and
Breadcrumb structured data automatically. Adding duplicate schema is one of the fastest ways to create
validation errors. Open a product page, view source, and search for application/ld+json. Then run
the page through Google Rich Results Test to see what Google actually detects.
- Open a product page in your storefront
- Inspect existing JSON-LD blocks
- Validate current schema before editing anything
Override the Twig template
Shopware 6 structured data is usually rendered through Twig templates inside the storefront layer. Create a theme override instead of editing core files directly. That keeps your changes update-safe. Most Product schema changes happen inside product detail templates, while Breadcrumb schema is usually rendered globally through layout blocks.
- Create a custom theme or plugin override
- Extend existing Twig blocks instead of replacing full templates
- Keep schema logic separated from layout styling

Add Product schema
Product schema handles rich results like ratings, prices, stock status, and product snippets in Google. Pull values dynamically from Shopware product entities instead of hardcoding them. That keeps prices and inventory synced automatically. You should also include brand, SKU, image, and offer data because Google flags incomplete Product schema surprisingly often.
- Use JSON-LD format instead of microdata
- Map product price and stock dynamically
- Include review data if your store uses ratings
{
"@context": "https://schema.org/
",
"@type": "Product",
"name": "{{ page.product.translated.name }}",
"sku": "{{ page.product.productNumber }}"
}Configure Breadcrumb schema
Breadcrumb schema helps Google understand category hierarchy and internal linking. In Shopware, this usually maps directly to your navigation tree. The tricky part is making sure the breadcrumb path matches the canonical category structure. Stores with multiple category assignments often expose inconsistent breadcrumb markup without realizing it.
- Use canonical category paths
- Keep breadcrumb URLs indexable
- Validate nested item positions carefully
Add FAQ schema
FAQ schema is usually added manually inside CMS pages, landing pages, or product detail templates. Keep the visible FAQ content identical to the JSON-LD version because Google compares both. Don’t stuff keyword-heavy questions into the schema just to target rankings. That tactic stopped working years ago and now creates spam signals instead.
- Add FAQ JSON-LD below visible FAQ content
- Keep answers concise and user-focused
- Test every page individually after deployment
Shopware Structured Data Checklist
0 of 6 completeMistakes Most Developers Make
! Duplicate Product schema blocks
What happens: Google detects conflicting product data and ignores rich snippets.
Fix: Extend the existing schema block instead of injecting a second Product object.
! Hardcoded pricing values
What happens: Schema prices stop matching storefront prices after promotions or tax changes.
Fix: Pull prices directly from Shopware product entities dynamically.
! Broken breadcrumb hierarchy
What happens: Google shows incorrect category paths or ignores breadcrumbs completely.
Fix: Use canonical category assignments and validate position ordering carefully.
Key Takeaway
The short version: Shopware 6 already outputs some structured data, so your first job is validating what exists before adding new schema. Product schema should always pull live product values dynamically, Breadcrumb schema must follow canonical category paths, and FAQ schema should match visible content exactly. Most rich snippet problems come from duplicate schema blocks or invalid JSON-LD formatting. Start with Step 1—that one alone handles most of it.
Related Answers
Still need help?
Talk to our Shopware experts
We've handled GDPR/CCPA compliance for dozens of EU & US Shopware stores.