Magento 2 Automatic Related Products Extension

View Demo

The Automatic Related Products extension fills related, up-sell and cross-sell blocks for you. It picks products by rules you set, using what your customers actually buy and view, and shows how much revenue each block brings, so you keep the blocks that sell and change the ones that don't.

  • Fill related, up-sell and cross-sell blocks automatically
  • Pick products by what customers buy and view together
  • Show blocks on product, category, cart and account pages
  • See clicks, orders and revenue for every block
Marketplace Approved
Hyvä
Magento Cloud
GraphQL
Mage-OS
Compatible with:
Community:
2.3.* - 2.4.9
Enterprise:
2.3.* - 2.4.9
Problem

Related products (similar items), up-sells (a better, pricier alternative) and cross-sells (accessories and add-ons) can bring real revenue, but default Magento makes you link every product by hand. The links go stale as the catalog changes, and you can't see which block actually sells.

Solution

Automatic Related Products fills these blocks for you. It picks products by rules you set, using what your customers actually buy and view, and reports the revenue each block brings.

Is it worth it for your store?

What you get

Blocks filled from real orders and views, and a report of clicks, orders and revenue for each one. You see which blocks pay off.

What it takes

Create a block, pick its position and rule. It uses your last 365 days of orders and views, so it's full from day one; a nightly data update keeps it fresh.

What you risk

Little. Blocks work with Magento's page cache, and your native related, up-sell and cross-sell links stay untouched if you switch the extension off.

Automatic Related Products main features

  • Fill cross-sell and up-sell blocks automatically, without linking products by hand
  • Pick products by what customers bought or viewed together, or by catalog conditions
  • Show blocks on product, category, cart and customer account pages, and in blog posts
  • Add the same recommendations to Mirasvit Follow Up Email messages
  • See impressions, clicks, orders and revenue for every block
  • Works with Luma and Hyvä themes, Magento Open Source and Adobe Commerce 2.3–2.4.9

Choose how each block picks products

Selection rule for a related products block

Every block is filled by a rule. The rule has a source, which says where the products come from:

  • Bought together: products that shoppers bought in the same order as this one
  • Also bought: products that the same customers bought in any of their orders
  • Viewed together: products that logged-in customers viewed alongside this one
  • Recently viewed: products looked at recently (personal for logged-in shoppers on uncached pages such as the cart, otherwise a store-wide list)
  • Whole catalog: any product that matches your conditions

Conditions then narrow the result: the same category or the same attribute value as the current product, a price range, only products with an image, or any other product attribute. Behavior-based sources put the products bought or viewed together most often first. On top of that, you can sort by price or name, rotate products in random order, or use Mirasvit Sorting criteria. If you have already linked some products by hand, the block can show them first and fill the rest automatically. See the selection rules guide for all options.

Choose What Related Products to Display

Selecting a product selection rule for a block

Rules and blocks are set up separately. You create a rule once and give it a name, then pick it from a list in any block that should use it. A typical set of rules might be:

  • cross-selling products
  • similar products
  • by purchase history
  • other viewed products

Change a rule, and every block that uses it updates with it.

Place related products almost anywhere

Related products block on a product page

You choose the position of each block. The module can show related products on these pages:

  • product page, inside the native related or up-sell block, or above or below the content and sidebar
  • category page
  • shopping cart, inside the native cross-sell block or above or below the content
  • customer account page
  • blog posts of Mirasvit Blog

Pick a position from the list of predefined ones, or place the block yourself with a widget or a custom layout position. When several blocks share a position, the one with the higher priority goes first. With Ignore subsequent blocks turned on, a backup block appears only when the main one has nothing to show.

Analytics you can trust when deciding which blocks to keep

Impressions, clicks, orders and revenue for each related products block

The report shows every block with its:

  • impressions (number of views)
  • number of clicks
  • number of orders
  • total revenue

