How to Optimize Magento 2 Category Pages with Dynamic Product Sorting
A Magento 2 jacket category can open with sold-out styles in the first row while the coats a shopper can actually buy sit on page two.
Dynamic product sorting fixes that by changing product order with rules or store data. Category membership, which decides the products that belong in a category at all, is a separate control.
The problem is common. Baymard’s 2025 Product List UX benchmark rated product list usability “mediocre” or worse on 78% of the mobile sites and 58% of the desktop sites it reviewed.
The benchmark isn’t Magento-specific and doesn’t measure how sorting affects conversions, but it gives Magento merchants good reason to audit their category pages.
Here’s how to do that with the controls Magento 2 already has, the tools each edition adds, and a testing plan that protects SEO and measurement.
Start with Magento 2’s native sorting controls
Every Magento 2 category has a Display Settings tab that governs product order. In Adobe’s documentation, Available Product Listing Sort By sets the options shoppers see, with Position, Name, and Price as the defaults.
Default Product Listing Sort By sets which of those applies when the category first loads.
Position follows the order assigned to products inside the category. Name and Price sort by those attributes.
Check both the order a shopper sees on arrival and the order after they change the sort dropdown, since each depends on a different setting.
One exception matters for Adobe Commerce stores. Adobe notes that neither sort setting applies to the Live Search Product Listing Page Widget, so stores using that widget need to review its ranking controls separately.
Know what your Magento edition includes
Magento Open Source and Adobe Commerce share the native controls above, but Adobe Commerce adds two merchandising tools that Open Source stores don’t get.
Visual Merchandiser is exclusive to Adobe Commerce. It lets merchandisers drag products into position or apply an automatic sort, and by default it can sort by stock level, age, color, name, SKU, and price.
An automatic sort overrides the current order and resets any drag-and-drop positions, so decide which method owns each category before you start.
Visual Merchandiser’s timing also needs planning. Adobe’s category rules documentation states that products are matched and assigned to a rule when the category is saved.
If a product’s stock status changes and the category uses Automatic Sorting, someone has to click Save Category again. Treat that save as part of your stock workflow rather than expecting continuous updates.
Category Merchandising in Live Search, available with Live Search 3.0.0 or higher, offers two ranking types:
- Intelligent ranking: Adobe AI reorders products using storefront behavior data. Adobe lists five algorithms: Recommended for You, Most Viewed, Most Purchased, Most Added to Cart, and Trending.
- Manual ranking: Merchants override the intelligent order to control where specific products appear, without changing which products belong to the category.
Match Magento 2 extensions to the job
Third-party extensions fill gaps in both editions, but each one solves a different merchandising problem.
Keep four controls separate when comparing them: category membership, default product order, the sort options shoppers can choose, and per-visitor reranking.
- Category membership: Amasty Visual Merchandiser adds products to virtual categories automatically based on conditions you set.
- Ranking logic: Mirasvit Improved Sorting turns product attributes into ranking factors scored from -100 to 100 and combines them into sorting criteria.
- Shopper sort options: WeltPixel Category Sort By adds options such as Newest Arrivals, Best Selling, and Top Rated, and lets admins reorder or disable them.
- Stock-aware ordering with scheduled boosts: SmartListings from Moogento ranks in-stock products above out-of-stock ones and supports campaign boosts with start and expiry dates.
For the jacket category, the last row is the relevant one. The SmartListings product page states that boosts never override in-stock-first ordering, that scores are precomputed in the background, and that it supports Magento Open Source and Adobe Commerce 2.3.5 through 2.4.8.
Whichever tool you shortlist, evaluate it against your edition, the ranking data it needs, your theme, when the order refreshes, and how easily you can set exceptions.
Build stock-aware rules for each category
Choose one primary objective per category before combining ranking signals.
In the jacket example, the goal is to show purchasable styles first while giving selected in-stock campaign products a temporary lift. A workable rule order is:
- Purchasable products rank ahead of products with no purchasable variant.
- Selected in-stock campaign products receive a boost that expires on a set date.
- Everything else follows a predictable fallback order, such as existing Position values.
Write the intended order down before configuring anything, so you can explain the result and spot unexpected changes.
Then write test cases for the situations that break simple rules:
- Configurable products: A parent can show as in stock when only one size remains. Adobe documents that Visual Merchandiser’s low-stock sort combines the stock of all salable child products into the parent, so decide whether that meets your availability standard.
- Campaign expiry: Confirm the boost ends on schedule and the product returns to its fallback position.
- Fully sold-out categories: Check the fallback order, since a stock rule has nothing left to separate.
- New products: Check where items with no sales or behavior data land.
- Promoted products that sell out: Confirm whether stock status or the promotion wins.
Stock-aware ordering moves unavailable products down the list but doesn’t necessarily hide them. Review Magento’s product visibility settings separately.
Validate Magento category pages before rollout
Load each changed category on mobile and desktop as a guest and confirm the intended order. If the tool personalizes results, repeat as a returning shopper with browsing history.
Apply a layered navigation filter, switch the sort dropdown to Price and back, and page through the results. Repeat after a full-page cache refresh, and after a Save Category if you use Visual Merchandiser.
Next, protect how search engines crawl the category, a step that belongs on any ecommerce SEO checklist. Google’s pagination guidance recommends:
- Unique URLs: Give every page in a paginated category its own URL, such as a ?page=n parameter, and never use URL fragments for page numbers.
- Crawlable links: Link each page to the next with a standard <a href> link.
- Self-canonicals: Give each page its own canonical URL instead of pointing every page to page one.
To keep a page out of the index, use a noindex meta tag or HTTP header and leave the page crawlable. Google doesn’t support noindex in robots.txt, and a blocked page hides the tag from Googlebot.
Finally, confirm measurement before comparing variants. Google’s GA4 ecommerce guide specifies view_item_list when a shopper sees a list and select_item when they choose a product from it. Define how you’ll calculate list click-through, add-to-cart, and purchase rates, and record the category and variant consistently. Account for traffic source, promotions, stock changes, and device mix, keep the sorting configuration fixed during the test, and save the previous category settings so you can roll back cleanly.
Looking forward
The first row of a Magento category page shapes what shoppers look at next. Start with the native Display Settings, add Visual Merchandiser or Live Search if you run Adobe Commerce, and bring in an extension only for the specific gap you’ve identified.
Whatever mix you choose, write the rules down, test the edge cases, and confirm that pagination, indexing, and GA4 events still work before you measure anything. A category that consistently shows buyable products first is a better starting point for every test that follows.

















