> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vortexiq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Revenue by Hour, Shopify

> Revenue by Hour for Shopify stores. Tracked live in Vortex IQ Nerve Centre. How to read it, why it matters, and how to act on it.

**Metrics type:** [Supporting Metrics](/nerve-centre/overview#metrics-types-explained)  •  **Category:** [Ecommerce Platform](/nerve-centre/connectors#connectors-by-type)

## At a glance

> Revenue by hour-of-day (00 to 23), aggregated across the 30D window. The £-weighted version of [Peak Order Hours](/nerve-centre/kpi-cards/shopify/peak-order-hours); reveals when the business actually earns money.

|                               |                                                                                                                                                        |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **What it counts**            | `SUM(totalPrice) GROUP BY hour(createdAt)` over the 30D window. Each hour-bucket is total customer-paid revenue placed in that hour across the period. |
| **VAT / tax treatment**       | Inherits store's `taxesIncluded` mode.                                                                                                                 |
| **Shipping**                  | Included.                                                                                                                                              |
| **Discounts**                 | Deducted (post-discount).                                                                                                                              |
| **Refunds**                   | NOT deducted.                                                                                                                                          |
| **Cancelled / voided orders** | Included if Shopify indexed them.                                                                                                                      |
| **Currency**                  | Multi-currency arithmetic without FX.                                                                                                                  |
| **Channels / sources**        | All channels. POS sales create daytime humps in store-opening hours; B2B sales typically cluster in office hours.                                      |
| **Time window**               | `30D` (default)                                                                                                                                        |
| **Alert trigger**             | None; descriptive distribution.                                                                                                                        |
| **Roles**                     | owner, 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 UK home-décor DTC brand on Shopify, GMT customers primarily UK + EU. 30D window 12 Apr 26 to 12 May 26.

| Hour-band (UK time) | Revenue      | Share     | Note                                    |
| ------------------- | ------------ | --------- | --------------------------------------- |
| 06:00-09:00         | £14,200      | 4.1%      | Pre-work browse-to-buy                  |
| 09:00-12:00         | £28,600      | 8.3%      | Morning office                          |
| 12:00-14:00         | £42,800      | 12.5%     | Lunch peak                              |
| 14:00-17:00         | £37,400      | 10.9%     | Afternoon coast                         |
| 17:00-20:00         | £58,200      | 16.9%     | After-work peak                         |
| 20:00-23:00         | **£94,300**  | **27.4%** | **Evening peak, primary buying window** |
| 23:00-00:00         | £29,800      | 8.7%      | Late-evening spillover                  |
| 00:00-06:00         | £37,800      | 11.0%     | Overnight (some EU + insomniac UK)      |
| **Total**           | **£343,100** | **100%**  |                                         |

Six things to notice:

1. **Evening dominates revenue more than orders.** The 20:00-23:00 slot is 27% of revenue but only \~22% of order count. Why? AOV is higher in the evening; customers spend more per order when relaxed at home with a cup of tea.
2. **Lunch peak is real but moderate.** 12:00-14:00 is 12.5% of revenue. Sufficient to justify ad-pacing but not the primary target.
3. **The £/order signal varies.** Compute revenue-per-order per hour: evening is \~£68 average, lunch is \~£52. The brand sells fundamentally different baskets to evening customers (premium homewares) vs lunchtime customers (impulse small-ticket).
4. **Email send-time decision.** Send at 17:00-18:00 to capture the after-work peak, NOT 20:00 (peak buy time, when emails get lost in evening inbox-flood). Test 18:30 vs 16:00 for incremental optimisation.
5. **Site-reliability is paramount during 20:00-23:00.** A 30-min outage during this window costs \~\~30% of an evening's revenue (\~\~£15-25k for this brand). Off-peak outages cost an order of magnitude less.
6. **Customer-service staffing should mirror.** Expect order-related queries to peak the next morning (10:00-12:00); staff customer-service accordingly. Most brands under-staff Mon morning despite Sun evening being the heaviest buy window.

## Sibling cards merchants should reference together

Revenue by Hour is the £-side; pair with the count and pattern siblings:

| Card                                                                             | Why pair it with Revenue by Hour                                         |
| -------------------------------------------------------------------------------- | ------------------------------------------------------------------------ |
| [Peak Order Hours](/nerve-centre/kpi-cards/shopify/peak-order-hours)             | Order-count companion. Compare to find AOV-per-hour.                     |
| [Revenue by Day of Week](/nerve-centre/kpi-cards/shopify/revenue-by-day-of-week) | Day-level cousin; combine for specific-cell decisions (e.g. Friday 8pm). |
| [Weekend vs Weekday](/nerve-centre/kpi-cards/shopify/weekend-vs-weekday)         | Aggregated DoW summary.                                                  |
| [Total Revenue](/nerve-centre/kpi-cards/shopify/total-revenue)                   | Aggregate; hour buckets sum to it.                                       |
| [Average Order Value](/nerve-centre/kpi-cards/shopify/average-order-value)       | The implicit AOV-per-hour ratio when paired with Peak Hours.             |
| [Top Discount Codes](/nerve-centre/kpi-cards/shopify/top-discount-codes)         | Promo-driven hourly spikes correlate with email-send times.              |

## Reconciling against the vendor's own dashboard

**Where to look in Shopify Admin:**

> **Shopify Admin → Analytics → Reports → "Total sales over time"** with hourly granularity (Shopify Plus only)

The most direct equivalent. Pick the same window. Hour-bucket totals should match this card to within sync-lag tolerance, allowing for time-zone offset.

Other Shopify Admin views:

* **Live View**: real-time today's-revenue ticker; useful for verifying current-day peaks.
* **Apps like Glew, Polar Analytics**: hourly revenue breakdowns standard.

**Why our number may legitimately differ from Shopify:**

| Reason               | Direction              | Why                                                                          |
| -------------------- | ---------------------- | ---------------------------------------------------------------------------- |
| **Time zone**        | Hour-bucket shift      | UTC vs store time zone. Convert manually for comparison.                     |
| **Refund treatment** | Either                 | Shopify Net Sales adjust for refunds; we show gross.                         |
| **Multi-currency**   | Aggregate distortion   | We don't FX-normalise; per-currency hourly slices are clean, blended is not. |
| **Channel filter**   | Either                 | Reports filtered to "Online Store" only differ from blended.                 |
| **Sync lag**         | Ours lower for "today" | Most-recent 5-15 min may not be in.                                          |

**Cross-connector reconciliation:**

| Card                                                                                       | Expected relationship | What causes legitimate divergence                                                 |
| ------------------------------------------------------------------------------------------ | --------------------- | --------------------------------------------------------------------------------- |
| [`google_analytics.ga_revenue_by_hour`](/nerve-centre/google_analytics/ga_revenue_by_hour) | Should track shape    | GA4 misses 10-25% of orders due to ad blockers; hourly shape close, levels lower. |
| [`klaviyo.kl_revenue_by_send_time`](/nerve-centre/klaviyo/kl_revenue_by_send_time)         | Lagged correlation    | Email-attributed revenue lags send-time by 1-3 hours; pair to optimise send-time. |

***

<details>
  <summary><em>Documentation cross-reference (for agencies running multiple platforms)</em></summary>

  * [`bigcommerce.shp_revenue_by_hour`](/nerve-centre/bigcommerce/shp_revenue_by_hour)
  * [`adobe_commerce.shp_revenue_by_hour`](/nerve-centre/adobe_commerce/shp_revenue_by_hour)
</details>

## Known limitations / merchant FAQs

**Why is the chart in UTC?**
Vortex IQ uses UTC for consistency. Convert by subtracting your customer's primary time zone offset. UK summer = UTC+1; US Pacific = UTC-7/-8.

**My peak revenue hour and peak order hour differ. Why?**
AOV varies by hour. Evening shoppers tend to buy higher-AOV baskets than midday or morning shoppers. The order-peak captures volume; the revenue-peak captures monetary value. Both matter.

**Should I run flash sales at peak revenue hour or peak order hour?**
Generally peak revenue hour is the right target if your goal is total \$. But if you're testing a discount code's adoption rate, peak order hour gives more redemption volume to evaluate.

**Why is overnight revenue meaningful in some windows?**
Three usual reasons:

1. **Customers in different time zones.** UK store getting 11% overnight is mostly EU + insomniac domestic.
2. **Subscription billings**. Recurring orders trigger automatically at billing-day midnight; appears as overnight revenue.
3. **B2B / wholesale** with international buyers placing orders during their workday.

**My multi-region store, can I split the curve by region?**
Not on this card directly. Filter the underlying orders by ship-to country in Shopify Admin for per-region hourly views. Multi-region blending is the main reason hourly curves look "softer" than they should; segmentation usually reveals sharper peaks.

**Why is my Black Friday hourly curve different?**
BFCM and major sale events have completely different hourly distributions:

* **Pre-launch midnight rush**: sales often hit hardest at 00:00 launch.
* **Mid-morning second wave**: when customers wake to news of the sale.
* **Late-night final push**: customers grabbing deals before sale ends.

Don't draw conclusions about normal hourly patterns from BFCM data; exclude the sale week from your 30D window for clean reads.

**Does subscription billing distort my chart?**
Mildly. Subscription billings hit on the original-purchase-time recurring; if many subscriptions started 9am Tuesday, the next billings appear as 9am Tuesday revenue. The pattern reinforces over time.

**Action playbook for using this card:**

1. **Identify peak revenue hour**: that's when ad-spend ROI is highest.
2. **Identify low revenue hour**: experiment with off-peak budget shifts.
3. **Email send-time**: 1-3 hours before peak revenue hour.
4. **Site-reliability monitoring**: monitor most intensively in peak windows.
5. **Customer-service staffing**: lag-staff for the morning following peak hours.
6. **Ops / fulfilment**: pick-and-pack workflow can be timed to absorb the previous evening's order volume by next-morning shipping cut-off.

***

### Tracked live in Vortex IQ Nerve Centre

*Revenue by Hour* 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](https://app.vortexiq.ai/login) or [book a demo](https://www.vortexiq.ai/contact-us) to see this metric running on your own data.