Revenue is counted strictly. An order goes to the last block the shopper clicked, and the block gets credit only for the items it showed, without shipping or the rest of the cart. So the number tells you what the block actually sold, not how big the orders were. Many reports stop at clicks or credit a block with the whole order, which makes every block look better than it is.

Example: phones and accessories

Say you sell mobile phones. Here is what a shopper sees:

1

Phone page: up-sell

An up-sell block offers the next model up, with more storage or a better camera.

2

Cart page: cross-sell

Once the phone is in the cart, a cross-sell block suggests cases and chargers that fit it. The rule looks at every item in the cart, not just the last one added.

Accessories usually carry better margins than the phone itself, which makes the cart block especially worth setting up.

Related products slider in the shopping cart

Related products slider or static block

Choose one of three block templates (default, bulletproof or widget), show the products as a slider or a static list, and set how many products each block shows. If your theme has its own design, you can use a custom template.

Who It's For

The extension pays off when your catalog is too large to link by hand and your store has a steady flow of orders. Behavior-based blocks need order and browsing history, so a new store should start with catalog rules (the same category or a similar price) until the history builds up. If you sell only a few products, linking them manually in default Magento is enough.

No hidden fees
Our developers install the extension on your store and configure it for your setup, free of charge.
Lifetime access to source code
Access to free support and updates for 1 year
Updates and support prolongation - $132

Pay today $219 for the first year.

Then $132 for updates and support services per year.

Cancel anytime.

30 days money back guarantee
See it in action!
Pick a quick tutorial to learn about various aspects of this extension
Customer Reviews 32
Earn points for your review about this extension modules. $1 = 10 points
Write Your Own Review

check-circle You submitted your review for moderation.

Tbb Verified Buyer
From Barcelona, Spain
Using the module for over 3 years
We use it to automate related/upsell: good data sources and control over the configuration
We have Automatic Related Products configured on one of our Magento 2 stores, where it powers the related and upsell blocks on product pages.

Compared to Magento's native options, the main value is in the data sources it can use. It doesn't rely only on manual relations: it can combine recent views, products viewed together by the same customer and purchase behaviour. In our case, the generated index is broad, which helps keep recommendations updated as the catalogue changes.

On the configuration side, the separation between rules and blocks is very useful. You can define the logic once (which products are eligible and which source should be used) and reuse it across different blocks without duplicating work. This simplifies maintenance when the catalogue is large.

The positioning flexibility is also valuable. You're not limited to Magento's classic slots, and blocks can be placed in custom positions with quite a bit of flexibility. This has given us more room when working on product page layouts.

For stores that care about product page merchandising and want to go beyond native related/upsell functionality, it's a very useful solution. It automates recommendations through configurable criteria and significantly reduces manual work.
Also installed:
Advanced Reports,  Reward Points,  Affiliate,  Full Page Cache Warmer,  Google PageSpeed Optimizer,  Google Shopping Feed,  Extended Shopping Cart Rules and 9 more
Vladimir Verified Buyer
From Tsarevo, Bulgaria
Using the module for over 3 years
Excellent extension that boosts sales with minimal effort
The Automatic Related Products extension for Magento 2 is a highly effective tool that automates the display of related products based on smart rules. It’s easy to install, the interface is intuitive, and the results are immediate—better product visibility and increased average order value. I highly recommend it to anyone looking to enhance the user experience and drive more sales without manually managing related items.
Also installed:
Dynamic Categories,  Advanced SEO Suite,  Order Management,  Improved Sorting,  Elastic Search Ultimate,  Layered Navigation
Josh Verified Buyer
From Durban, South Africa
Using the module for over 2 years
Works well
Has an issue with this extension at first with slow loading but once issue was resolved. IT works great!
Also installed:
Advanced Reports,  Advanced Product Feeds,  Full Page Cache Warmer,  Layered Navigation,  Promo Banners,  Knowledge Base,  Customer Segmentation Suite and 10 more
Robert Verified Buyer
From United States
Using the module for 7 months
A must for any Magento store
I've been using the Mirasvit Related Products extension for my Magento 2 store, and I must say it has made a significant difference in our sales. Can't be happier
Also installed:
Advanced Product Feeds,  Full Page Cache Warmer,  Order Management,  RMA,  Elastic Search Ultimate,  AI Assistant,  Google Tag Manager and 8 more
Davide Verified Buyer
From Pavia, Italy
Using the module for over 3 years
Excellent module
The module is very flexible and also supports Hyvä, and this it's for sure a plus.
Also installed:
Elastic Search Ultimate,  Advanced Product Feeds,  Advanced SEO Suite,  Advanced Reports,  Follow Up Email,  IP Geolocation Redirect,  Google PageSpeed Optimizer and 17 more
Manual & Support
Frequently asked questions
chevron-down chevron-right

