Skip to content

Magento Marketing Tools — Related Products, Upsells, Cross-Sells and Email Reminders

DodaTech Updated 2026-06-27 12 min read

In this tutorial, you'll learn Magento marketing tools: setting up product relations (related products, up-sells, cross-sells), email reminders for abandoned carts and wishlists, managing product reviews, URL rewrites for SEO, search terms, and analyzing marketing reports.

What You'll Learn

  • Setting up related products, up-sells, and cross-sells per product
  • Configuring the "Customers who bought this also bought" rule
  • Creating email reminder rules for abandoned carts and wishlists
  • Managing product reviews with moderation and rich snippets
  • Creating custom URL rewrites for SEO
  • Analyzing search terms and configuring search synonyms
  • Using marketing reports to track performance

Why It Matters

Marketing is how you convert browsers into buyers. Related products increase average order value. Abandoned cart emails recover lost revenue. Product reviews build trust and improve SEO. URL rewrites prevent broken links when products change. Understanding Magento's built-in marketing tools lets you run sophisticated promotions without expensive third-party extensions.

Real-World Use

An electronics store sees 60% of shoppers abandon their cart. An abandoned cart email sent 1 hour after abandonment recovers 12% of those carts, adding $15,000 per month. On product pages, cross-sells suggest batteries and cables (adds $8 per order). Up-sells suggest the premium model (adds $25 per order). Product reviews with rich snippets improve click-through rate from search results by 18%. URL rewrites ensure old product links redirect correctly after a catalog restructure.

Learning Path

