JB Analytica reference architecture — a published example. The business and every figure on it are invented.

Webshop performance

The webshop's trading year. Every number here is a column defined in a dbt mart and reviewed in a pull request — nothing is computed in this page, and nothing is stored anywhere a code review cannot see it. Architecture says how it is built, and where the data behind it is thinner than it looks.

Net revenue

€329,441

Orders

4,000

Average order value

€86.70

Cancellation rate

5.0%

Net revenue is realised: cancelled orders count as zero, not as revenue. Booked revenue — every order as placed — came to €346,644 over the same year, so cancellations cost €17,203 in revenue that was ordered and never earned. Both columns live on fct_orders, which is why the two numbers can sit side by side without either being a filter somebody has to remember. Cancellations breaks the gap down.

Average order value is realised revenue over orders that were not cancelled. It reads low — about one generated order in nine has no line items at all and so contributes €0, which is an artefact of the synthetic source rather than a fact about the business. Architecture says where else that shows.

Revenue over time

Loading...

The Q4 peak and the upward trend are deliberate: the synthetic generator is configured with growth and seasonality so the reports have something to show that uniform random data never would.

Where the revenue comes from

Loading...
Loading...

Fulfilment

Loading...

This is a reference project by JB Analytica, a data architecture and analytics engineering consultancy in Belgium. It is not a client engagement: the coffee webshop does not exist, and the customers, orders and revenue shown here are generated data. Every line of it is published.

jbanalytica.com Book a scoping call Source on GitHub