Data Purl
  • Platform
  • Solutions
  • Coverage
  • Custom data
  • Research
  • Methodology
Client loginTalk to the foundersStart free
  • Platform
  • Solutions
  • Coverage
  • Custom data
  • Research
  • Methodology
  • Start free
  • Talk to the founders
  • Client login
  1. Home
  2. /Methodology
Methodology

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 24 September 2026

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.

Start free Talk to the founders
Data Purl

Data Purl turns public retailer websites into investment-grade data: SKU-level price, discount, availability and assortment history across 400+ retailers back to 2013, with brands resolved to their owners, public or private, and listed owners mapped to tickers.

+44 20 8125 3010 (UK)+1 212-660-0780 (US / International)

Product

  • Platform
  • Coverage
  • Retailers
  • Custom data
  • Methodology
  • Compliance

Solutions

  • Public market investors
  • Private equity
  • Consultants
  • Investment banking M&A
  • Venture capital

Use cases

  • Pricing power
  • Markdowns and inventory
  • Commercial due diligence
  • Brand distribution
  • Category inflation
  • Portfolio monitoring
  • Tariff pass-through
  • Holiday promotions
  • Private label
  • Assortment cuts
  • Earnings previews
  • Product launches

Resources

  • Research
  • Use cases
  • Glossary
  • FAQ
  • About
  • Start free
  • Talk to the founders
400+
retailers
1,900+
public companies mapped
4,000
product categories
2013
history back to

© 2026 Data Purl. All rights reserved. Data Purl is a trading name of Cleveland Alternative Data Limited, a company registered in the United Kingdom with company number 16234509.