Where can I find a related products block in Magento 2?

Default Magento shows related and up-sell products on the product page and cross-sell products in the shopping cart. You fill all three by hand in each product's settings.

With this extension, the same blocks fill themselves by rules, and you can add more blocks on category pages, in the customer account, in blog posts and in custom positions.

chevron-down chevron-right

Why do I need related products at all?

Related products raise the average order value. Shoppers often forget an item they meant to buy or don't know which accessories fit, and a short list of relevant products helps them find it.

The analytics then show which blocks bring orders, so you can drop the ones that don't.

chevron-down chevron-right

Is there a free way to show automatic related products in Magento 2?

Magento Open Source has no automatic option: related, up-sell and cross-sell products are linked by hand for each product. Adobe Commerce includes Related Product Rules, which link products by catalog conditions.

This extension adds what neither does out of the box: products picked from real orders and views (bought together, also bought, viewed together, recently viewed), extra positions on category, account and blog pages, and revenue analytics for each block.

chevron-down chevron-right

How does the extension choose which products to show?

Each block uses a rule you set up. The rule takes products from a source (bought together in one order, bought by the same customers, viewed together, recently viewed, or the whole catalog) and narrows them with conditions, for example the same category or attribute value as the current product, or a price range.

There is no machine learning involved. Behavior-based sources rank products by how often they were bought or viewed together, so the result is predictable and you can always see why a product appears. See the selection rules guide for details.

chevron-down chevron-right

How does the extension calculate revenue per block?

When a shopper places an order, it is credited to the last related products block they clicked. The block gets the value of only those ordered items it showed (row total with tax, minus discounts), without shipping and without the other items in the cart.

The report also shows impressions, clicks and orders for each block. There is no A/B testing: you compare blocks by these numbers.

chevron-down chevron-right

Does the extension use my existing orders, or start from zero?

It uses the orders and product views your store already has. By default, it looks at the last 365 days, and you can change the period in the settings. Run the reindex once after installation, and the behavior-based blocks are filled straight away. The data is updated each time the index is rebuilt, so schedule a regular reindex, for example nightly.

In a new store without history, start with catalog rules (the same category or a similar price) until enough orders come in.

chevron-down chevron-right

Does the extension slow down product pages?

Blocks are rendered on the server from a prebuilt index, so a page doesn't recalculate order history on every view, and pages with blocks work with full page cache. Click and impression tracking runs as separate lightweight requests and can be turned off for each store view.

chevron-down chevron-right

Is the Automatic Related Products extension compatible with GraphQL?

Yes. GraphQL support comes as a separate package, mirasvit/module-related-graph-ql, which you install with Composer next to the main extension. It lets a headless storefront request the blocks and their products and send click and impression tracking.

chevron-down chevron-right

Can I add related products to emails sent by the Follow Up Email extension?

Yes. In a Follow Up Email trigger, choose any active related products block as the source of recommended products. The email then shows the products that block would pick for the items in the order or cart.

chevron-down chevron-right

Can I manage related product blocks through an API?

