sempite/product-tagging-saved-intent
Product Tagging and Saved Intent in Online Retail How online stores structure product tags and implement saved-item features, and how that compares with a platform where tagging is crowd-sourced against a shared controlled vocabulary. Canonical release: https://doi.org/10.5281/zenodo.22852049 This repository mirrors that deposit. Cite the DOI. Sample 1,028 Shopify storefronts, drawn by seeded random sample from a 30,000-domain draw of the Tranco top 1M, measured… See the full description on the dataset page: https://huggingface.co/datasets/sempite/product-tagging-saved-intent.
Product Tagging and Saved Intent in Online Retail
How online stores structure product tags and implement saved-item features, and how that compares with a platform where tagging is crowd-sourced against a shared controlled vocabulary.
Canonical release: https://doi.org/10.5281/zenodo.22852049 This repository mirrors that deposit. Cite the DOI.
Sample
1,028 Shopify storefronts, drawn by seeded random sample from a 30,000-domain draw of the Tranco top 1M, measured 13 to 14 September 2026 with a 95.6% collection rate. 700 Steam titles as a contrast case.
Findings (95% Wilson intervals)
Every store invents its own private language. 963 Shopify stores used 30,622 distinct tags between them, and the median store shares just 16.7% of its tags with any other store. 700 Steam titles drew on 394 distinct tags, and the median title shares 100%.
Confirmed wishlist presence rises across tagging-depth quartiles (17.9%, 26.8%, 27.2%, 40.5%; Cochran-Armitage z=5.43, p=5.6e-08). Association, not mechanism: both are plausibly downstream of a merchant who invests in their catalogue.
The 46% versus 28% gap is the point
Detecting wishlist code is easy. Confirming a shopper can actually save something is not. A second verification pass re-fetched every candidate and recorded the evidence snippet behind each verdict, which ships in wishlist_verification.csv.
Anyone measuring this by pattern-matching page source alone overstates working wishlists by roughly 18 percentage points. Use wishlist_verified_state, never wishlist_code_detected.
Configs
Also included: results/stats.json with every published figure and interval, all collection and analysis code, and METHODS.md with a ten-point limitations section.
Reproducible in the browser
A runnable notebook recomputes every figure above from these files: https://www.kaggle.com/code/sempite/reproducing-the-tagging-and-wishlist-findings
Method notes worth knowing
Shopify rate-limits /products.json per IP across all endpoints, so collection is paced by one global limiter. Collection health was gated separately from analytical correctness, after an earlier run passed arithmetic verification while resting on only 47 of 1,075 stores.
Citation
@dataset{gerrish_tagging_2026,
author = {Gerrish, Jacob Ezra},
title = {Product Tagging and Saved Intent in Online Retail: a measurement
study of 1,028 Shopify storefronts and 700 Steam titles},
year = {2026},
publisher = {Zenodo},
doi = {10.5281/zenodo.22852049}
}Write-ups: tag vocabularies · wishlists
Data CC BY 4.0, code MIT. Produced by SEMPITE.
