Cross-selling, bundles and average order value in PrestaShop

Use related products, quantity discounts, packs and cart rules in PrestaShop. Measure order value, conversion and contribution before expanding an offer.

mypresta.rocks · Updated 11/01/2026

Help customers find compatible products, useful upgrades and clearly priced kits. Use PrestaShop's native pricing and merchandising tools first, then measure whether each offer increases contribution as well as order value.

What we would do

We would start with a compatible accessory or a clearly defined kit that solves a buying problem you can name. Choose the route from the shop you already run: its PrestaShop version, theme, installed recommendation and pricing modules, order history, stock data, carrier and warehouse integrations, markets and customer groups. Agree who in your team will maintain compatibility links, prices and component availability. A curated association can be enough; more automation is useful only when it closes a measured gap.

For changes to modules, templates, pricing or stock behaviour, use a staging copy with the same relevant configuration, isolated from live payments, customer emails and warehouse exports. Rehearse the offer from product selection through checkout and the resulting order and stock records. Switch in an agreed window after the checks pass, keep the previous configuration ready to restore, and reconcile orders already placed if you withdraw the offer.

If you need buying-journey diagnosis before choosing an offer, the PrestaShop B2C Conversion & Revenue Audit reviews the consumer journey from discovery through confirmation and provides a ranked plan of fixes.

Define the numbers before changing offers

Average order value is revenue divided by the number of eligible orders. Define revenue consistently: tax included or excluded, shipping included or excluded, discounts, refunds, currency conversion, order status and date basis.

For example, 100 orders averaging €50 produce €5,000. At €60 they produce €6,000, a 20% increase, provided the order count and all other assumptions stay the same. A price or merchandising change can also change conversion, costs and returns.

Inspect the exact dashboard or Stats module you use. Native metrics have different definitions. Some core sales calculations use tax-exclusive paid totals minus shipping, while other KPIs use tax-exclusive paid totals. Dashboard average cart value depends on its sales and order figures. Check the installed report before comparing it with analytics.

Record a baseline over a representative trading period, including order count and traffic source. A fixed 30-day period can be useful, but it does not guarantee a reliable sample. Account for seasonality, promotions and product mix.

Contribution per order = net sales
  - product cost
  - payment fees
  - fulfilment and shipping cost
  - promotion and expected return costs

Revenue per visitor = eligible revenue / eligible visitors

Use consistent accounting treatment so you do not subtract the same discount or shipping cost twice. A higher AOV can still produce less contribution per visitor.

Choose relevant cross-sells and upsells

A cross-sell adds an item beside the original purchase: running shoes with socks or insoles, a camera with a compatible memory card, a phone with a case. An upsell replaces the original choice with a higher tier, such as a 512 GB model in place of a 256 GB model.

Use compatible accessories, consumables, refills and complete-the-look combinations. Verify fit, version, size and stock. An unrelated promotion does not explain why the customer needs it. Give each pairing a concrete reason, such as the correct connector or a refill for that model. A slow-moving item belongs in a bundle only if it still helps the buyer; scarce stock and protected-margin lines may be better sold separately.

A tier-comparison table can show the actual feature and total-price differences. Combinations with price impacts may already solve a simple variant choice. Do not present a daily equivalent as the amount payable: show the full price and the calculation assumptions.

  • Start with a small, relevant set, such as two or three suggestions, and test the count.
  • Keep prices and savings accurate.
  • Let the customer dismiss or ignore the offer.
  • Keep the primary product and purchase controls easy to use.
  • Avoid forced additions, fake deadlines and invented prior prices.

Set free-shipping thresholds from your costs

Use Shipping > Preferences for the global price or weight threshold. In ordinary core range-price calculation, global free-shipping checks precede normal carrier range pricing. A carrier configured as entirely free is a separate earlier case. External shipping modules can change the final result.

Choose a trial threshold from basket distribution, product contribution, destination and freight costs. There is no universal percentage above AOV that makes it profitable. For example, a €59 threshold against a €45 average basket is a hypothesis to test, not a recommendation for every shop.

If you show a remaining-spend message, calculate it from the same eligibility rules as checkout, including discounts, currency, tax basis, carrier and destination. A live progress bar needs presentation logic from your theme, module or customization. The threshold setting itself does not create a sitewide bar.

Test just below, exactly at and above the threshold with every relevant carrier, voucher and customer group. If a message promises free delivery but checkout charges freight, compare its qualifying subtotal and destination with the carrier calculation before adjusting the threshold. Include a bulky or remote-destination basket when those orders have different costs. Measure conversion and shipping contribution as well as orders clustering near the threshold.

Use native quantity prices and dated promotions

In a product's pricing section, add a specific price with a starting quantity and a fixed or percentage reduction. Illustrative tiers could be two units at 10% off and five at 20% off, but cost the offer before using those values.

