Skip to main content
Card class: Non-HeroCategory: Ecommerce Platform
Discounted-order AOV vs full-price-order AOV, exposes whether promos cannibalise margin.

At a glance

Two AOV figures side-by-side: orders that used a discount code or automatic discount vs orders that didn’t. Tells you whether promotions are growing baskets or just cutting margin.
What it countsTwo parallel calculations: AVG(totalPrice WHERE discountCode IS NOT NULL OR totalDiscounts > 0) and AVG(totalPrice WHERE discountCode IS NULL AND totalDiscounts = 0). The card surfaces both numbers and the spread between them.
VAT / tax treatmentBoth sides inherit taxesIncluded mode of the store; comparable apples-to-apples.
ShippingIncluded (sits in totalPrice).
DiscountsThe discount-side reflects post-discount totals; the spread between full vs discounted AOV understates the gross-line-item gap.
RefundsNOT deducted on either side.
Cancelled / voided ordersIncluded if Shopify indexed them.
CurrencyMulti-currency arithmetic without FX. Filter to one currency for clean reads.
Channels / sourcesAll channels. POS often has manual discounts that look like discount-orders here. B2B with contracted pricing technically counts as “discounted”.
Time window30D (default 30D rolling)
Alert triggerNone; descriptive comparison.
Rolesowner, marketing

Calculation

Calculated automatically from your Shopify data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

Worked example

