Data sources
Where each field comes from
One primary source per field, named — so that disagreeing with us is a thing you can actually do.
Field by field
9 groups| Field | Source | How it is read |
|---|---|---|
| Claim wording, evidence URL | The merchant’s own product page | Quoted verbatim from the product’s own description or structured product record. Never from a category page, a banner or a recommendation widget. |
| Price, currency, size | The merchant’s own product page | The listed price of the variant on the date shown. Cost per millilitre is arithmetic on price and size, not an editorial judgement. |
| Catalogue presence, listed stock | The merchant’s own product page | Two separate fields, read on the same visit. Neither is a live signal. |
| US shipping, free-shipping threshold, delivery time, returns, samples | The merchant’s own policy pages | Five facts per merchant, each stored with the policy URL and the date it was read. Unrecorded means unknown, not free. |
| Fragrance identity: brand, name, flanker, edition | The brand’s own site, where one exists | Resolved by a reviewer. Where the record was first seen on a merchant page and the brand publishes nothing usable, brand-side fields stay unknown rather than being filled in from elsewhere. |
| Original retail price, official note list | The brand’s own site only | Held for a small minority of records. If the brand does not publish it, the field is unknown and no retail price is shown — attributing a merchant’s number to the brand would be a fabricated source. |
| Product photography | The merchant’s own product image | Processed locally, served from our CDN, with the source URL kept against the record. Never a brand logo, never bottle trade dress used as decoration. |
| Coverage counts | The merchant’s own sitemap | Pages read over pages published. Nothing is sampled, extrapolated or rounded up. |
| Change events | Our own ledger | Generated when a record is created or a value is observed. Each event carries its evidence URL, its reviewer and its date. |
What is never a source
5 exclusions- Fragrantica, Parfumo, Basenotes and comparable community encyclopaedias — not scraped, not mirrored, not used as a source for any field.
- Other dupe sites and their mappings, prices or ratings. Where one of them surfaces a merchant we do not track, that merchant goes on a queue to be checked from its own pages; their data never becomes ours.
- Brand imagery, logos and bottle photography from brand sites.
- Any merchant whose robots policy asks us not to read it.
- Our own opinion of how anything smells. There is no such field.
These are constraints, not aspirations. A field with no primary source is published as unknown.
What this release is built from
1.9.3+2026-08-23- Merchant pages read
- 5387
- Candidates put through review
- 3374
- Reclassified during review
- 370
- Published claim records
- 3807
- Read and not promoted
- 2013
The rejected file ships with the dataset, and the per-merchant breakdown is on each merchant page. Method: how a claim gets verified.
Current as of dataset 1.9.3+2026-08-23, Aug 23, 2026. Every correction is logged in public.
