Skip to main content
Card class: HeroCategory: Ecommerce Platform

At a glance

Total discount value as a percentage of total revenue. Over-reliance on discounts trains customers to wait for sales and erodes brand value. This is the single most common margin killer in ecommerce: a 30% discount on a 40% gross-margin product collapses contribution to 14%. The card answers the question “are we earning revenue or buying it?”, and the answer is decisive when the figure crosses 40%.
What it countsSum of all discount amounts (cart-level + line-level + free-shipping concessions) divided by sum of order totals, expressed as a percentage. Computed across the current 30-day period. Includes promo codes, automatic discounts, loyalty redemptions, and gift card redemptions where applied as discount.
Sample typeBackend API data from BigCommerce orders, refreshed on the standard data refresh.
Why discount dependency mattersDiscounts are the fastest growth lever and the slowest growth killer. In the short term, discounts boost order volume and revenue. In the long term, they (a) train customers to delay full-price purchases, (b) erode margins compounding monthly, (c) attract a deal-driven cohort with poor LTV. Stores above 40% discount dependency are typically operating at break-even or worse on the discounted orders, with new acquisition cost compounding the loss.
Reading the value(1) Below 10%: low discount reliance, healthy brand pricing. (2) 10-20%: typical ecommerce baseline (sale events, abandoned-cart codes, loyalty). (3) 20-30%: heavy promotional cadence; investigate margin impact. (4) 30-40%: discount addiction territory; brand pricing power eroding. (5) Above 40%: alert state; the store is structurally dependent on discounts to drive conversion.
Currencypercent.
Time window30D vsP.
Alert triggerdiscount_dependency > 20 (BAD threshold at 40%).
Sentiment keydiscount_dependency (LOWER_IS_BETTER in SentimentClassifier; GOOD ≤ 20%, BAD ≥ 40%).
Rolesowner, finance, marketing

Calculation

discount_dependency (%) = SUM(orders.discount_amount) ÷ SUM(orders.total) × 100

WHERE order_date IN [today - 30d, today)
AND payment_status IN ('paid', 'captured', 'completed')
Discount amount includes: cart-level promo codes, automatic discounts, line-level discounts, free-shipping concessions converted to monetary value. Excludes: gift card redemptions (these are settlement-method, not promotional), loyalty point redemptions where treated as payment.

Worked example

A UK-based BigCommerce fashion store, discount dependency on Wednesday 15 May 26.
PeriodTotal revenueTotal discount appliedDiscount dependencySentiment
Current (15 Apr - 15 May)£549,142£00.0%Performing Well
Previous (16 Mar - 15 Apr)£585,795£72,56012.4%Performing Well
90D average£1,632,000£142,4008.7%Performing Well
Year-over-year (May 25)£510,200£41,8308.2%Performing Well
Discount dependency: 0.0% for the current period (well below the GOOD threshold of 20%). The card flags as Performing Well, but the bigger story is in what changed. What the discount dependency reading is telling us:
  1. The current period has zero discount applied. This is unusual, the store typically runs 8-12% discount dependency. Likely the merchant ended a promotional cycle and has not started a new one.
  2. Strategic context. Stores oscillating between 0% (no promo running) and 15-20% (promo running) are operating in a healthy “calendar pulse” pattern. Stores stuck above 25% continuously are in discount addiction. This store’s 90-day average of 8.7% with periodic 12-15% peaks is healthy.
  3. What the 0% reading enables operationally. The merchant can run a targeted promotional cycle in the next 30 days without overshooting the discount dependency threshold. A 15% off sitewide for 7 days would lift dependency to roughly 5-6% across the next 30D window, well within healthy.
  4. Why discount dependency above 40% is structurally dangerous:
    • Margin compression. A 40% discount on a 60% gross-margin product collapses contribution to 20%. Below 40% gross-margin product, the discount creates negative contribution.
    • Customer training. Customers learn the cycle and time purchases for sales. Full-price conversion drops permanently within 6-12 months of sustained heavy discounting.
    • Brand erosion. Premium positioning erodes; competitive shift to value-based competition.
    • Acquisition cost compounding. Discounts attract deal-driven cohorts with worse LTV; CAC and LTV both deteriorate.
  5. Recovery playbook for stores above 40% dependency:
    • Phase 1 (month 1-3): cap promotional depth, not frequency. Cut top-end discount from 50% to 30% but keep the cadence. Revenue holds; margin recovers.
    • Phase 2 (month 4-6): introduce loyalty-based segmentation. VIP customers see 25% off; new customers see 10% off. Targeted, not broadcast.
    • Phase 3 (month 7-12): reduce frequency. Move from monthly sales to quarterly events. Build pricing-power through scarcity.
    • Result: dependency drops from 50% to 25-30% over 12 months; gross-margin recovers 5-10 percentage points; LTV improves as deal-driven cohort churns.
  6. Cross-reference with related cards:
    • aov_trend, falling AOV with rising dependency = discount-driven volume at the cost of basket size.
    • repeat_rate, falling repeat rate with rising dependency = deal-shoppers replacing core customers.
    • revenue_trend, discount-driven revenue growth is a known anti-pattern.