flowchart LR
  A["Content Management"] --> B["Marketing Tools
You are here"]:::current B --> C["Theme Development"] C --> D["Layout XML & Templates"] classDef current fill:#38bdf8,color:#0f172a,stroke-width:2px

Product Relations

Magento provides three types of product-to-product relations. Each appears in a different place on the storefront and serves a different purpose.

Related Products appear on the product page. They are items the customer might be interested in alongside the current product. The customer can select related products and add them to the cart together with the main product.

Up-Sells appear on the product page, typically above the add-to-cart button. They encourage the customer to buy a higher-end version of the product they are viewing.

Cross-Sells appear in the shopping cart page. They suggest additional items the customer might want to add before checking out.

Setting Product Relations

Open a product in edit mode. Each relation has its own section.

Related Products:

Product: Canon EOS R6 Camera

Related Products tab > Add Related Products
  Search: "Canon RF 24-105 lens"
  Search: "SanDisk 128GB SD card"
  Search: "Camera bag"
  Check: Select these products

  Rule: (optional) Check "Use Related Products Rule" for dynamic relations

This configuration appears on the frontend as:

Product: Canon EOS R6 Camera

Related Products:
  - Canon RF 24-105 lens (+ Add to Cart checkbox)
  - SanDisk 128GB SD card (+ Add to Cart checkbox)
  - Camera bag (+ Add to Cart checkbox)

Up-Sells:

Product: Canon EOS R6 Camera

Up-Sells tab > Add Up-Sells
  Search: "Canon EOS R5 Camera" (higher-end model)
  Search: "Canon EOS R3 Camera" (professional model)

Cross-Sells:

Product: Canon EOS R6 Camera

Cross-Sells tab > Add Cross-Sells
  Search: "Camera cleaning kit"
  Search: "Extra battery pack"
  Search: "Camera strap"

Dynamic Relations Rule

In addition to manually selected products, Magento can automatically show related products based on purchase history.

Products > Related Products tab
  Use Related Products Rule: Yes

Configure the rule at Marketing > Promotions > Product Relations (Adobe Commerce).

The rule can use:

  • Product attributes (same brand, same category)
  • Purchase history (customers who bought this also bought)
  • Price range similarity

Database Storage

Product relations are stored in three MySQL tables:

-- Related products
SELECT * FROM catalog_product_relation
WHERE parent_id = 123 AND relation_type = 'RELATION';

-- Up-sells
SELECT * FROM catalog_product_relation
WHERE parent_id = 123 AND relation_type = 'UP_SELL';

-- Cross-sells
SELECT * FROM catalog_product_relation
WHERE parent_id = 123 AND relation_type = 'CROSS_SELL';

Email Reminders

Email reminders are available in Adobe Commerce. They send automated emails triggered by customer behavior.

Creating an Email Reminder

  1. Go to Marketing > Communications > Email Reminders.
  2. Click Add Email Reminder.
  3. Configure:

Rule Information:

Name: Abandoned Cart - 1 Hour
Description: Send reminder 1 hour after cart abandonment
Status: Active
Assigned to: Website (select one or all)
From Date: 2026-01-01
To Date: 2026-12-31

Conditions (when to send):

If ALL conditions are TRUE:
  Shopping Cart is Abandoned
  AND Abandoned Cart Duration >= 1 hour
  AND Cart Total >= 25

Actions (what to send):

Email Template: Abandoned Cart Reminder
Send Email To: Customer Email
Copy To: marketing@example.com
Send Email From: Store Email

Reminder Types

  • Abandoned Cart — Customer added items but did not complete checkout
  • Birthday — Customer's birthday (requires birthday attribute)
  • Wishlist Shared — Customer shared their wishlist
  • Product Review — Customer purchased but did not review

Sending Reminders

Reminders are queued and sent by cron:

# The cron job that processes email reminders
bin/magente cron:run --group email_reminder

Schedule the cron to run every 15 minutes for timely reminders.

Product Reviews

Product reviews let customers rate and review products. They build social proof and improve SEO with rich snippets.

Review Moderation

  1. Go to Marketing > User Content > Pending Reviews.
  2. Review each submission.
  3. Approve or reject.

Reviews include:

  • Rating (1-5 stars, configurable per attribute)
  • Summary (headline)
  • Review text (detailed opinion)
  • Customer name and email (hidden from public)
  • Date submitted

Review Configuration

Configure reviews at:

Stores > Configuration > Catalog > Catalog
  > Product Reviews
    > Enable Reviews: Yes
    > Allow Guest to Write Reviews: Yes/No
    > Review Email Template: (optional notification)

Rich Snippets

Magento outputs structured data for product reviews:

<div itemscope itemtype="http://schema.org/Product">
  <span itemprop="name">Canon EOS R6</span>
  <div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
    <span itemprop="ratingValue">4.5</span>
    <span itemprop="reviewCount">127</span>
  </div>
</div>

This markup helps Google show star ratings in search results.

URL Rewrites

URL rewrites manage the mapping between storefront URLs and Magento paths. They are essential for SEO.

Automatic Rewrites

Magento automatically creates URL rewrites when you:

  • Create or rename a product (changes the URL key)
  • Create or rename a category
  • Change the category tree structure

These rewrites prevent broken links. The old URL automatically redirects to the new one.

Custom URL Rewrites

Create manual redirects for marketing campaigns or migrated content:

  1. Go to Marketing > SEO & Search > URL Rewrites.
  2. Click Add URL Rewrite.
  3. Configure:
Create URL Rewrite: Custom

Request Path: old-product-page (the URL being requested)
Target Path: products/new-product-slug (the destination)

Redirect: Permanent (301) or Temporary (302)
Description: Redirect from old product URL to new

301 (Permanent): Search engines transfer ranking from old URL to new. Use for permanent moves.

302 (Temporary): No ranking transfer. Use for seasonal redirects or A/B testing.

Viewing All Rewrites

The URL Rewrite grid shows all rewrites:

ID | Request Path | Target Path | Redirect Type | Store View
1  | old-product  | new-product | 301           | Default
2  | summer-sale  | /catalog/summer-collection | 301 | All

Search Terms

Search terms let you analyze what customers search for on your store.

  1. Go to Marketing > SEO & Search > Search Terms.
  2. View the search query grid:
Search Query | Count | Results
wireless headphones | 1,245 | 15
blue dress           | 892   | 42
expensive            | 345   | 0 (no results)

Redirecting Search Terms

If a search term returns no results, redirect it to a category or page:

  1. Open the search term.
  2. Set Redirect URL to:
Redirect URL: /catalogsearch/result/?q=wireless+earbuds
Display in Results: No

Search Synonyms (Adobe Commerce)

Create synonym groups so different search terms return the same results:

Marketing > SEO & Search > Search Synonyms

Synonym Group:
  Terms: laptop, notebook, portable computer
  Scope: All Store Views

A search for "notebook" now also returns products tagged "laptop."

Marketing Reports

Magento provides built-in marketing reports. Access them at Reports > Marketing.

Products in Cart: Shows which products are in active carts. Helps identify popular items.

Search Terms: Most searched terms. Use this data to create synonym groups and add missing products.

Abandoned Carts: Number and value of abandoned carts per day. Track recovery efforts.

Viewed Products: Most viewed products. Combine with low purchase rate to find items that need better presentation or pricing.

Bestsellers: Products ranked by quantity sold. Use for homepage featured sections.

Low Stock: Products approaching minimum stock levels. Prevents stockouts.

Order Total Report: Revenue by date range. Track campaign performance.

Reports > Marketing > Abandoned Carts

Date Range: Last 30 days
Filter: Subtotal > 0

Example output:
  Total abandoned carts: 4,567
  Total abandoned value: $182,680
  Recovery rate target: 10% = $18,268 potential recovery

Common Mistakes

  1. Not setting up product relations. Many merchants launch their store and never configure related products or cross-sells. This leaves easy revenue on the table. Always set up at least cross-sells for your top 20 selling products.

  2. Using 302 redirects for permanent URL changes. A 302 redirect tells search engines the change is temporary, so they keep indexing the old URL. Use 301 for any permanent change. Only use 302 for truly temporary situations (seasonal campaigns).

  3. Ignoring the pending reviews queue. Unmoderated reviews sit in the pending queue for weeks. Customers who took time to write a review feel ignored. Check the pending reviews queue weekly and approve or respond promptly.

  4. Not analyzing search terms. Customers search for products you may not carry. Review search terms monthly to identify missing products, add synonym groups, or redirect failed searches to relevant categories. This directly improves conversion rate.

  5. Sending too many email reminders. Sending an abandoned cart email 30 minutes after abandonment plus another at 24 hours is effective. Sending one every hour is spam. Configure reminder rules with reasonable delays and frequency limits.

Practice Questions

  1. What is the difference between an up-sell and a cross-sell? Answer: An up-sell appears on the product page and encourages the customer to buy a higher-end or more expensive version of the current product. A cross-sell appears in the shopping cart and suggests complementary items the customer might add before checkout.

  2. How does a 301 redirect differ from a 302 redirect in terms of SEO? Answer: A 301 redirect is permanent. Search engines transfer the ranking power (link equity) from the old URL to the new one and update their index. A 302 redirect is temporary. Search engines keep the old URL indexed and do not transfer ranking. Use 301 for permanent product URL moves.

  3. What is the purpose of search synonyms in Magento? Answer: Search synonyms group related search terms so a search for any term in the group returns results matching all terms. For example, "laptop" and "notebook" are synonyms, so searching for "notebook" shows laptop products. This improves the search experience and reduces "no results" pages.

  4. Challenge: Build a complete marketing Strategy for a fashion store's winter collection launch. Create: 1) Product relations: for each of 10 winter coats, add scarves as related products, premium coats as up-sells, and gloves as cross-sells, 2) An email reminder rule that sends an abandoned cart email 1 hour after abandonment with a 10% discount coupon, 3) A URL rewrite from /winter-collection to /collections/winter-2026 using a 301 redirect, 4) Analyze search terms from the last 30 days and create synonym groups for the top 10 terms, 5) Write a Magento PHP script that programmatically adds cross-sell relationships between two products using the \Magento\Catalog\Model\ProductLink\Management API, 6) Export the marketing report data for abandoned carts and bestsellers from the past quarter using MySQL queries against the report tables.

FAQ

Can related products be automatically generated based on purchase history?

Yes. In Adobe Commerce, you can enable the 'Related Products Rule' on a product. This uses purchase history and product attributes to dynamically suggest related products. In Magento Open Source, related products are set manually per product.

How can I track the recovery rate of abandoned cart emails?

Magento does not provide a built-in abandoned cart recovery report. You would need to use analytics (Google Analytics with campaign tracking parameters in the email links) or a third-party extension to track how many recipients clicked the link and completed the purchase.

Do product reviews affect SEO?

Yes. Magento outputs structured data markup (schema.org/Product with aggregateRating) when reviews are enabled. Google can display star ratings in search snippets, which improves click-through rates. Reviews also generate fresh user-generated content that search engines index.

What happens if I delete a product that has URL rewrites pointing to it?

The URL rewrite still exists and points to the product path. When Magento cannot find the product, it returns a 404 page. Always update or delete URL rewrites when removing products. Use a 301 redirect to a similar product instead of leaving a dead link.

Can I send different email reminders to different customer groups?

Yes. When creating an email reminder rule, you can add conditions to target specific customer groups. For example, send a 15% off abandoned cart email to General customers and free shipping to VIP customers. Use the customer group condition in the rule conditions.

Mini Project

Your task: Build a complete marketing toolkit for an electronics accessories store.

  1. Set up product relations for 10 products:
    • For "Wireless Headphones ($79.99)": related = "Headphone Case ($19.99)", up-sell = "Premium Headphones ($149.99)", cross-sell = "USB Charger ($9.99)"
    • For the remaining 9 products, create logical relations
  2. Create an email reminder rule:
    • Abandoned carts over $30, send after 1 hour and again after 24 hours
    • Template uses a {{< ilink "PHP" }} variable to include the customer's cart contents
  3. Manage reviews:
    • Approve 3 pending reviews
    • Reject 1 review with inappropriate content
    • Verify rich snippet markup is present in the product page HTML
  4. Create URL rewrites:
    • 301 redirect: /old-headphones → /wireless-headphones
    • 302 redirect: /summer-sale → /summer-promotion (for the summer campaign)
  5. Analyze search terms from the search_query table:
    • Identify the top 10 search terms
    • Create 3 synonym groups
    • Redirect 2 "no results" terms to relevant categories
  6. Write a Magento PHP function that uses \Magento\Catalog\Model\ProductLink\Management to add cross-sell links from a given product SKU to multiple target SKUs, and verify the relationships in the MySQL catalog_product_relation table.

What's Next

Now that you understand marketing tools, learn how to customize the storefront look and feel:

Continue to Lesson 21: Theme Development — Luma, blank theme, and theme.xml.

Related lessons:

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro