Skip to main content
Card class: HeroCategory: Ecommerce Platform

At a glance

Percentage change in revenue versus the previous period. Revenue is the ultimate health indicator. Flat or declining revenue needs immediate attention, even 0% growth means the store is losing ground to inflation, while a 5% drop sustained over a quarter compounds to a 14% revenue gap by year-end. The card answers one question every BC owner asks every morning: are we growing, holding, or sliding?
What it countsThe percentage change in total order revenue between the current period (default 30 days) and the immediately preceding period of the same length, computed from BigCommerce orders with paymentStatus = paid (or equivalent successful states). Negative values signal contraction; positive values signal growth.
Sample typeBackend API data from BigCommerce orders, refreshed on the standard data refresh. Does not include cancelled or refunded orders in the period totals.
Why revenue trend mattersRevenue is the most direct measure of commercial health. A 10% revenue drop sustained over 3 months means roughly 27% total compounded loss. Owners and CFOs read this card every morning because it is the single number that says whether the underlying business is healthy. Every other metric (AOV, order count, conversion rate) is downstream of what this card reports.
Reading the value(1) Above 5%: solid growth, likely above ecommerce typical. (2) 0-5%: holding ground but losing real value to inflation. (3) -5% to 0%: contraction; investigate immediately. (4) Below -5%: alert state; this triggers BAD threshold and signals the store is sliding fast enough to threaten liquidity if sustained. (5) Compare against prior 90-day rolling trend to distinguish a one-off blip from a sustained trajectory change.
Currencypercent change.
Time window30D vsP (current 30 days vs. preceding 30 days; configurable per profile).
Alert triggerrevenue_trend < 0 (BAD threshold at -5%). Anything below 0 means the period went backwards.
Sentiment keyrevenue_trend (TREND_BASED in SentimentClassifier; GOOD ≥ 0%, BAD ≤ -5%).
Rolesowner, finance, operations

Calculation

revenue_trend (%) = (current_period_revenue - previous_period_revenue) ÷ previous_period_revenue × 100

current_period_revenue  = SUM(orders.total) WHERE order_date IN [today - 30d, today)
                          AND payment_status IN ('paid', 'captured', 'completed')
previous_period_revenue = SUM(orders.total) WHERE order_date IN [today - 60d, today - 30d)
                          AND payment_status IN ('paid', 'captured', 'completed')
Edge cases:
  • If previous_period_revenue is 0 (new store), the trend is reported as n/a rather than infinity.
  • Cancelled and refunded orders are excluded from both period totals.
  • Orders pending payment at the period boundary are excluded; they re-enter the calculation in the next ingestion cycle.

Worked example

A UK-based BigCommerce fashion store, revenue trend reading on Wednesday 15 May 26 (30D vs P).
MetricCurrent period (15 Apr - 15 May)Previous period (16 Mar - 15 Apr)Change
Order count2,1032,408-12.7%
Average order value£261.09£243.27+7.3%
Gross order revenue£549,142£585,795-6.3%
Refunds£0£4,520n/a
Net revenue£549,142£581,275-5.5%
Revenue trend: -6.3% (BAD threshold breached at -5%; card flags as Action Needed in red). What the trend is telling us:
  1. The headline is negative and breaches the alert threshold. A -6.3% decline over 30 days, if sustained, compounds to roughly -54% over a year. The card flags this as Action Needed and the dashboard surfaces it in the morning review.
  2. The composition story matters as much as the headline. Order count dropped sharply (-12.7%) while AOV rose (+7.3%). This is a classic “fewer-but-bigger orders” pattern, often caused by: (a) a discount campaign in the previous period that pulled forward demand without retention, (b) a traffic acquisition issue (paid ad cuts, organic traffic loss, app store delisting, GMB issue), (c) seasonality not yet matched by the period-over-period comparison.
  3. What is driving the order count drop, in priority order:
    • Cross-reference psi_perf_score_summary and crux_lcp_p75, site speed regressions reduce conversion and traffic retention.
    • Cross-reference gads_total_spend and gads_roas, paid traffic cuts directly reduce order volume.
    • Cross-reference ga_traffic_trend, traffic source shifts surface in this card before they hit revenue.
    • Cross-reference gsc_clicks_trend, organic search erosion lags by 1-3 weeks.
  4. Why AOV is rising while orders fall. Likely the discount campaign in the prior period pulled in lower-value, deal-driven shoppers. With the campaign ended, only higher-intent (typically higher-AOV) shoppers remain. AOV gain does not offset order loss at this magnitude (-12.7% orders × +7.3% AOV ≈ -6.3% revenue, exactly matching the headline).
  5. Recommended response, in priority order:
    • Day 1: Confirm whether a paid traffic cut occurred (check ad platform spend logs Mar-May).
    • Day 1-2: Confirm whether a site speed regression occurred (check CrUX trend cards).
    • Day 2-3: If neither traffic nor speed explains it, investigate competitive pricing shifts or category-level demand softening.
    • Day 3-7: Plan a coordinated traffic-recovery campaign. Pull weekly revenue trend daily until the slope reverses.
    • Day 14: Confirm trend slope has flattened or reversed. If still negative at -5%+, escalate to founder-level review.
  6. What to do if the trend reverses on its own. A single -6.3% reading in May may be a comparison artifact: April included Easter promotions; May does not. Compare against the same period last year (year-over-year revenue) before declaring an actionable regression. Use Vortex Mind to investigate the cause if YoY also shows decline.
The diagnostic flow:
  1. Read the headline %. Below -5% is an alert; below -10% is critical.
  2. Decompose into orders × AOV. Identify which leg is moving.
  3. Cross-reference traffic, conversion, and speed cards for upstream causes.
  4. Confirm against prior 90D trend and YoY to rule out seasonality.
