Docs/Summer Upsell/In-cart upsell

Cart widgets

In-cart upsell

Inline

The In-Cart Upsell renders inside the cart — page or drawer — under the line items. It's less aggressive than a popup but visible to every cart visitor, so the lift compounds quickly even with modest per-session conversion.

Layouts

Three layouts, switched on the Design tab: Carousel (default), Stack and Grid.

In-cart upsell rendered on the cart page under the line items

In-Cart Carousel

Default

Compact horizontal carousel under the cart line items with image, title, price, variant picker and Add button per card. Products already in the cart are left out automatically. Switch to Stack (one product per row) or Grid (2×2) on the Design tab.

  • Visible to every cart visitor — compounding daily impressions.
  • Excludes products already in the cart automatically.
  • Shows the discounted price next to the original when a campaign discount is enabled.

Best for: Stores with a wide range of complementary products — beauty, lifestyle, accessories — where shoppers benefit from comparing options inside the cart.

How to create an In-Cart Upsell campaign

A

In the Summer Upsell admin

  1. 1 Click Create Campaign → under Cart Page pick In-Cart Upsell.
  2. 2 Offer name (e.g. Cart — Coffee accessories).
  3. 3 Trigger: Any cart (shows for every cart), Specific products (default — only when one of the selected products is in the cart) or Specific collections.
  4. 4 Product source: Specific products, Automated recommendations or Summer AI powered by ChatGPT.
  5. 5 Pick the offer products.
  6. 6 Optional: enable the discount.
  7. 7 Design tab: layout, template, Title (default You might also like), Subtitle, Button Text (default Add).
  8. 8 Click Publish. The Test campaign in store checklist runs (campaign active, products available, app embed enabled, widget block added) — fix anything red, then click Publish campaign.
B

In the Shopify theme editor

  1. 1 Open Online Store → Themes → Customize.
  2. 2 Switch to the Cart template.
  3. 3 Click Add block under the cart line items section.
  4. 4 Pick ✨ Summer: In-Cart Upsell from the Apps section.
  5. 5 Click Save. On most themes the widget also places itself under the items in the cart drawer automatically.
Field Type Description
Offer name Text Internal label only — used to find the campaign in the admin. Customers never see it.
Trigger Radio All products, Specific products (default) or Specific collections. Decides where the widget is eligible to render. Cart widgets use Any cart and Post-Purchase uses Any order instead of All products.
Trigger products / collections Picker Shown for the Specific options. Pick the products or collections that should fire the widget.
Product source Radio Specific products, Automated recommendations or Summer AI powered by ChatGPT (credit-based; every plan includes credits). See Upsell sources.
Offer products Picker Shown when Specific products is selected — click Add Products and pick the products the widget will recommend.
Discounts Dropdown No discount, Use Summer Upsell discount functions (Recommended), Use discounts that are dynamically created or Use an already existing discount code. See Discounts for how each mode works.
Type / Value Dropdown + number Product discount (each offer item) or Order discount (the whole order), and the amount as % or a fixed amount in your store currency.
Discount code Text Optional for Summer discount functions (creates a code-based discount the widget applies automatically); required for existing discount code.
Combination Checkboxes Whether the discount can combine with product, order and shipping discounts.

Design tab

Every campaign opens on the Offer tab. The Design tab next to it controls how the widget looks on the storefront. The same set of controls is reused across nearly every widget type, so once you learn it on one campaign the rest are familiar. A live preview on the right updates as you change settings — switch it between desktop, mobile and full size.

Field Type Description
Layout Dropdown Shown on widgets that have more than one layout (Cross-sell, Upsell, In-Cart Upsell, Product Add-on). Switches the layout without recreating the campaign.
Widget Title / Button Text Text Heading shown above the widget and the label on its Add buttons. For Classic FBT, Bundle, Popup, In-Cart Upsell, Cart Popup and Post-Purchase you set them here; for Upsell, Cross-sell, FBT Full Width and Product Add-on they live on the Language tab (default language block).
Subtitle Text Optional line under the title (e.g. Customers also bought these).
Templates Visual picker 27 ready-made themes: Modern Clean, Ink → Slate, Slate → Ocean, Espresso → Sunset, Blossom → Crimson, Teal → Ocean, Forest → Teal, Ocean → Glacier, Sunset → Crimson, Lilac → Denim, Cherry Blossom, Piggy Pink, Fresh Mint, Baby Blue, Sand, Lavender, Honey → Amber, Vanilla → Cream, Royal → Violet, Sunset Orange, Moonlit Asteroid, Amin, Celestial, Witching Hour, Frost, Quepal and Sublime Light. Picking a template sets the button style, card border and every color below at once — then fine-tune anything you want.
Background (optional) Toggle + color Give the widget its own background color instead of inheriting the page background.
Border Radius Dropdown Sharp (Square) or Curvy (Rounded) corners on cards and buttons.
Image Fit Dropdown Cover (crop to fill), Contain (fit inside, may show whitespace), Fill (stretch to fit).
Font family Dropdown Your Theme Font (inherits from your theme), Inter, Roboto, Montserrat, Poppins, Playfair Display, Libre Baskerville, Oswald, Plus Jakarta Sans.
Typography sizes Number (px) Title weight, Button font size, and individual sizes for Product Title, Price and Compare price. Set the compare size smaller than the price size for a clean strike-through look.
Colors Color picker Primary color, Product Title color, Price color and Compare price color. Override any single value after picking a template.

Tip: Click any template to seed every color at once, then nudge the individual swatches. Faster than building a palette from scratch.

Language tab

The Language tab holds the storefront copy for the widget. The Default language block is always there; click Add another language to add any locale your Shopify store has published and translate the title, button text and other storefront strings for it. Default text is pre-filled in English, Spanish, French, Arabic, Turkish and German. A locale you don't add falls back to the default language.

Where it shows

  • The cart page, where you add the block.
  • The cart drawer on most Online Store 2.0 themes — the widget detects the drawer's line-item list and renders under it.