Domain
Discovery + AI
Status
Live
Timeline
Nov 2025
Duration
15 Days
Led end-to-end design for Nykaa Fashion's first AI-native shopping feature. Problem framing to a 15-day design sprint to launch.
Use the slider to see the difference between model's image and generated image
Metrics
I'll let the numbers talk here
The metrics above are of engaged users.
Users who tried VTO converted 17.3% more often than those who didn't.
Add-to-cart went up 18.4% for the same group.
None of this happened by accident. Here's the WHYs that got us there.
The WHYs
WHY did we build this?
Nykaa Fashion has 3,000+ brands on the platform. Still, users couldn't decide what to buy.
Why? Because decision-making wasn't easy…
Our researcher ran a UX Study in two phases:
Exploratory work with Gen Z early adopters,
Then validation with our highest-intent shoppers.
My job was translating the gathered insights into a design.
And here's the pattern we found from this research
The Imagination Gap
Users can't picture themselves in a catalog model's body, and no amount of product photography fixes that.
When we asked high-intent shoppers what they were looking for, it wasn't more photos. It was themselves in the picture.
Gimmick v/s Utility
Users were tired of AI getting patched onto everything as a buzzword, and honestly, it made sense.
Research backed this: high-intent shoppers barely mentioned AI as a selling point on its own.
The Guidance Gap
Even our most loyal shoppers weren't always hunting for one specific product.
Half the time, they just wanted someone to tell them what worked. One participant put it simply: "show me how to style it or what goes well with it."
Defining our Problem Statements
User Problem Statement
How might we close the imagination gap on the PDP, so shoppers can visualize fit with real confidence, without ordering multiple dresses just to find the one that works?
Business Opportunity
How might we unblock the final purchase decision on the PDP to drive higher Add-to-Cart and conversion rates, with a secondary bet that more confidence upfront also chips away from returns/replacements over time?
The Plan
Project "MUSE" was broken into 3 Phases
Phase 1: Virtual Try On
We had a roadmap already in place, but the real question was whether it was worth the bandwidth upfront.
Phase 1 answered that: a simple, contained feature that could prove the concept and lay groundwork for what came after, including the preference data that Phase 2 would eventually run on.
Phase 2: Look Book
An engine that builds outfit sets automatically, using purchase history and the preferences we'd already started collecting back in Phase 1's onboarding flow.
The goal was simple: help users buy full looks, not just single items.
Phase 3: Your Virtual Stylist
A chat-based stylist that recommends outfits from your wishlist and past purchases, including what to pair with things you already own. Then it goes a step further and generates an image of you wearing the recommendation, so you're not just reading a suggestion, you're seeing yourself in it.
VTO went up against three other AI ideas already on the table, personalized discovery, AI styling and lookbooks, social shopping. It won on the two things that actually mattered: highest user value, and the only one we could ship inside 15 days.
The 'Pivot'
Choosing the Primary Entry Point
We made a very minimal entry point for this feature
The entry point would directly dictate how the FTUE would be
To start with, we had 3 options in mind.
Product / Search Listing Page (PLP)
Product Description Page (PDP)
Homepage
Off the bat, a single 'Virtual Try On' CTA on the PDP felt like the most sensible way to start.
A few reasons why:
We could run it as a small experiment without heavy investment, just enough to gauge real adoption
First-mover advantage, no e-commerce platform in India was doing this yet
Generation cost was high, so early adoption data would tell us how to eventually monetize the feature
We wanted clarity on how users would actually perceive the feature before betting on a bigger rollout
Final Entry Point
Simple animation, but it does the job, teaching what that icon means without needing an explainer every time. Plays once per session.
PLP concepts (Rejected)
We explored VTO indicators on PLPs early on, mainly to signal which specific SKUs had the feature available, since not every product had it at launch.
These designs never made it to production. Once the roadmap made clear VTO would eventually cover all clothing items, that per-SKU signaling problem stopped being worth solving for.
Here's the direction we were planning to take with the PLPs.
FTUE
The First Time Journey
Here are the decisions we made keeping in mind that the interface feels intuitive, builds trust, and educates a user without feeling like a roadblock.
Welcome Video
Just dropping a hanger icon there and hoping people got it felt lazy, most people would have scrolled right past it.
We put a short intro video for the feature.
Plays only once per user.
And here's the storyboard for the video I had created (copy in main video is updated, coz yk, iterationsssss)

