Skip to content
Dupedex

Methodology

How a claim gets verified

Five steps, all of them boring, none of them involving a nose.

We don’t rate similarity

We verify claims — and samples exist so you don’t have to trust anyone’s rating.

Every percentage you have seen on a dupe site was produced by somebody who either did not smell both bottles or cannot show you that they did. It is an opinion wearing a number’s clothes. We hold no such number, we will not add one, and the closest thing to an answer we can honestly offer is a link to a sample: three or four dollars settles for you what no stranger’s score can.

What we can establish, and what this whole site is, is narrower and checkable: a named merchant published a named inspiration statement, on a named URL, on a named date, and a person matched it to the right fragrance. Reddit will tell you how it smells. We will tell you whether the claim is real, what it costs, and whether the page is still up.

The five steps

5 steps
  1. Enumerate the catalogue

    We take the merchant’s own sitemap and read every product page in it. That is what gives “how much of this shop have you checked” a denominator instead of an adjective.

  2. Read the claim off the page

    A record is only created when the merchant states the inspiration on the product page itself. We store the sentence verbatim, the URL, the date and the reviewer. A claim found in a review, a forum thread or somebody else’s chart is not a claim we will publish.

  3. Resolve the named fragrance

    The named fragrance is matched to one record down to brand, flanker and edition. “Sauvage” and “Sauvage Elixir” are different records and a claim naming one is never filed under the other. A page whose naming is ambiguous is rejected rather than guessed.

  4. Record price and state as three separate fields

    Catalogue presence, listed stock and payout eligibility are stored independently, each with the date it was read. A page existing does not mean the bottle is buyable, and we never merge the three into one green tick.

  5. Review, and record the rejections

    A human reviews every candidate before it is published; 370 were reclassified during review for this release. The pages we read and rejected are published too, each with a reason code, because a coverage number nobody can audit is a marketing number.

What the badges mean

4 states
Verified exact
The brand, the fragrance and the edition the merchant named all line up with the record the claim is filed under. This is the only status a published claim can currently hold.
Different flanker
The merchant named something from the same line, but not the same release — an “Intense”, an “Elixir”, a summer edition. Marked, never quietly filed under the original.
Different edition
The right fragrance, the wrong concentration or reformulation year. Also marked rather than accepted.
Not a claim
The page turned out to carry no inspiration statement of its own — usually because the text belonged to a navigation block or a recommendation widget, not to the product. These are removed from the ledger and kept in the rejected file with their reason.

One record shows one badge, rendered from one field. A record can never display a tick and a warning at the same time.

Dates, and what we won’t claim

Every price and every stock line on this site carries the day it was read. Anything older than 45 days is reported as unknown rather than shown as current. We check on a monthly cycle, so we make no claim of continuous freshness, we do not display a live stock indicator, and we do not estimate tax. We do not add shipping to a price either: what a shop charges to post an order is stated as the shop states it, with a link to the policy page it was read from, and the arithmetic is left to the person who knows what is in their basket.

Newest check Aug 23, 2026Dataset 1.9.3+2026-08-23Field-by-field sources

Current as of dataset 1.9.3+2026-08-23, Aug 23, 2026. Every correction is logged in public.

to move · to open · typos are fineBrowse every brand