9 min read
Post-Purchase Upsell: What Shopify Actually Allows
What Shopify actually allows for post-purchase upsells: eligibility rules, fulfillment holds, tracking gaps, and a step-by-step audit before you turn one on.
A post-purchase upsell is an offer that appears right after a customer pays, before they reach the Order status page. The customer taps once to add another item to the same order, with no new card details and no second checkout.
Shopify calls this a post-purchase checkout extension, marked as beta in its own documentation. A development store can use it freely; a live store must request access first.
A post-purchase offer sits at one exact point in the funnel: after payment clears, before the customer reaches the Order status page. We mapped the stages around it, including where shoppers drop off earlier, in our guide to the e-commerce funnel.
What a post-purchase upsell is not
Two things get confused with it. A pre-purchase offer appears during checkout, before payment, and Shopify limits those extensions to stores on a Shopify Plus plan. Post-purchase extensions don't carry that restriction in Shopify's documentation.
The post-purchase page is also not the checkout's own Thank You page. We covered that page's migration deadline separately in our Shopify Thank You page audit, since the two surfaces get mixed up often.
A post-purchase upsell is one of several ways an app can touch a paid order before fulfillment. Address edits are another, and we audited that surface on its own in a separate operations guide.
Where it changes your operations
Shopify places a fulfillment hold on every order running through a post-purchase flow. The hold lifts once the customer reaches the Order status page, or automatically about one hour after the original checkout if they never finish the flow.
Third-party pixels only see the first purchase. They connect through Shopify's web pixel extension API, which reports the initial order value, not whatever gets added afterward. Measure post-purchase revenue in your own order data instead.
Shopify also excludes several order types: gift-card and non-credit-card payments, wallet or installment checkouts such as Apple Pay, Google Pay or Klarna, local delivery orders, and orders with duties or multiple currencies. Orders under $0.50, or outside the Online Store channel, don't qualify either.
Audit before you turn it on
Run this check before you enable any post-purchase upsell, whether you build it yourself or install an app.
- Check your payment method mix from the last 100 orders. Wallet and installment checkouts won't see the offer.
- Confirm the order channel. Only Online Store checkouts qualify for a post-purchase extension; other sales channels skip it.
- Confirm the order floor. Orders under $0.50 are excluded from the flow.
- Plan tracking before launch. Tag accepted post-purchase revenue in your own order data; pixel-based ad tools won't catch it.
- Set your own offer limit inside the Shopify ceiling. A customer can accept at most three post-purchase offers, shown across one post-purchase page.
- Build around the fulfillment hold. An incomplete flow releases it about an hour after checkout, so treat it as a short delay, not a shipping blocker.
Questions worth asking before you pick an app
If you compare apps instead of building the extension yourself, a few questions separate a solid one from a redirect wrapped in marketing copy.
- Does it run through Shopify's native post-purchase extension, or redirect the customer to an outside page? A native extension keeps the same eligibility, hold, and tracking rules described above.
- Can the one-click offer carry its own discount without a new charge? That needs the app to write to the order directly, not just display a product.
- Is the listing still active and supported? Check the listing's last update date and recent reviews before you commit.
Progus Upsell AI is one app built on Shopify's native post-purchase extension type, with one-click offers that can carry their own discount.
What to measure after launch
Track offer acceptance against the three-offer ceiling, not a single accepted or declined flag. Track completion rate against the one-hour hold fallback. Track incremental AOV from your own order tags, not ad pixel reports.
Final Thoughts
A post-purchase upsell is a narrow extension point with a specific rule set, not a generic marketing popup. The eligibility list decides whether most of your orders will ever see it, before any design or copy question matters.
Treat the audit above as a gate, not a formality. If most orders run through wallets or local delivery, a post-purchase offer will reach few customers regardless of the discount. A pre-purchase or cart offer may earn the same sale with fewer exclusions.
FAQ
Does a post-purchase upsell require Shopify Plus?
No. Shopify limits pre-purchase, checkout-step extensions to Plus stores, but its documentation does not apply that same restriction to post-purchase extensions.
Does declining the offer cancel the original order?
No. The original order is already paid and confirmed before the post-purchase page loads, so declining just sends the customer to the Order status page with that order unchanged.
Can a post-purchase upsell add a subscription to the order?
Only if the order already has a shipping address. Shopify blocks adding a subscription through post-purchase when there's no shipping address, as on digital-only or local-pickup orders.
What happens if I install two post-purchase apps?
Shopify renders only one app's post-purchase page per store. Pick the default under your checkout settings, or the two apps will compete for the same slot.
Can one post-purchase flow show more than one offer screen?
You can create only one post-purchase page per app, but Shopify lets you paginate it like a mini app. Offer screens can appear as steps inside it, up to the three-offer limit.