All case studies
DTC lifestyle apparel · growth stage

Consolidated Shopify, inventory and customer data into one platform, so merchandising, supply and CX teams worked from the same numbers, not three.

86
Source tables consolidated
98%
Reduction in cross-functional reporting time (5 days to 1 hour)
40+
Business metrics certified and tested in the dbt semantic layer
2 FTE
Analyst capacity reclaimed from ad-hoc reporting work
3 → 1
Source of truth across finance, ops and marketing
Client context

A DTC lifestyle apparel brand in the $20M to $40M revenue range, selling through Shopify and wholesale channels. The team wanted real visibility into the business without stitching spreadsheets every time a question came up from leadership.

The problem

Their data lived in Shopify with supporting bits scattered across the warehouse management system, the email platform, the loyalty app, and a handful of Google Sheets the ops team kept by hand. Pulling anything useful meant CSV exports, VLOOKUPs, and crossed fingers that the numbers matched across reports, and they usually didn't. Finance counted revenue net of returns and discounts; marketing counted gross order revenue; ops counted shipped revenue. Customer count was even messier: marketing counted email subscribers, finance counted unique billing accounts, and CX counted active users in the loyalty app. None of those reconciled cleanly.

The operational consequences compounded weekly. There was no consistent view of inventory movement against sales velocity, so reorder decisions ran on Excel snapshots that were already a week stale. Cohort and lifetime value analysis was effectively unavailable, which meant the team couldn't say with confidence which acquisition channels produced retained customers versus one-time buyers. Every question leadership asked in a Monday standup turned into a multi-day data pull, which meant most questions either went unanswered or got answered with directional guesses.

What we built
01

Foundation: warehouse and ingestion

Shopify and the supporting source systems flow through Fivetran into BigQuery on daily incremental loads, with proper backfill behavior and freshness monitoring. The team learns about a missed sync from a Slack alert, not from a board deck.

02

Modeling: dbt semantic layer

A multi-layer dbt project across staging, intermediate, and marts. Customers modeled as a Type-2 slowly-changing dimension; orders and order lines as central facts; documented business logic for what counts as a new customer, how returns are treated, what an inventory snapshot means. Every metric is tested.

03

Activation: Looker self-service

Looker explores designed around the questions each function actually asks: finance on revenue and returns, ops on inventory turnover, marketing on cohort and LTV. Certified content tagged so analysts know what's gold and what's draft. Training rolled out in week 9 of the build.

How we worked

The Blueprint phase opened with two weeks of discovery: stakeholder interviews across finance, ops, marketing, and leadership; a full audit of every report and spreadsheet the team relied on; and a tracing exercise that mapped every metric back to its source system and calculation. By the end of week two we had a backlog of about sixty conflicting metric definitions to resolve, plus a prioritized list of the dozen-odd that mattered most for the operating cadence.

Through the Build, we ran weekly working sessions with the data lead and bi-weekly steering with finance, ops, and marketing leadership together in the same room. Metric-definition decisions ran through a small RACI document we kept current: finance owned revenue and returns, ops owned inventory and fulfillment, marketing owned customer cohorts and lifecycle. When the three disagreed, we documented the disagreement in dbt model descriptions rather than papering over it, so a future analyst could see exactly why a definition was settled the way it was.

Knowledge transfer ran in parallel rather than at the end. By week six the data lead was committing dbt models alongside our team. By week ten she was leading the metric-definition working sessions herself. We rolled training out in week twelve in two cohorts: a half-day for analysts on the dbt project structure and tests, and a 90-minute session for business users on Looker self-service patterns and the certified-content tagging system.

Results
  • Unified 86 Shopify source tables into a medallion architecture (bronze, silver, gold) analysts could actually work with
  • Reporting turnaround for cross-functional questions dropped from 3 to 5 days to under an hour
  • Finance, ops and marketing working from one source instead of three competing spreadsheets
  • Self-service BI for cohort analysis, customer lifetime value and inventory performance
  • Retired ongoing ad-hoc exports and manual reconciliation work
We came in expecting to fight about which Shopify report was right. We left with one model the whole company runs on, and finance, ops and marketing aren't arguing anymore.
VP of Data, DTC apparel client

Outcomes start with a Blueprint. We plan, build and run from there.

Thirty minutes with a 829 Analytics partner. You leave with a prioritized view of what to build first, what's worth waiting on, and the business metric anchoring each move. Whether or not we end up working together.