Rapid-response playbook:
Time horizonAction
First 1 hourRead the trend %. Decompose into orders × AOV.
First dayCheck traffic, ads, speed for upstream causes.
First weekPlan recovery campaign or rollback if cause is identified.
Day 14Confirm trend slope has flattened or reversed.

Sibling cards merchants should reference together

CardWhy merchants reach for it
aov_trendAOV trend; one of the two legs of revenue trend (orders × AOV).
order_count_trendOrder count trend; the other leg of revenue trend.
total_revenueAbsolute revenue value; complements the trend %.
refund_rateRefunds dampen net revenue; high refunds masquerade as a trend issue.
ga_traffic_trendUpstream traffic; revenue follows traffic with a lag.
psi_perf_score_summarySpeed; site speed regressions cause revenue regressions.
gads_total_spendAd spend changes drive traffic + revenue.

Reconciling against the vendor’s own dashboard

Where to look in the BigCommerce control panel:
  • Analytics → Orders for the order list and totals over a date range.
  • Analytics → In-Store Insights → Revenue for BC’s own period-over-period comparison.
  • Reports → Sales Tax Report when reconciling tax-inclusive vs tax-exclusive totals.
Why the Vortex IQ revenue trend may differ from BC’s own dashboard:
ReasonDirectionWhat to do
Tax inclusion. BC’s dashboard typically shows revenue inclusive of tax; Vortex IQ uses total_inc_tax to align with the merchant’s accounting view.VariableConfirm the BC dashboard is set to the same tax-inclusion mode.
Refund handling. BC’s standard view may include or exclude refunded orders depending on filters; Vortex IQ excludes refunds from period totals.Vortex IQ slightly higherApply the “Excludes refunds” filter in BC analytics.
Period boundary. BC dashboards default to calendar months; Vortex IQ uses 30-day rolling. A 30-day period starting on the 15th differs from a calendar month.VariableUse the same rolling period in BC’s custom date picker.
Time zone. BC uses store time zone; Vortex IQ aligns to the merchant’s reporting time zone defined in profile settings.SmallConfirm time zones match.
Test orders. BC includes test orders in the all-orders view; Vortex IQ excludes them.BC slightly higherApply the is_test = 0 filter in BC.
Cross-connector reconciliation:
  • shopify.revenue_trend, adobe_commerce.revenue_trend: same metric on other commerce platforms.
  • ga_revenue_trend: GA-attributed revenue; divergence between this card and ga_revenue_trend reveals attribution gaps. If BC revenue is up 5% but GA-attributed revenue is down, GA tracking has likely broken.
Quick rule for support tickets: when a merchant disputes the trend, check (1) tax inclusion, (2) refund handling, (3) period boundary, (4) time zone, in that order. 90% of disputes resolve on one of those four.

Known limitations / merchant FAQs

Q: Our revenue trend shows -8% but our BC dashboard shows growth. Which is right? Both are usually right; they are answering slightly different questions. Vortex IQ uses 30-day rolling vs the prior 30 days, excludes refunds, and excludes test orders. BC’s standard dashboard typically uses calendar months and may include refunded gross totals. Apply the same filters in both and the numbers will reconcile. Q: We had a one-off large B2B order last month. Is the trend distorted? Yes, a single anomalous order can swing 30-day revenue by 5-10%. Look at the trend over 90 days alongside, or filter B2B orders out via profile settings. Vortex IQ supports per-channel filtering so you can see the trend excluding B2B. Q: The trend was -10% last week and is +3% this week. Did something fix itself? Probably not “fix itself”, this is the period-over-period comparison shifting. As the rolling 30-day window moves forward by 7 days, both halves of the comparison change. Look at the absolute revenue series (revenue_over_time) for the unsmoothed view; the trend % is a derivative of that series. Q: Our store is seasonal. The trend is always negative in January and positive in June. How do we use this card? Use year-over-year comparison alongside (period-over-period for direction, year-over-year for seasonal context). Many merchants set the alert threshold less aggressively (BAD = -10% instead of -5%) for high-seasonality categories. The threshold is configurable in the Sensitivity tab. Q: When did the trend first go negative? Cross-reference revenue_over_time for the absolute series. The point where the slope changes is when the revenue trajectory shifted. Often the slope changes 2-4 weeks before this card flags red, because the trend is averaged over 30 days. Q: Why is the trend in percent and not in currency? Because percent is the right unit for comparing periods of different absolute size. A merchant doing £10K/month and one doing £10M/month both care equally about a -5% slide. Currency-denominated change is available on total_revenue and revenue_over_time. Q: How does this card differ from ga_revenue_trend? This card uses BC order data; ga_revenue_trend uses GA-attributed revenue. The two should track closely. Persistent divergence (more than ±3 percentage points) usually indicates a GA tracking issue (purchase events not firing, GA4 attribution model mismatch, ad-blocker prevalence). Use the divergence as a tracking-health signal. Q: Is “revenue trend” the same as “growth rate”? Functionally yes. Both express the percentage change in revenue between two periods. “Growth rate” is more common in finance contexts; “revenue trend” emphasises direction over magnitude. The card uses “trend” to align with the dashboard’s “Trends” category. Q: The card says +0% growth, is that good or bad? Bad. Zero growth means losing real value to inflation. With ecommerce typical inflation of 3-5% annually, 0% nominal growth is a 3-5% real decline. The GOOD threshold is set at 0% as the floor, not the goal. Healthy stores should target 5-15% month-over-month growth.

Tracked live in Vortex IQ Nerve Centre

Revenue Trend 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.