Competitor pricing tools: data and method (collected 2026-09-27) 1) tool-plans-verified-2026-09-27.csv Every plan figure was copied from the vendor's own pricing page or its Shopify App Store listing (URL in each row) on 2026-09-27. "not listed" means the page did not state it, not that the feature is absent. Where a vendor's own site and its Shopify listing differ, both rows are kept. Plans change; re-check the source before relying on a number. 2) catalog_stats_by_store.csv, identical_products_summary.csv, identical_products_observations.csv Sample: 34 US-based Shopify stores selling specialty coffee equipment (roasters with gear shops, equipment retailers and 6 brand-owned stores). One further store was excluded because its prices are converted from a non-USD base currency. Source: each store's public /products.json catalog endpoint, read once per store on 2026-09-27 with a US market/USD localization setting, 250 products per page, paced at roughly one request per second. Two very large catalogs were capped at 5,000 products (flag column). Stores are anonymised (S01...S34) and are not named anywhere. "Variant sold out" = Shopify's available=false. "Compare-at sale" = compare_at_price > price. Identical-product matching: title rules for 9 widely stocked branded items, excluding open-box, bundles, parts, kits and different editions; for products with colour variants the lowest-priced variant is used. "Most common price" is the modal listed price per product; where two prices tie (Kalita Wave 185 stainless dripper: 2 listings at $40 and 2 at $42), the lower price is used. The listed price is the store's list price for US shoppers; it excludes shipping, tax, discount codes and cart-level promotions. Market localization check: the same catalogs read from a non-US location returned prices in a different currency for 4 of the 34 stores. In catalog_stats_by_store.csv, median_non_us_price_to_us_price_ratio is the non-US-market price, in that market's currency, divided by the US price; it reflects the store's currency conversion and rounding, so values near 100 or near 3.7 are expected for different currencies. Single snapshot; it does not measure how often prices change over time.