Product Comparison Table | Compare on the Product Page via Cross Selling
Description
Highlights
About the Extension
A shopper lands on your product page and hesitates. They like this speaker, but would the bigger one be worth the extra £40? So they open three tabs, scroll through the specs of each and try to keep the differences in their head. Quite often they give up and close the browser.
The problem
Shopware shows alternatives in the cross-selling slider: image, name, price. The details that actually decide a purchase live in the properties, and the shopper only sees them on the next product page. Anyone who wants to compare two models has to line them up by hand. That costs them time and costs you orders.
The solution
The plugin puts a comparison table right on the product page. The first column is the product being viewed. The other columns come automatically from one of its cross-selling groups, the ones you already maintain. Below, every property group gets a row, value next to value. Your shoppers know this layout from the big marketplaces.
What's in it for you
- No second system to maintain. The comparison items are an ordinary cross-selling group on the product, either a product list or a dynamic product group. You enter its name in the element, or leave the field empty and the plugin takes the first active group.
- One layout for every product. You add the table to a product page layout once. Every product using that layout shows its own comparison, with nothing to set up per item.
- Nothing shown twice. The option "Hide group in the cross-selling slider" is on by default: the group shown as a table disappears from the cross-selling element on the same page. Other groups, such as accessories, stay where they are.
- Differences at a glance. A "Show differences only" switch sits above the table. One click hides every row where the products are identical. What remains is exactly what the shopper is weighing up.
- Buying without a detour. The buy button in each column adds the product to the cart and opens the off-canvas cart. The shopper stays on the page.
- Fixed selection as well. For landing pages and Shopping Experiences you pick 2 to 5 products yourself, for a page like "Models compared".
How the plugin works
You drag the block "Product comparison table" from the Commerce category into a layout. In the element settings you choose the product source: "Product page (cross-selling)" or "Fixed selection". For the product page you set the maximum number of columns, 2 to 5 including the current product.
Properties come automatically from the compared products: the groups that are also shown on the product detail page. In manual mode you pick up to 30 property groups in your own order instead. Yes/no properties appear as symbols rather than text. Image, price with list and reference price, availability, buy button and a short description can each be switched on or off.
Variants are covered. A main product with variants shows a "from" price and a "Select variant" link instead of the buy button. A single variant shows its own options.
On a phone the table scrolls sideways while the column with the property names stays in place. Without comparison items no table appears, and the page looks exactly as before.
Typical use cases
- Consumer electronics: On a Bluetooth speaker page, the two larger models sit right next to it. Battery life, output and water resistance line up row by row, and "Show differences only" hides the rest.
- Tools and DIY: A 12V cordless drill next to the 18V version and the pro model. A dynamic product group fills the columns by your rules, so nothing is maintained by hand.
- Campaign landing page: For a seasonal promotion you place four chosen models side by side in a Shopping Experience, each with its own buy button and price in GBP.
- Headless shop: Your Composable Frontend fetches the same comparison matrix through the Store API and renders it in your own design.
Technical facts for your IT team
- Shopware 6.7.11 or higher within 6.7, PHP 8.2 or higher. The storefront output is a Twig component, and the component system only exists since 6.7.11.
- No own database tables, no changes to Shopware tables. Settings are stored in the Shopping Experiences element.
- Cross-selling is evaluated through Shopware's own cross-selling route: active groups only, products visible in the sales channel only, sorting and limit of the group respected.
- Store API route /store-api/swp-product-comparison-table (GET and POST) returning the same data as the storefront, for Composable Frontends.
- Can be switched on and off per sales channel. When it is off, pages containing the element keep loading, just without the table.
- HTTP cache stays active. When properties, product assignments or the configuration change, Shopware refreshes the affected pages automatically.
- The plugin sends no data to external servers and stores no personal data.
- Table caption, header cell scopes and screen reader texts are built in. Colours come from your theme's CSS variables.
- Uninstalling: if you let Shopware remove the plugin data, the plugin removes its blocks from your layouts. Otherwise they are kept.
Notes
The table compares the properties you maintain on your products. The more complete they are, the clearer your shoppers see what sets the models apart. Try it on a product page with well maintained properties, that is where it shows its value fastest.
Legal notice
We accept no liability for legal requirements. Please check the use of this plugin with a qualified legal advisor.
Details
- Available: English, German
- Latest update: 2 November 2026
- Publication date: 11 November 2026
- Version: 6.7.0
- Category: Detail Page
Resources
Reviews (0)
About the Extension Partner
BuI Hinsche GmbH
Partner Status
-
Shopware
Bronze Partner -
Shopware
Premium Extension Partner
Details
- Ø-Rating: 4.3
- Partner since: 2014
- Extensions: 113
- Certifications: 2
Support
- Based in: Germany
- Speaks: German, English
- Response time: Very quickly