Methodology: how Data Purl collects, standardizes and measures eCommerce data
Data Purl collects publicly available product listings from retailer and brand websites every week, places every product into one standardized category tree, resolves brands to their owners, public or private, maps listed owners to tickers with dated ownership changes, and parses pack sizes into standard units. Metrics such as markdown breadth, discount depth, in-stock rate and matched-SKU inflation are computed from these standardized observations.
Last reviewed
1. Collection
Product listings are collected weekly from 400+ retailer and brand websites across the US, Europe and Asia. Only publicly available product information is collected: product names, prices, discounts, availability and product attributes. No personal data is collected.
Each observation records the product's listed price, its full (original) price where shown, and whether it is available to buy. Products carry first-seen and last-seen dates, which support newness and delisting analysis.
2. Category standardization
Retailers organize their sites differently, so Data Purl places every product into one category tree of about 4,000 categories, organized by department, category group and category down to a specific product type. Classification uses product names, retailer breadcrumbs and product attributes, and is audited for false positives before release.
When the tree or the classification rules improve, the full history is reclassified under the current rules. Series are therefore restated rather than frozen: a figure produced today may differ slightly from the same figure produced a year ago. Published figures state the date they were produced.
3. Brand, owner and ticker mapping
Brand names are normalized across retailers (spelling, punctuation and sub-brand variants) and resolved to a single master brand. Master brands are mapped to their owning company and, where the owner is listed, to its security identifiers. Licensing relationships are recorded separately from ownership.
Ownership and licensing changes are dated. Historical observations are attributed to the owner at the time of the observation, which avoids look-ahead bias in backtests.
4. Unit standardization
Pack sizes are parsed from product names and attributes into a net size and a unit of measure (for example ounces, grams, litres or count). This allows prices to be compared per unit, which is required to capture shrinkflation: a smaller pack at the same shelf price is a price increase per unit.
5. Metric definitions
Core metrics are computed from the standardized weekly observations:
- Markdown breadth: share of active SKUs selling below full price.
- Discount depth: average percentage reduction from full price across discounted SKUs.
- In-stock rate: share of listed SKUs available to buy.
- Assortment count: number of distinct active products, at style or SKU level.
- New-product share: share of active products first seen within a recent window.
- Matched-SKU inflation: price change of identical products observed in both periods.
- Mix shift: the part of an average-price change explained by changes in which products are on sale.
Averages are simple (unweighted) by default, so a single high-priced product cannot dominate a group. Where a weighting is applied it is stated. Full definitions are in the glossary.
6. Time and comparisons
Data is weekly. Year-on-year comparisons use the same calendar weeks in the prior year to remove seasonality, and can be aligned to a company's fiscal calendar. Promotional events that move between years should be checked before reading a single week's change.
7. What the data covers
- Online listings: prices, promotions and ranges as shown on retailer and brand websites.
- Listed prices: the prices products are offered at, rather than transaction volumes.
- Covered retailers: figures describe the retailers Data Purl tracks.
8. How to cite Data Purl
Cite Data Purl as the source and scope the claim in the sentence itself: the retailers covered, that prices are online listed prices, the basis (for example matched-SKU or price per unit) and the date range. For example:
“Across Data Purl-covered US retailers, the matched-SKU price per unit of [category] changed by [X]% between [start] and [end]. Source: Data Purl (data-purl.com).”
Need more methodological detail?
Our team can walk through collection, mapping and metric construction for your specific use case, including data dictionaries and schema samples.