Svaroots

An operations dashboard for modular sneakers.

The Svaroots operations dashboard on a laptop, showing revenue, orders, customers and traffic

Svaroots · Operations dashboard

Three numbers this brand runs on. None of them exist in a standard dashboard.

Svaroots is a conceptual modular sneaker brand: one base shoe, swappable textile patches. I designed and built an operations dashboard prototype for a solo operator, bringing orders, inventory and the brand’s three key metrics into one place.

Responsibilities
Research · UX/UI design · Data visualisation · Prototyping
Timeline
4 weeks
Course
Visual Interface Design & Design Management
Industry
Footwear · E-commerce
The dashboard's Orders, Inventory, Analytics and Users screens fanned out around the main overview

See it before you read it

It shipped. Try the dashboard.

Designed in Figma, built with Figma Make, pushed to GitHub and deployed on Vercel.

svarootsdashboard.vercel.appOpens in a new tab

What this case study covers

  • Competitive audit
  • Metric design
  • Information architecture
  • Data visualisation
  • Design → shipped code

A modular brand breaks the metrics every commerce dashboard assumes. I designed the three that were missing, proved the gap in a live Shopify store, and shipped it.

One sneaker, many identities

A conceptual brand built on Indian textile traditions. The team built the brand. I built the dashboard.

The brand around it

Brand identity, storefront, packaging and visual language were developed collaboratively.

A Svaroots shoebox wrapped in a block-printed textile patternAn open Svaroots shoebox showing a red patterned sneaker inside
A black display shelf holding twelve Svaroots sneakers, each with a different textile patch

The assumed setup

  • One online storeNo physical retail
  • One warehouseEverything ships from here
  • Small teamNo analyst, no ops team
  • One operatorRuns the whole system alone

Everything below follows from the fourth card. One person, no analyst. So the dashboard had to answer, not just report.

One person runs everything

No ops team. No analyst. One person keeps orders moving and stock honest.

Rahul, a young man in a dark jacket holding a laptop
RahulE-commerce Operations Manager
Role
E-commerce operations manager. One online store, one warehouse, a small team.
Goal
Keep the online business running smoothly, and act quickly on anything that needs attention.
Pain point
Information is spread across different operational areas, making it difficult to know what needs attention first.
Works across
  • Orders
  • Inventory
  • Customers
  • Performance

Their daily loop

  1. 01Check the business
  2. 02Spot an issue
  3. 03Understand why
  4. 04Take action

The dashboard had to fit inside this loop.

A patch is a product and a part

A patch sells on its own and works as half of a bundle. A normal dashboard counts each sale, but cannot tell you whether the modular idea is working.

What Svaroots actually sold

  • A plain white base sneakerBase sneakerSold on its own
  • A red textile patch setTextile patchSold on its own
  • A sneaker wearing the red patchThe same red patch set
    BundleSneaker + patch, sold together

The same patch sits in card two and card three. Sell one on its own, and a bundle quietly disappears.

Questions this created

  1. 01Are customers actually using the customization system?Answered by Customization Rate.
  2. 02How many patches are being sold per sneaker?Answered by Patch-to-Sneaker Ratio.
  3. 03How many complete bundles can we fulfil?Answered by Bundle Readiness.
  4. 04Which inventory is becoming dead stock?Answered by standard reports.

The design challenge

How might I design an operations dashboard around the decisions created by Svaroots’ modular business model?

I stopped assuming and opened Shopify

I had assumed a generic dashboard could not run this. Rather than keep asserting it, I set up a Shopify store and checked.

Competitive audit · Run inside a live Shopify store

Shopify runs the bundle calculation. It never reports it.

Searching the report library for “bundle” returns four reports. All four are Sales. None is Inventory.

Where Shopify stops

Shopify Bundles

What the customer sees

Ajrakh bundle · 9

Sold out
What Rahul seeswhich half ran out? which size?
  • It knows a shoe is a sneaker plus a patch. If either half runs out, it stops selling the pair.
  • But it only talks to the customer, and all it says is sold out. It never tells Rahul which half ran out, or in which size.

The evidence · Shopify’s own report library

Shopify's report library filtered to Inventory: sixteen reports, every one tagged Inventory, none about bundles
1Sixteen inventory reports, every one tagged Inventory. Read the names. Not one is about bundles.
Shopify report search for bundle: four results, all tagged Sales
2Search “bundle”: all four results are tagged Sales. None is Inventory.
Shopify report search for attach: no reports found
3Search “attach”: no reports found at all.

What the audit returned, metric by metric

  • Patch-to-sneaker ratioNot reported

    No default report expresses a ratio between two product categories.

  • Customisation rateNot reported

    No default report on attach rate. Custom exploration only.

  • Bundle readinessCalculated, never shown

    Shopify computes it to gate the storefront. No inventory report shows it.

  • Dead stockMeasured, not managed

    Shopify reports slow stock well. It has no reason, no status and no threshold alert.

Verified 5 Sept 2026 in a live Shopify store. I had expected to build the dead-stock measurement myself. I did not need to. I did not test Zoho, Katana or third-party bundle apps, so I make no claim about them.

Three numbers I had to add

Standard metrics covered most of this business, including how to spot slow stock. The modular half needed three that no report provides.