A US activewear DTC brand on Shopify Plus, runs WELCOME10 + monthly seasonal codes. 30D window 12 Apr 26 to 12 May 26.
CohortOrdersAOVNote
Discounted orders4,280$112WELCOME10, FRIENDS25, TRAINING20 codes
Full-price orders6,150$87No code, no automatic discount
All orders10,430$97Blended
Discount uplift = $112 - $87 = $25 per discounted order, +28.7%
Six things to notice:
  1. Discounted orders are larger. 112vs112 vs 87 = customers using codes spend 28.7% more. Common pattern; codes act as bundling triggers (people add items to qualify, or use the code on bigger pre-planned purchases).
  2. The naive read is wrong. “Discounted AOV is higher” doesn’t mean “discounts grow basket”. The gap reflects code self-selection: customers who plan a £100 purchase look up codes; impulse buyers don’t. Codes don’t cause the larger basket; they attract the larger-basket cohort.
  3. The margin question. A WELCOME10 (10% off) on a 112order=112 order = 11 discount. If product margin is 50%, customer gross margin per order goes from 43.50(full43.50 (full 87) to 44.50(discounted44.50 (discounted 112 - 1111 - 56 COGS). Marginally better. But the comparison should be: would the customer have bought at 87withoutthecode?Formostreturncustomers,yes;thebrandeffectivelygaveaway87 without the code? For most return customers, yes; the brand effectively gave away 11.
  4. First-time buyer cohorts are different. New-customer code redemptions are usually true incremental; the customer wouldn’t have bought without it. Existing-customer code redemptions are mostly cannibalistic.
  5. Stacked codes inflate the discount-AOV. If your store allows code stacking, the inflation in discounted-AOV is over-counted; customers stacking 3 codes appear in the discount cohort but their $-discount is much higher.
  6. The spread shrinks during sales. During a 25%-off site-wide event, the full-price cohort shrinks (everyone uses the code) and the spread becomes meaningless. Use this card outside major-promo windows for clean reads.

Sibling cards merchants should reference together

The discount-vs-full-price comparison is one slice. The companions:
CardWhy pair it with AOV with/without Discount
Average Order ValueThe blended cousin. Mathematical relationship: AOV = (discount_AOV × discount_orders + full_AOV × full_orders) / total_orders.
Total Discount UsedThe £-cost of the discount-cohort. Pair to compute net margin per cohort.
Top Discount CodesDrills into which codes drove the discount cohort.
Discount % of RevenueThe ratio version; helps frame the discount-cohort spend in context of total revenue.
Repeat Customer RateCohort overlap: discount-buyers often skew first-time; repeat-buyers skew full-price.
New CustomersCohort overlap; new customers heavily use first-order codes.
Discount Over TimeTrend cousin; spike in discount cohort tied to specific promo events.

Reconciling against the vendor’s own dashboard

Where to look in Shopify Admin: Shopify doesn’t expose a direct discount-vs-full-price AOV comparison; reconstruct from:
  • Analytics → Reports → “Discounts”: shows discount-code usage and value. Use to identify the discount-cohort population.
  • Orders → Filter by “has discount”: order list scoped to discount-cohort. Sum totals and divide by count for AOV.
  • Reports → Sales attributed to first-time vs returning customers: tangentially useful, since first-time customers use codes more.
Why our number may legitimately differ from a manual reconstruction:
ReasonDirectionWhy
Definition of “discounted”EitherWe flag any order with totalDiscounts > 0 OR a discount code. Shopify reports may use just code-based or just automatic-discount-based depending on the report.
B2B contracted pricingTheirs may differWe treat B2B price-list discounts as “discounts”; Shopify Plus reports may treat them as separate price-tier orders, not discounts.
Shipping discountsWe includeShipping-only discount codes contribute to the discount cohort here; some Shopify reports separate shipping-discounts.
Time zoneBoundaryUTC vs store time zone.
Sync lagOurs lower for “today”Most-recent 5 to 15 minutes of orders may not be in.
Cross-connector reconciliation:
CardExpected relationshipWhat causes legitimate divergence
klaviyo.kl_revenue_from_email (when connected)IndirectKlaviyo flow emails often carry discount codes; the discount cohort here usually contains a high share of email-attributed orders.
google_ads.gads_promo_attributed_revenueIndirectPaid-search-driven promo orders contribute to the discount cohort.

Known limitations / merchant FAQs

Why is my discount AOV higher than full-price AOV? Self-selection. Customers planning a larger purchase actively look up codes; impulse and small-basket buyers often don’t bother. The code didn’t cause the larger basket; the larger-basket-intent customers found the code. Should I take this as proof discounts are profitable? No. The right comparison is: would the discount-cohort customers have bought at full price without the code? For first-timers, often no (incremental). For repeats, often yes (cannibalistic). The blended profitability depends on the cohort mix. My discount AOV is lower than full-price AOV. What’s that mean? Either:
  1. Mass-market codes (BLACK20, sale-wide events) attract impulse buyers who would have spent less anyway. Heavy first-time-buyer skew on small baskets.
  2. Free-shipping-threshold codes that customers use to buy small things just below the threshold (use code instead of adding filler). The code subverts the threshold rather than complementing it.
  3. Affiliate / influencer codes with broad audiences and low-intent traffic. The cohort behaves like cold-acquisition.
How can I tell if a specific code is profitable? Pair this card with Top Discount Codes and segment by code. For each code:
  1. Compute average $-discount per redemption (code rate × code AOV).
  2. Compute incremental orders (redemptions that wouldn’t have happened without the code; estimate via attribution data).
  3. Net profitability = incremental_orders × avg_margin_per_order − total_discount_cost.
Most welcome codes are profitable; most existing-customer reactivation codes are not. Why does discount AOV jump during sale events? Because the full-price cohort shrinks dramatically (everyone uses the site-wide code), the discount cohort takes over. The card becomes less informative during major sales. Filter the window to exclude sale weeks for clean reads. My subscription store, do recurring billings count? Yes. If the customer applied a code on the original subscription order, every recurring billing inherits the discount and contributes to the discount-AOV cohort. Subscription brands often see persistent discount-AOV cohorts because of this propagation. Can I segment this by first-time vs returning? Not directly on this card. But pair with Repeat Customer Rate and New Customers. First-time discounted orders should be roughly equal to first-time orders (most first-timers use the welcome code); returning discounted orders are more nuanced. Action playbook for using this card:
  1. If discount-AOV >> full-price-AOV by 20%+: codes attract premium-basket buyers. Lean into bigger bundle codes (“Save 20% over $200”).
  2. If discount-AOV ≈ full-price-AOV: codes are doing nothing for basket size. Either reposition (welcome-only) or sunset.
  3. If discount-AOV << full-price-AOV by 15%+: codes are cannibalising small baskets. Tighten code usage rules (one-time-per-customer, minimum-basket).
  4. Audit code-stacking allowance: stacking inflates the discount-AOV without delivering corresponding margin.
  5. Segment by code source: welcome codes vs reactivation codes vs influencer codes have very different economics. The blended view hides which.

Tracked live in Vortex IQ Nerve Centre

AOV with/without Discount is one of hundreds of KPI pulses Vortex IQ tracks across Shopify and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.