Infrastructure For The Lifecycle Of Clothing

Find YourPerfect AddTM

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

One piece in. A whole look back.

Upload anything you own and see it styled into a complete, editorial look.

A styled editorial look generated from one uploaded piece

The story starts here

Start with one photo

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

Navy ShirtDetected

Brand SIMKHAI

Category Top

Color Navy

ConfirmEdit

Your closet

Everything you own, beautifully in one place.

Each piece, organized and private, remembered and ready to be styled again.

My Closet

Navy Shirt

Navy Shirt

SIMKHAI

Pink Suede Sneakers

Pink Suede Sneakers

Puma

Mid-Wash Jeans

Mid-Wash Jeans

H&M

adidas Gazelle

adidas Gazelle

adidas

Paisley Jacket

Paisley Jacket

J.Crew

Dark Flares

Dark Flares

H&M

StyleSoul

Your taste, understood.

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

SIMKHAIadidasGanniJ.CrewSézane

The more you add and confirm, the sharper it gets.

Living Wall

Your wardrobe, alive.

A living wall of everything you own, always in motion. Leave it alone and it makes outfits by itself.

Step inside

Every piece has a story

Where you wore it. Who gave it to you. The life it has lived.

Your clothing carries more than fabric, and soon your closet will hold those stories too.

For Brands

See what happens to your collection after the sale.

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.

Navy tiered midi dress with long sleeves, photographed flat

Fairly Made · brands like Maje

Navy tiered midi dress

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.

The passport, as read
The passport, as read
PackagingFour items declared: two tissue papers, a hangtag and a box, each marked mostly recyclable; the box marked reusable
Eco ContributionNone
Plastic MicrofibresYes
Recycled Materials Percentage0%
Collection Year2025
Product Name123RUFFINELLA-Marine
Product TypeDRESSES
SkuMFPRO03144-0103
Brand NameMaje
LevelMaterial
StagesPolymer synthesis, CN · Spinning, CN · Weaving, CN · Dyeing, CN · Manufacturing, CN · Warehouse, FR
Transport Km Declared17761
The record, returned to the brand
The record, returned to the brand

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.

SIMULATED

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

When it is wornshare of wears by month · SIMULATED
0%8%15%JanFebMarAprMayJunJulAugSepOctNovDec15% in Jun
Table view
CategoryShare of wears
Jan5%
Feb4%
Mar6%
Apr9%
May13%
Jun15%
Jul9%
Aug7%
Sep11%
Oct6%
Nov5%
Dec10%
What it is worn forshare of wears · SIMULATED
  • Wedding guest38%
  • Evening out27%
  • Holiday14%
  • Work event12%
  • Other9%
Table view
CategoryShare of wears
Wedding guest38%
Evening out27%
Holiday14%
Work event12%
Other9%
What it is worn withshare of wears with the category · SIMULATED
  • Heeled sandals54%
  • Clutch41%
  • Fine jewellery37%
  • Tailored coat22%
  • Ankle boots16%
Table view
CategoryShare of wears
Heeled sandals54%
Clutch41%
Fine jewellery37%
Tailored coat22%
Ankle boots16%
How long it has been ownedshare of the group · SIMULATED
  • Under a year22%
  • 1 to 2 years41%
  • 2 to 3 years25%
  • Over 3 years12%
Table view
CategoryShare of group
Under a year22%
1 to 2 years41%
2 to 3 years25%
Over 3 years12%
When it was last wornshare of the group · SIMULATED
  • This season34%
  • 3 to 6 months ago29%
  • 6 to 12 months ago21%
  • Over a year ago16%
Table view
CategoryShare of group
This season34%
3 to 6 months ago29%
6 to 12 months ago21%
Over a year ago16%
The wear layer as exported
  • Times worn: SIMULATED · 20160 wears (indicative, group of 2400)
  • Wears per month: SIMULATED · 841.80 per month (indicative, group of 2400)
  • Paired categories: heeled sandals, clutch, fine jewellery, tailored coat

See the full readout, two garments read from their own passport codes

We’re onboarding a small first group of brands.

Talk to us

Try the demo.