Welcome Screen
The video does the heavy lifting, but we didn't want the whole plan resting on someone actually watching it. This screen backs it up.
Why show this again, right after the video?
Some users treat any full-screen popup like a regular offer and close it QUICKLY out of habit
If the video fails to load, and it only fires once, that user never gets a second shot
Speed is relative. A Gen Z user might catch it instantly, someone else might need it to sit and repeat
Upload Screen
We had a simple ask, upload a full-length photo.
Why? Because internal testing (using one of my mentees pet projects) revealed that full body images build better avatars.
Only one CTA at this stage, gallery only. Camera showed up later, more on that in the testing section.
But why did we add a friction? Because a few seconds looking at sample photos beats redoing an entire generation because someone uploaded a blurry group pic.
Avatar Creation
For Phase 1, we kept the loader simple. We wanted things to work first and improve later.
A few guardrails were non-negotiable from day one
No avatar generation from photos of minors
No pets
AI checks running on every output.
Early on, we had to decide between two things: ask users to re-upload a photo every time, or build one avatar they keep reusing.
Re-uploading wouldn't work well, it may hurt consistency and how often generations actually succeeded. More on that later.
I made the case to stakeholders that one good avatar would beat repeat uploads, and that's what we went forward with.
Questionnaire
We didn't want users stuck in a loading loop for too long, and we wanted the FTUE to feel at least a little delightful.
So we built a flow that feels like the AI is talking to you.
Wait time, and profile richness, solved at once.
2 birds, 1 stone.
Back to the PDP
The original product image shifts right, so both sit side by side for comparison.
One constraint here: product images with a background hurt accuracy, backgrounds get stripped during generation, and that step isn't perfect.
Clean product shots hit 96%+ accuracy, and the ones with backgrounds had ~90.
We also ask one quick question: "Did you like the look?" Thumbs up or down. Just a feedback signal for now, later phases will have a proper feedback loop.
VTO Creation Alternate (Rejected Approach)
Once you have a try on generated, you would get two options: reuse your last picture for a quick regenerate, or upload a new one if you want to try something different.
Another decision I had to influence
The PM wanted to replace the first image with the generated one.
I pushed back because replacing kills the reference point. We add instead the image on the first position and move the rest to the right. 10 Images become 11.
A closer look at the VTO icons
The hanger icon itself carries three states, pre-generation (plays once), while generating, and post-generation. Tap it post-generation, and it reveals more options.
Progress Indicators (PiP + Bottom Sheet)
If you leave the PDP mid-generation, the VTO icon turns into a FAB that follows you across other discovery pages, everywhere except cart and other PDPs.
Tap it, and a bottom sheet opens: "Your Try On Queue," showing remaining credits, live status on each item, and when credits refresh.
Costing

Google shipped Nano Banana v2, our generation model, and pricing dropped to about ₹3 per generation, overnight, mid-development. Yayy!
Earlier it was ₹10/generation.
That alone meant we could go from 1 generation a day to 3, without asking for more budget from the business folks.
Users got more shots, we got more DAU.
How about monetisation? Nykaa covers the cost to start.
Once the numbers hold up, brands pay a premium to sponsor generations on their own SKUs.
The big bet was : a VTOed product converts better, so sponsoring free tries on their own catalog isn't a hard sell for them.
Testing with internal users
Before this went anywhere near real users, we tested it live, on a call, with the team watching image upload, avatar creation, and final output happen end to end.
High stakes: this feature shows someone a reflection of themselves, so "close enough" wasn't good enough.
That process reversed one earlier decision, and added a couple of things users specifically asked for.
We Enabled Camera Upload
We'd disabled camera upload originally, on the assumption that women would usually have a ready-to-go photo and just reuse ours.
Wrong assumption. Testers didn't mind using the camera at all.
We Added Crop & Zoom Features
Sometimes people just want to move fast and don't have a solo photo handy. And when they do, it's often too zoomed out. Crop and zoom solved both.
We Planned Men-Specific Flows
Nykaa Fashion skews heavily female, and the whole intro was built around that, including static questionnaire questions that assumed only women would use the feature.
The men on the team noticed immediately, and weren't shy about saying so. Fair callout. We scoped men-specific flows for later phases.
Built for our audience
The translation from insights -> interface
Here's what our users told us, and how we incorporated that feedback in a product that worked!
"Include AI — show me how the product looks on us."
Users rejected flashy AI integrations in favor of high-utility comparison tools.
Therefore, we anchored VTO output directly inside the existing image carousel, so people could do a native, like-for-like comparison against catalog assets instead of treating AI as a separate showcase.
"There are too many things popping up that are not relevant for me."
Discovery-phase data showed that forcing interaction earlier in the funnel just added to that noise.
So we kept VTO exclusive to the Product Detail Page, showing up only at the one moment users had already decided this was worth their attention.
"The app should remember my size, colours, mood and style."
Users expect personalization by default now.
So instead of a dead loading spinner, we used that AI-generation wait time to run a quick preference questionnaire, turning idle time into something that actually enriches user profiles, eventually helping us with valuable customer data for recommendations
Insights behind the WHYs
Future Improvements
Here are a few Ideas I thought of to improve this feature in general
Comparison Slider Mode
A slider using which you could compare your generated image with the model
Prompt to Neutral -> Smile in Avatar
Currently, the prompt has a line which makes the expression neutral. However, my intuition says that smiling generations will make user feel better about the clothes and they will be more likely to purchase the items.
Making the feature respond to gender
Based on the gender selected by the user while signing up, the questions, or any recommendation will have that added layer.







