A growing store ends up with three versions of the truth. The storefront reports sales. The ad platforms report revenue they take credit for. The accountant reports a P&L, correctly, three weeks after the month everyone has stopped thinking about. None of the three is wrong, and none of them is the number you needed on the day you were deciding something.
ORVX is the financial layer between them: operational enough to be current, rigorous enough to be believed.
One definition per number
The failure mode in ecommerce analytics is almost never a wrong formula. It is the same word meaning different things in different places — "revenue" that includes refunds on one screen and excludes them on another, "repeat customer" that means two orders here and two line items there.
ORVX has one implementation of each definition, and every surface calls it:
- Realized revenue — delivered orders only, at the price paid.
- COGS — delivered units × landed unit cost, per variant where variant cost exists.
- Gross profit and gross margin — against realized revenue, never against orders placed.
- Contribution after advertising — gross profit less the ad spend attributable to it.
- Net profit and net margin — after operating expenses.
- MER — whole-business revenue ÷ total ad spend.
- Repeat customer — two distinct delivered orders, over the customer's whole history, never two line items in one checkout.
Those definitions are not configurable, and that is the point. A metric a merchant can redefine is a metric that cannot be compared to last quarter.
Periods that mean what they say
Every figure is scoped to a stated window, and the window travels with the number. Inventory velocity is a trailing 30 days; dead stock is 90; repeat rate is lifetime unless it is explicitly labelled period-scoped. These are published alongside the figures rather than assumed, because "days of stock" computed over different windows on two screens is two metrics sharing one name.
Where the data quality shows itself
A financial model built on incomplete inputs should say so rather than present a confident wrong answer. ORVX surfaces the gaps directly:
- Products with no cost recorded, which make gross profit an overstatement.
- Delivered orders with no customer identifier, which make customer-level analysis less reliable than order-level analysis.
- Inventory that Shopify and your own production counts disagree about — shown as a conflict with both figures, never silently averaged.
A number that knows what it does not know is worth more than one that does not.
Generated interpretation, deterministic arithmetic
ORVX includes an AI layer that explains what a month means — which product moved, what the margin change is attributable to, what is worth doing about it. It is given figures the engine has already computed and is never asked to calculate them, so its explanations can be wrong in emphasis but not in arithmetic.
No customer's name, phone number or email address is ever included in what it receives. Customer information is aggregated to counts before it leaves the server.
Who this is for
Operators running a store past the point where a spreadsheet keeps up — typically once there are enough SKUs that the catalogue cannot be held in your head, or enough ad spend that attribution starts to matter. If your monthly question is "we grew, but did we make more money?", this is the layer that answers it.