
Infrastructure For The Lifecycle Of Clothing
Your clothing has a story to tell. It begins with the perfect addition, the piece that completes the look, and it keeps going from there.
What it is
Start with one piece you love. The Perfect Add styles it into a complete look, learns what you own and how you actually wear it, and gets better at styling you every time.
Style any piece
Upload anything you own and see it styled into a complete, editorial look.

The story starts here
Upload a photo and your piece is saved inside your wardrobe. The Perfect Add gets to know it, and your style, over time, and can link to your piece's digital product passport when it has one.
Review your new pieces

Brand SIMKHAI
Category Top
Color Navy
Your closet
Each piece, organized and private, remembered and ready to be styled again.
My Closet

Navy Shirt
SIMKHAI

Pink Suede Sneakers
Puma

Mid-Wash Jeans
H&M

adidas Gazelle
adidas

Paisley Jacket
J.Crew

Dark Flares
H&M
StyleSoul
StyleSoul learns from what you keep, wear, and love, until it knows your style as well as you do.
Reading your closet
24 pieces
Labels you reach for
The more you add and confirm, the sharper it gets.
Living Wall
A living wall of everything you own, always in motion. Leave it alone and it makes outfits by itself.
Every piece has a story
Your clothing carries more than fabric, and soon your closet will hold those stories too.
For Brands
The story of a garment doesn’t end at checkout. A real garment, read from its own Digital Product Passport, beside what thousands of wardrobes do with it. Anonymous, aggregated, and every figure marked.

Fairly Made · brands like Maje
Maje · 2025 collection · 100% polyester
Enterprise passport platform. One QR per product reference, read from its public API.
Your passport covers 7 groups. The closet layer adds 1 more.
Their fields exactly as read, in the record schema, with the wardrobe view riding in its own namespace. JSON-LD, structured against the ESPR data groups, Schema.org and the GS1 Web Vocabulary.
{
"@context": [
"https://schema.org",
"https://gs1.org/voc/",
{
"tpa": "https://theperfectadd.com/ns/record/v1#"
}
],
"@type": [
"Product",
"tpa:GarmentRecord"
],
"tpa:schemaVersion": "1.0",
"tpa:granularity": "model",
"identification": {
"productName": "123RUFFINELLA-Marine",
"modelRef": "MFPRO03144-0103",
"productCategory": "DRESSES"
},
"operator": {
"brandName": "Maje"
},
"composition": {
"fibres": [
{
"material": "POLYESTER",
"percentage": 100,
"component": "MAIN FABRIC (WOVEN)"
}
],
"recycledContentPercent": 0
},
"traceability": {
"stages": [
{
"stage": "Polymer synthesis",
"country": "CN",
"facility": null,
"verified": false
},
{
"stage": "Spinning",
"country": "CN",
"facility": null,
"verified": false
},
{
"stage": "Weaving",
"country": "CN",
"facility": null,
"verified": false
},
{
"stage": "Dyeing",
"country": "CN",
"facility": null,
"verified": false
},
{
"stage": "Manufacturing",
"country": "CN",
"facility": null,
"verified": false
},
{
"stage": "Warehouse",
"country": "FR",
"facility": null,
"verified": false
}
],
"kilometresTravelled": 17761
},
"tpa:wear": {
"simulated": true,
"windowStart": "2024-09-01T00:00:00Z",
"windowEnd": "2026-08-31T00:00:00Z",
"groupSize": 2400,
"confidence": "indicative",
"wearCount": {
"value": 20160,
"confidence": "indicative",
"groupSize": 2400
},
"wearsPerMonth": {
"value": 841.7975308641975,
"confidence": "indicative",
"groupSize": 2400
},
"co2PerWearKgCO2e": null,
"pairedWith": [
"heeled sandals",
"clutch",
"fine jewellery",
"tailored coat"
],
"seasonality": [
{
"season": "spring",
"share": 0.31
},
{
"season": "summer",
"share": 0.33
},
{
"season": "autumn",
"share": 0.17
},
{
"season": "winter",
"share": 0.19
}
],
"contexts": [
"wedding guest",
"evening out",
"holiday",
"work event"
],
"dormancyMonths": 4,
"onwardPath": "resold",
"distributions": {
"wearsByMonth": [
0.05,
0.04,
0.06,
0.09,
0.13,
0.15,
0.09,
0.07,
0.11,
0.06,
0.05,
0.1
],
"occasions": [
{
"label": "Wedding guest",
"share": 0.38
},
{
"label": "Evening out",
"share": 0.27
},
{
"label": "Holiday",
"share": 0.14
},
{
"label": "Work event",
"share": 0.12
},
{
"label": "Other",
"share": 0.09
}
],
"pairedWith": [
{
"label": "Heeled sandals",
"share": 0.54
},
{
"label": "Clutch",
"share": 0.41
},
{
"label": "Fine jewellery",
"share": 0.37
},
{
"label": "Tailored coat",
"share": 0.22
},
{
"label": "Ankle boots",
"share": 0.16
}
],
"ownedFor": [
{
"label": "Under a year",
"share": 0.22
},
{
"label": "1 to 2 years",
"share": 0.41
},
{
"label": "2 to 3 years",
"share": 0.25
},
{
"label": "Over 3 years",
"share": 0.12
}
],
"lastWorn": [
{
"label": "This season",
"share": 0.34
},
{
"label": "3 to 6 months ago",
"share": 0.29
},
{
"label": "6 to 12 months ago",
"share": 0.21
},
{
"label": "Over a year ago",
"share": 0.16
}
]
},
"monthsOwned": {
"value": 19,
"confidence": "indicative",
"groupSize": 2400
},
"monthsSinceLastWear": {
"value": 4,
"confidence": "indicative",
"groupSize": 2400
}
}
}Across wardrobes, anonymously
2,400 wardrobes hold one of these.
Aggregated across the group. Window Sep 2024 to Aug 2026, indicative rung, group of 2,400. Every figure on this panel is simulated.
Wears per garment, per year
4.2wears
SIMULATED · indicative · group of 2,400
Owned for, median
19months
SIMULATED · indicative · group of 2,400
Since last worn, median
4months
SIMULATED · indicative · group of 2,400
| Category | Share of wears |
|---|---|
| Jan | 5% |
| Feb | 4% |
| Mar | 6% |
| Apr | 9% |
| May | 13% |
| Jun | 15% |
| Jul | 9% |
| Aug | 7% |
| Sep | 11% |
| Oct | 6% |
| Nov | 5% |
| Dec | 10% |
| Category | Share of wears |
|---|---|
| Wedding guest | 38% |
| Evening out | 27% |
| Holiday | 14% |
| Work event | 12% |
| Other | 9% |
| Category | Share of wears |
|---|---|
| Heeled sandals | 54% |
| Clutch | 41% |
| Fine jewellery | 37% |
| Tailored coat | 22% |
| Ankle boots | 16% |
| Category | Share of group |
|---|---|
| Under a year | 22% |
| 1 to 2 years | 41% |
| 2 to 3 years | 25% |
| Over 3 years | 12% |
| Category | Share of group |
|---|---|
| This season | 34% |
| 3 to 6 months ago | 29% |
| 6 to 12 months ago | 21% |
| Over a year ago | 16% |
See the full readout, two garments read from their own passport codes
We’re onboarding a small first group of brands.
Talk to us