The diagnostic flow:
  1. Read dependency %. Above 30% warrants investigation; above 40% triggers alert.
  2. Check 90D pattern: oscillation around 10-15% is healthy; sustained above 25% is addiction.
  3. Pair with margin metrics to understand financial impact.
  4. Plan recovery in phases, depth before frequency.
Rapid-response playbook:
Time horizonAction
First 1 hourRead dependency. Compare against 90D average and YoY.
First weekIdentify the top promotional cycles by depth and reach.
First monthCap top-end discount depth.
Quarter 2Introduce loyalty-based segmentation.
Quarter 4Reduce frequency to quarterly events.

Sibling cards merchants should reference together

CardWhy merchants reach for it
aov_trendDiscount cycles distort AOV.
bc_aov_discountAOV with vs without discount applied.
revenue_trendDiscount-driven revenue is short-term not durable.
repeat_rateDiscount addiction erodes repeat rate.
bc_revenue_by_brandBrand-level discount exposure.
bc_margin_by_brandMargin impact by brand.
bc_product_marginPer-product margin under discount.

Reconciling against the vendor’s own dashboard

Where to look in BC: Marketing → Discounts; Analytics → In-Store Insights → Marketing. Why our number may differ:
ReasonDirectionWhat to do
Discount type inclusion. BC may report only coupon discounts; Vortex IQ aggregates coupons + auto-discounts + free-shipping concessions.Vortex IQ higherConfirm BC view includes all discount types.
Period boundary. BC defaults to calendar month; Vortex IQ uses 30D rolling.VariableMatch periods.
Gift card treatment. Some merchants count gift cards as discount; Vortex IQ does not.BC may differConfirm classification.
Cross-connector: complement with klaviyo.klv_revenue_per_recipient to see whether email-driven discounts are dominating dependency. Quick rule: when disputes arise, check inclusion of free-shipping and auto-discounts first.

Known limitations / merchant FAQs

Q: Our dependency is 0% this month. Did discounts stop working? Probably not. It usually means a promotional cycle ended and the next has not begun. Check bc_aov_discount to see whether AOV with-discount vs without-discount differs meaningfully, if not, you have headroom to run a campaign without crossing the threshold. Q: We’re at 35% dependency consistently. Is that bad? It’s the warning zone. 35% sustained over 6+ months means: (a) margins are 5-10 percentage points below where they could be, (b) customer LTV is eroded because deal-shoppers dominate the cohort. Recovery takes 12 months but is achievable via the phased playbook above. Q: Black Friday / Cyclical sales pull our dependency above 40%. Should we worry? For 1-2 months per year (BFCM, end-of-season), brief spikes above 40% are expected and not concerning. Sustained above 40% across 6+ months is concerning. The threshold is set for the steady-state baseline, not the seasonal peak. Q: Free shipping isn’t really a discount. Why is it counted? Because it has the same financial effect: shipping you would have charged is now subsidised by the merchant. If you offer “free shipping over £50” as a permanent default, that is structural pricing not promotional, and it should not count, but if you toggle free shipping on/off as a promotional lever (“free shipping this weekend”), it is a discount. Q: We use loyalty points. Are those counted? Configurable per profile. By default, points-redeemed-as-payment are excluded (treated as customer’s earned credit, not merchant discount). Points-redeemed-as-discount-on-current-order are included. Confirm the setting in profile config. Q: We’re a luxury brand and our dependency is 5%. Is that good? Yes, luxury and premium positioning typically run 5-10% dependency, mostly through abandoned-cart recovery codes and loyalty milestones. Dependency below 5% is achievable for established brands with strong pricing power. Q: Our dependency is rising as we grow. Is growth requiring more discounts? Common pattern. As the easy demand is captured, marginal acquisition gets more expensive, and discounts become the default lever. The sustainable response is to invest in retention and product/brand differentiation, not to keep raising discounts. Track LTV per cohort to see whether the discount investment is paying back. Q: How does this card work for B2B stores? B2B typically uses negotiated pricing rather than promotional discounts, so discount dependency may understate the effective price concession. For B2B-heavy stores, complement with margin tracking (bc_margin_by_brand, bc_product_margin) to see net effective pricing.

Tracked live in Vortex IQ Nerve Centre

Discount Dependency is one of hundreds of KPI pulses Vortex IQ tracks across BigCommerce 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.