Applicable specific prices supply quantity_discounts to the product presentation. The theme must render the quantity table. Display available quantities controls stock-quantity visibility; it does not control discount-table prominence.

Catalog price rules select eligible products by conditions such as category and pricing context. A quantity tier does not pool units of different products across that category; for an offer based on several different products in the basket, use suitable cart rule conditions. Check their quantity conditions and interaction with existing specific prices. Test the intended quantity with the actual combinations and customer group, then reduce the quantity again: verify the selected unit price, the displayed tier and the final cart total agree.

Native specific prices and catalog price rules support start and end dates for a one-off promotion. Recurring weekend calendars, stock-age automation and other dynamic rules require additional functionality. For module-specific recurring schedules, use the Smart Dynamic & Scheduled Discounts help page.

Build gifts and conditional discounts with cart rules

Under Catalog > Discounts, create a cart rule. Its conditions decide eligibility, and its actions provide a discount, free shipping or a gift product. For "buy the camera, get the cleaning kit", require the camera under Conditions with a product selection, and choose the cleaning kit under Actions as the free gift.

  1. Define the customer, date window, usage limits and any carrier or product conditions.
  2. Set the minimum amount with the intended currency, tax and shipping treatment.
  3. Select the benefit and check stock for gift products.
  4. Set priority and compatibility with other rules.
  5. Test eligibility and the final order totals with competing offers. Remove a qualifying item, apply a voucher and change delivery context in separate tests; check whether the gift or discount still matches the intended conditions.

The minimum amount is a cart-level threshold. Requiring an accessories-category product does not make that threshold count only accessories spend. A true category-spend threshold needs a rule implementation that calculates that subtotal.

Highlight can expose a voucher suggestion where the theme supports it. It does not calculate a live “spend €X more” message. For value vouchers, review Partial use: it can create a new voucher for the unused remainder when applicable.

A gift is one option to compare with a price cut, not a universally better offer. Include its cost, packing effort and return treatment in the calculation. For broader rule configuration, use the discounts guide.

Build fixed packs and price bundles correctly

OfferNative approachCheck
A named kit with its own listingPack product with components and quantities.Price, tax, stock and shipping.
The same components sold separately tooPack plus individually available components.Inventory shared with individual sales.
A benefit when qualifying items are in the cartCart rule with product and quantity conditions.Eligibility and discount target.
A quantity break on one itemSpecific price or an appropriate cart rule.Quantity and price selection.
Component swapping or mix-and-matchAssess combinations for simple options, or a configurable bundle implementation.Native packs have a fixed component list.

Create a pack under Catalog > Products, choose the pack product type, add components and quantities, then set its own name, photographs, description, SEO fields and price. For a pure kit, prevent individual purchasing through suitable product availability settings without breaking the pack's component handling. For a mixed offer, keep the parts available separately.

In the PrestaShop 9 product form, inspect the Pack section and Pack stock behavior. Tracking can use the pack quantity, components or both. Component-based availability is constrained by component stock when stock management and deny-out-of-stock policies apply. The pack's own out-of-stock policy can permit orders, so no setting guarantees that overselling is impossible. Test concurrent component and pack purchases and any stock integration.

For the camera example, €500 + €25 + €45 + €15 totals €585. A €555 kit saves €30, approximately 5.13%. A 10% reduction would produce €526.50. Another example, €85 separately versus €74.99 together, saves €10.01.

Show genuine current component prices and accurate savings. Check whether the theme already calculates the comparison before entering static text that can become stale. A comparison with current separate component prices is different from a claim about the pack's previous price. Have the wording and any prior-price evidence checked for the markets where you advertise it. There is no universal safe bundle-discount range: account for component costs, fees, freight, packing, returns and displaced individual sales.

Photograph and name the set clearly, such as “Home Office Essentials Kit”. You can plan kits for Christmas, Valentine's Day, back-to-school, summer or Black Friday when the contents and demand fit. A cart-rule expiry ends that rule's benefit. It does not disable a pack listing or reverse a saving baked into its ordinary price; schedule the actual price or product availability separately.

Rehearse shared-stock handling

  1. Record the pack and component quantities, including the exact size, colour or other combination used. Confirm the order identifies the intended components for picking.
  2. Buy a component separately, then check the remaining pack availability. Buy the pack and compare the resulting component and pack quantities with the selected stock behaviour.
  3. Repeat with a limiting component out of stock and with simultaneous pack and individual purchases. Include the warehouse or stock connector in the rehearsal.
  4. Use separate test orders for a cancellation, a full refund and a partial return. Agree the expected stock movement for each case, including whether goods come back and whether restocking is selected, then check the quantities restored and the records the integration exports before approving the offer.

Work through the accessory and kit contribution