Yes. The extension has a REST API for blocks, selection rules and block analytics, so you can create and update them from your own tools. See the extension manual for the endpoints.

chevron-down chevron-right

Does the Automatic Related Products extension work together with the Layered Navigation extension?

Yes, they work independently. Layered Navigation filters the products in the category listing, while a related products block on a category page picks its products by its own rule. The block doesn't change when a shopper applies filters.

chevron-down chevron-right

Can I show related products on the home page or other CMS pages?

Yes, with the related products widget. On a page without a current product, such as the home page, the block can show products from a catalog rule or recently viewed products (a store-wide list for guests and cached pages). Sources based on the current product (bought together, also bought, viewed together) need a product page, category page or cart.

chevron-down chevron-right

Can a block show only products that match the current product?

Yes. Add a condition to the rule that compares an attribute with the current product, for example the same brand, collection or category. The block then shows only products that share that value with the product on the page.

chevron-down chevron-right

What is the inventory status of products shown as related?

By default, blocks show only products that are in stock and available for sale. If your store displays out-of-stock products in the catalog, each block has its own Exclude out of stock option, which also applies to the native related, up-sell and cross-sell products shown in that block.

chevron-down chevron-right

Is it possible to place two blocks of related products at the same position on the page?

Yes, in most positions. The block with the higher priority (the lower number) goes first. Turn on Ignore subsequent blocks if you want the next block to appear only when the first one has nothing to show.

Inside a native Magento block (related, up-sell or cross-sell), only one extension block is displayed. To show several blocks, use another position, for example Product Page | Content Bottom. See it on the demo.

chevron-down chevron-right

Can I always show specific products next to the automatic picks?

Yes. Link those products to the main product as native related, up-sell or cross-sell products, and turn on the option to show assigned products first in the block. The block shows them at the top and fills the remaining places by its rule.

chevron-down chevron-right

Can CSS or the style of a related products block be modified?

Yes, in two ways.

You can edit the template and style files of the extension (default and "bulletproof" templates) in your theme. Back up your changes before updating the extension.

You can also add styles in the admin panel without editing files: go to Stores > Configuration > Mirasvit Extensions > Developer > CSS Settings > Additional CSS Styles. These styles apply to all blocks at once; a separate style for each block isn't possible there.

Flush the Magento cache after each change.

chevron-down chevron-right

Is the extension translated?

Yes. Besides English, the extension includes translations into 15 languages: Arabic, Chinese (Simplified), Czech, Dutch, French, German, Italian, Japanese, Polish, Portuguese (Brazil and Portugal), Spanish, Swedish, Turkish and Ukrainian.

