The cart upsell bar

What the bar says, how it decides which message to show, and where it mounts.

4 min read

The cart bar is an app embed that renders inside the cart drawer and on the cart page. It re-reads the cart after every add, change or remove.

Messages, in priority order

  • Progress toward the closest tier or set: “Add 1 more to save 15%” with a one-click “+1 <product>” button.
  • Progress toward a cart-amount gift: “Spend €32 more to get Tote free”.
  • A reward waiting: “Your free Tote is waiting” with an Add button (Buy X get Y without auto-add).
  • Unlocked: “You unlocked 20% off” or “Set complete: any 3 for €60”, shown above the progress line when another offer still has progress.
  • Free shipping: “Spend €12 more for free shipping” with its own progress bar, when a free-shipping goal is set in Settings › General. It is the only message when no offer applies to the cart; otherwise it appears as a second line under the offer message.

It respects the same priority as checkout: a product priced by a higher offer is not promised by a lower one. Items excluded from an offer, items already on sale (when the offer skips them) and offers meant for another audience are left out. Texts are editable per language in Settings › Widget text.

Free-shipping goal

MixMaxer does not create the shipping rate. Set the threshold in Shopify (Settings › Shipping and delivery › a rate with a minimum order price) and enter the same amount in MixMaxer › Settings › General › Free-shipping goal. The subtotal is compared before shipping, taxes and discount codes, in the store currency; carts in another presentment currency do not show the line. 0 switches it off.

Requirements

  • Enabled in the theme editor (App embeds) and in Settings › General (Cart upsell bar, Growth and Pro plans).
  • A theme whose cart uses the standard Cart AJAX API (Dawn and every Online Store 2.0 theme does).

Recommended products in the cart

Settings › General › Recommend products in the cart (Growth and Pro) adds a row “Frequently bought with your items” under the bar: up to three products most often bought together with what is in the cart, learned from your orders, each with a price and a one-click Add button. Products already in the cart, sold out or gift cards are never suggested. The list is refreshed on every sync; a store with few orders sees fewer suggestions until pairs accumulate. Texts cart.recsTitle and cart.recsAdd are translatable.

Common problems

The bar shows in the drawer but not on the cart page (or the reverse).

The theme's cart page uses an unusual container. Email support with your theme name; adding a mount point is a small change on our side.

The bar promises a tier that checkout does not give.

This should not happen since the bar follows the Offers list order. If it does, press Re-sync so the storefront data matches the discounts, and tell support which products were in the cart.

The free-shipping line says “unlocked” but checkout charges shipping.

The threshold in MixMaxer differs from the minimum order price of the shipping rate in Shopify, or the rate is limited to certain zones. Make the two numbers equal; MixMaxer only mirrors the number you enter.

More in Storefront


← All articles · Next: Badges on product cards in collections and search · Still stuck? Contact support