Use the camera prices above to compare the choices. For this illustration, treat them as tax-exclusive sales figures with no further discounts; in your shop, convert prices to your chosen accounting basis first. Enter actual product costs and order costs, including fees, fulfilment, shipping subsidy and expected promotion and return costs. The stock examples assume stock management is enabled.

Customer choiceSales in this exampleContribution calculationStock effect to confirm
Camera alone, the starting case€500€500 less camera cost and order costs.Camera stock decreases; accessory stock remains.
Camera plus a recommended compatible card€525, from €500 + €25€525 less camera and card costs and revised order costs.Camera and the selected card stock decrease.
Camera kit with card, bag and cleaning kit€555€555 less all component costs and revised order costs.With component-based tracking, all included component quantities decrease as tested above.

The card adds €25 of sales, but its extra contribution is that amount less the card cost and any increase in order costs. If it changes the parcel or makes the order eligible for free shipping, include that change. A recommendation can raise order value while reducing contribution.

The kit adds €55 of sales compared with the camera alone, before the costs of the card, bag, cleaning kit and changed handling. Compared with a customer already buying all components for €585, however, the €555 kit gives up €30 of sales. Any packing or fulfilment saving must be demonstrated, not assumed. Compare with the purchase the customer would otherwise have made, rather than counting every kit sale as an accessory win.

Test placement, loyalty and post-purchase offers

Use product pages for compatibility information and comparisons, and test cart suggestions when they help complete the purchase. No placement is universally highest-converting. Checkout additions need particular care because they share space with payment and delivery decisions.

Confirmation pages can recommend refills or complementary items. Before sending promotional follow-up emails, check each recipient's marketing eligibility and honour opt-outs under the rules of the markets you serve. A recommendation is separate from a paid transaction. Adding a paid item after checkout needs supported payment authorization, order and stock handling, invoice treatment, and a shipping decision, or it should create a separate order.

Do not assume an already ordered cart can be passed through normal payment validation again. If you promise combined shipping, confirm the fulfilment process can still combine the goods.

Loyalty benefits may encourage repeat purchases, but inspect the installed program's actual rules. The historical official module is loyalty, not ps_loyalty, and should not be assumed to be a current native solution for PrestaShop 9.

Loyalty Discounts System uses qualification tiers and configured benefits such as discounts, shipping and customer terms; points-earning multipliers are a different feature. Module-specific configuration belongs in the Loyalty Discounts System help page.

Evaluate offers with conversion and margin guardrails

Change one major offer at a time or use a controlled experiment. Keep exposure, device, traffic source and eligible products comparable.

  • AOV and items per order: use aligned report definitions.
  • Attach rate: define whether the denominator is exposed sessions, eligible orders or all orders.
  • Revenue and contribution per suggestion: identify useful pairings after costs and refunds.
  • Conversion, abandonment and contribution per visitor: detect an offer that raises order value while losing profitable orders.
  • Bundle outcomes: compare conversion, contribution and later repeat purchases with a suitable comparison group.
  • Threshold outcomes: check order distribution and actual freight subsidy.

Analytics order values depend on your implementation and may omit refunds or blocked tracking. Reconcile against the order system rather than treating one analytics tool as automatically more accurate. A sale attributed to a recommendation block is not proof that the block caused an additional purchase; use the comparison group and contribution calculation to assess that.

Retain offers that meet your contribution and customer-experience goals. Remove irrelevant suggestions and check page performance, accessibility and mobile usability after changing a recommendation block.

What to ask your developer or agency

  • Which existing setting, rule or theme block can meet the requirement, and which installed modules already touch the same price, stock or display behaviour?
  • Can you demonstrate the exact product combinations, customer groups, currencies and carriers we sell through, with the resulting order lines and warehouse records?
  • How will we connect offer exposure and additions to completed orders and refunds, distinguish attributed sales from extra sales, and supply the costs needed to calculate contribution?
  • Which configuration will you restore if the offer fails, who will make that decision, and how will you handle orders or vouchers created while it was active? Withdrawing an offer does not undo those transactions.

Questions owners ask

Do I have to discount a bundle?

No. You can test a complete, compatible kit at the sum of the component prices when convenience is the reason to buy. State what is included and avoid describing it as a saving if there is none.

What happens if a customer returns only part of a kit?

Agree the refund and stock treatment before launch. Check how the order records component values, how your team calculates a partial refund and where the returned component is restocked. Do not assume a pack line behaves like separately purchased items in your order and warehouse tools.

Can my supplier's stock feed manage pack availability?

Check which product and combination quantities the feed updates, whether its next import overwrites quantities changed by sales, and how it reconciles components shared by packs and individual listings. Include a feed update in the stock rehearsal before relying on its availability.

Should staff purchases count in the experiment?

Exclude test orders and identify staff purchases before comparing results. Separate consumer and wholesale segments where their prices and buying patterns differ, so a change in customer mix does not masquerade as an improvement in the offer.

Loading...
Back to top