The problem
Buying clothes online asks shoppers to guess. They cannot see how a garment looks on their own body, and they are unsure which size to choose. That uncertainty shows up in hesitation, abandoned sessions and returns, and it is one of the persistent weaknesses of fashion e-commerce compared with a physical store.
What we built
A virtual try-on assistant for a leading clothing brand. Shoppers see a garment rendered on themselves, and can talk through fit and sizing with an assistant that knows the catalogue and what is actually in stock. We were responsible for the full system design, the machine-learning pipeline and the retrieval integration.
How it works
The system combines three distinct capabilities, each solving a different part of the problem.
Seeing the garment
The try-on itself uses StableVITON, a diffusion model designed for virtual try-on. Diffusion models generate an image by starting from noise and refining it step by step toward a result that matches their inputs, here the shopper’s photograph and the garment. That iterative refinement is what lets the model preserve details such as fabric texture and pattern while fitting the garment to a different body and pose.
Understanding the body
For the garment to sit correctly, the system needs to understand the shopper’s pose. A computer-vision pipeline built on MediaPipe reads body landmarks: the positions of shoulders, hips, arms and so on. Those landmarks guide where and how the garment is placed, which is the difference between a convincing render and an obviously pasted-on image.
Answering questions
Seeing a garment answers only half the question. Shoppers also want to ask about fit, sizing and alternatives. LangGraph orchestrates a product and size conversation, so shoppers can ask the kind of questions they would ask a person in a store.
Why retrieval, and why live inventory
A conversational assistant in retail has one job above all: to recommend things that exist and can be bought. So every answer is grounded in retrieval over the product catalogue, which ties recommendations to real products rather than to the model’s general idea of what clothing looks like.
The assistant is also wired to live inventory. Recommending a size or item that is out of stock is worse than making no recommendation, because it creates intent that cannot be fulfilled. Grounding in live stock keeps the conversation useful.
What the results mean
Shoppers stayed on the page longer and clicked through more often. Time on page shows that shoppers engaged with the experience rather than bouncing. Click-through shows that engagement turning into intent to move further toward a purchase.
Where it can go wrong
- Unflattering renders. Diffusion output can occasionally distort a garment or a body. A try-on that makes the shopper look worse does active harm, so output quality needs continuous review.
- Photo quality. Poor lighting or unusual poses in the shopper’s photograph degrade the result. Clear guidance at capture time matters.
- Sizing confidence. A visual render is not a guarantee of fit. The assistant should support the sizing decision, not overstate its certainty.
When this approach fits
Virtual try-on is worth building where the product is visual, fit uncertainty is a real barrier, and the catalogue is large enough that a shopper benefits from guidance. The combination matters: the render drives engagement, and grounded conversation turns it into a purchase.
Questions to ask before building one
If you are considering a system like this, these are the questions we would want answered first.
- Is fit uncertainty actually costing you? Look at returns and abandoned sessions for evidence before investing.
- Do you have good garment imagery? Try-on quality depends heavily on clean, consistent product photographs.
- Is your catalogue data structured? Grounded recommendations need reliable sizes, attributes and stock levels.
- How will you review render quality? Someone needs to look for distorted or unflattering output before shoppers do.