Changelog
Version 1.5.5Oct 5, 2026
Fixed recommendation blocks built on recently viewed products showing every shopper the same store-wide list (issue #354). The recently-viewed data merged the browsing of all customers into one pool, so a logged-in customer was recommended products based on what other people had looked at. The data is now kept per customer, and on pages that are not served from the full-page cache (for example, the cart), a logged-in customer now gets recommendations based on their own browsing. On cached product and category pages, and for guests, the block still uses the store-wide data so it never comes up empty. Personalizing those cached pages is planned for a later release. Rebuild the Related Products Index after upgrading for this to take effect.
Fixed product views of registered customers not being reliably limited by the Recently viewed in the last days setting (Stores > Configuration > Mirasvit > Related Products > Indexing) when recently-viewed data was rebuilt. The period was applied only to guests' views at that step. It now applies to registered customers' views the same way.
Version 1.5.4Sep 29, 2026
Fixed recommendation blocks built on recently viewed products showing nothing once a store had collected a lot of browsing history (issue #349). When the recently-viewed data was rebuilt, the extension took an arbitrary 1,000 product views from the store's history and only then dropped those older than the Recently viewed in the last days setting (Stores > Configuration > Mirasvit > Related Products > Indexing). On a store with a long history, those 1,000 were often all old views, so every one was discarded and the recently-viewed data came out empty. The extension now keeps only views inside that period and takes the newest 1,000 of them, so these blocks are filled from shoppers' current browsing again.
Version 1.5.3Sep 28, 2026
Fixed recommendation-block revenue being rounded to the nearest 10 cents. Every revenue figure the extension recorded was stored with only one decimal place, so an item worth 21.98 was saved as 22.00. Because a block is now credited only with the items it showed, this error landed on every attributed order and, with .99 pricing, mostly pushed the Revenue in the Product Blocks grid and in the performance report upwards. Revenue is now stored to the cent. Figures recorded before the upgrade keep their already-rounded values. ⚠️ bin/magento setup:upgrade changes column value of table mst_related_analytics and column revenue of table mst_related_analytics_aggregated from decimal(12,1) to decimal(12,4); no data is migrated.
Version 1.5.2Sep 25, 2026
Hardened the condition builder on the admin Rule form: only a real rule condition type is loaded when a condition row is added. An unknown or malformed condition type now just adds an empty row instead of raising an error.
Fixed a product block ignoring its own Sort By setting when Mirasvit Sorting is installed. Sorting's own ranking scores were put ahead of the block's order, so products usually came out in Sorting's order instead of the one set on the block (for example, by price). Now the block's attribute sort (and Random) always decides the order. A block sorted by one of Mirasvit Sorting's criteria is still ordered by that criterion.
Fixed an error at checkout caused by recommendation-block analytics. If recording which block led to the sale failed (for example, because of an unreadable stored click record), the shopper saw an error even though the order had already been placed. Now the order always goes through: the failure is written to the Magento log, and the block simply gets no credit for that order.
Fixed an error page when opening, saving, duplicating or deleting a Product Block or Rule that no longer exists (for example, from an old bookmark or a link to a deleted record). The admin now sees "This block no longer exists." / "This rule no longer exists." and is returned to the grid.
Fixed an error when saving a Product Block with a custom layout position selected but no position entered.
Version 1.5.1Sep 22, 2026
The extension passes Magento Marketplace's automated code checks again, so it can be packaged and published there — a piece of internal code added in 1.4.1 was rejected by the packaging build and left 1.4.1 and 1.5.0 undistributable. Nothing about how blocks are chosen or displayed changes.
Fixed a recommendation block being credited 0 revenue for a grouped product it had shown — the limitation noted in 1.5.0. A grouped product is never ordered as itself: the shopper buys its associated products, and those reach the order under their own IDs, so the sale the block had driven matched nothing on the order. A block that showed a grouped product is now credited with the associated products the shopper bought from it, so Orders and Revenue for that block in the Product Blocks grid and in the performance report reflect those sales. Bundles were already credited correctly and are unaffected.
Reasons to choose Mirasvit
Client focusing and satisfaction

These are our primary. A major portion of our new clients come from referrals from our existing clients. Our professional team of developers, marketers and support staff have invested the best knowledge and experience in the field into our work, so you know you can come back to us again and again.

Remarkable support

One year free and high quality support. We go to great lengths to provide maximum satisfaction with every module you have purchased in our store. By helping you with installation, configuration, answering your every question, we do all our best to eliminate any possible problems.

Risk-free Investment

30-days money back guarantee. If you are not satisfied with our automatic related products extension performance for any reason, we provide a full refund.

Constant improvements and upgrades

We constantly add new features to all our modules, and are always interested in hearing your opinion and implementing your suggested features in our future developments.

Comprehensive Documentation

We provide an expanded user guide for every aspect of our automatic related products extension, so you can find answers for all your burning questions.

Unencrypted source code of our products

You can customize automatic related products extension according to your needs and requirements.

Usability and Performance

The Module is easy to install and upgrade, just follow our step-by-step user guide. Additionally, the extension is ready to use with the Hyvä theme.

Ready for Magento Cloud

No core modifications. The automatic related products extension has been tested in a Magento Cloud environment and is fully compatible with it.

Loading...