Concepts I had to learn

  • Customer Lifetime Value
  • VIP & Dormant Customers
  • Inventory Runway
  • Return Rate
  • Revenue
  • Product Performance

Metrics specific to Svaroots

  • 2.4Patch-to-Sneaker RatioPatches sold per sneaker.
  • 68%Customization RateHow actively customers use the modular option.
  • 195Bundle ReadinessHow many complete pairs can actually ship.

That moved the dashboard from reporting sales to showing whether the business model was actually working.

Patch-to-sneaker ratio · Analytics

Analytics KPI row: total revenue ₹11,22,000, customer LTV ₹12,500, conversion rate 3.7%, patch attach rate 2.4 per sneaker
It sits beside revenue, LTV and conversion, so the modular signal is read with the standard ones.

Customization rate · Operational insights

Operational insights card: customization rate 68%, top selling size IND 9, low rotation SKUs 12%, campaign impact +18%
How many sneakers leave wearing a patch at all, currently 68%.

Stock you own is not stock you can sell

Sneakers, patches and bundles all sell separately. So every patch sold on its own quietly reduces how many bundles are left to ship.

What a bundle actually needs

Four items in stock. One bundle can ship.

And the other patches keep selling on their own, so this number moves without anyone touching a bundle. That is why the operator needs it as a live view, not a checkout rule.

Bundle readiness · Inventory

Bundle readiness table, one row per size: base sneakers, patches, can ship today and health. IND 9 has 12 sneakers and 62 patches and is flagged Reorder now.
One row per size: sneakers, patches, and pairs that can ship.
  1. Sneakers and patches are counted separately.
  2. Can Ship Today is the smaller of the two counts.
  3. IND 9 holds 62 patches but only 10 sneakers, so 10 pairs.

Every chart ends in a button

A dashboard that only reports leaves the hard part to the operator. Every insight here carries its action.

Data → insight → action, on one screen

Stock breakdown donut: active, dead and reserved stock, with a warning that dead stock is 23.9%, above the healthy threshold, and a Manage button
  1. 1
    Data

    The chart shows how big the problem is.

  2. 2
    Insight

    The line underneath says whether it needs attention.

  3. 3
    Action

    One button opens the SKUs themselves, already grouped.

The Manage button opens the Dead Stock tab of inventory, with the dead SKUs already listed
The chart says what the number means, then gives one button to act on it.

Measured vs managed · Dead stock

Shopify's Products by sell-through rate report

What Shopify gives you

Shopify measures it. That is where it stops.

Products by sell-through rate shows how quickly stock is selling. Its dimensions are product title, variant and SKU. You get a number and nothing to do with it: no reason it stopped selling, no status, no action.

Below is what I built instead.

Dead stock management table with a reason column (wrong size mix, out of season, end of festive), a status column (flagged), and per-row actions
Reason and status are separate columns, so the operator acts on the cause, not the symptom.
  1. Reason comes first: why it stopped selling.
  2. Status is the triage state, waiting for a decision.
  3. The response sits on the same row as the reason.

Three things I got wrong first

Each fix came from a specific failure.

Iteration 01 · One long page became tabs

  1. V1Everything stacked verticallyKPIs, charts, insights and actions on a single page.
  2. ProblemToo much scrolling, competing informationReviewed the layout with a peer experienced in data visualization.
  3. V2Tabular + tab-based structureRelated information accessible within the same workspace.
More information doesn’t mean better visibility.

From scrolling to structure

Inventory with Inventory, Dead Stock and Bundle Readiness tabs above an SKU inventory table
Related information in one workspace, without a longer page.

Iteration 02 · Fewer visible actions

Before

Before: a table row showing every action icon at once

After

After: two actions per row with the rest in an overflow menu

Tables exposed every action at once. I cut to two, with the rest in an overflow.

Iteration 03 · The dashboard speaks first

Greetings, Rahul: a dead stock alert with a Review dead stock button sits above the revenue KPIs
The alert sits above revenue with its action attached, so the problem finds the operator.

Everything in one workspace

Six areas, organised around the decisions one person actually makes.

The six areas, as built

This isn't a screenshot. It's the working dashboard, live. Click the tabs, open the tables and try the actions.

Svaroots dashboard, live

I built it, not just designed it

Seven Figma screens are not seven working screens. Building it forced the details.

From design to working prototype

  • Navigation
  • Date ranges
  • Tables
  • Actions
  • Dashboard states
  • Interactions
  1. Figma
  2. Figma Make
  3. GitHub
  4. Vercel
Try the working prototypesvarootsdashboard.vercel.app

What I’d test with real operators

The tooling question is answered. The human one is not. Nothing here has met a real warehouse.

What I’d do next

  1. 01Speak with e-commerce operators and warehouse teams
  2. 02How they actually monitor inventory
  3. 03How they define dead stock
  4. 04How they evaluate performance and decide what needs immediate action
  5. 05Whether Bundle Readiness and Customization Rate are useful day to day
  6. 06Check whether a third-party bundle app already surfaces component readiness
  7. 07Pressure-test the dead-stock threshold with someone who has traded a bundle catalogue
I started with “What should I put on the dashboard?” I ended with “What decision should this information help someone make?”

That shift, from displaying data to designing for decisions, was the biggest learning from the project.