How the Brandloupe Index is built

Updated · How we collect this data

Every number on this site comes from the Brandloupe Index, our own crawl of public Shopify storefront data. This page explains where the store list comes from, what we check on each store, and what the data can and cannot tell you.

Where the store list comes from

We start from public web crawl data published by HTTP Archive, which records the technologies used by the sites that real Chrome users visit. Every site identified there as running Shopify goes into our list (1,019,722 domains in the latest crawl). Because the source only covers sites with real visitor traffic, brand-new or near-zero-traffic stores can be missing. That is why our count of active stores is lower than broader trackers that include every live store regardless of traffic (around 3 million), and lower still than counts of every store ever created on Shopify.

Since October 2026 we also read Certificate Transparency logs, the public record of every new HTTPS certificate, and check each new domain that points to Shopify. That finds stores in their first days, before they have traffic; they join the weekly crawl like any other store.

What "active" means

We request each domain's public storefront information and homepage. A store is active when its storefront answers as a live Shopify store that is open to shoppers. We also record stores that are password-protected (25,979 in the latest crawl), that block automated requests, that no longer resolve, and that have moved off Shopify; none of those are counted as active. In the latest crawl 750,590 stores were active across 207 countries (last checked October 25, 2026).

Country, catalog size and currency

Country is the business address each store publishes in its Shopify storefront data, not where its customers are. Catalog size is the number of published products Shopify reports for the store; Shopify caps that figure at 25,001, so larger catalogs are shown as "25,000+".

How apps, themes and pixels are detected

We scan each active store's homepage code for the scripts, stylesheets and Shopify web pixel integrations that apps and ad networks add, and read the theme name each storefront reports to Shopify. We normalize variants of the same theme name and drop developer placeholder names. Detection only sees what loads on the homepage: tools used only in checkout, on other pages, or in the Shopify admin are not counted, and a pixel shows a store is set up for an ad network, not that it is spending today. We currently track 507 apps, pixels and themes.

Products, prices and weekly changes

For each active store we read its newest published products (up to 50) and the order of its own "best selling" collection (up to 50 places), with each product's price, compare-at price and stock. We keep a record every time one of those values changes, so a store's price and best-seller history builds up crawl after crawl. Because we read the newest 50 products, a store that launched more than 50 in a week is shown as "50+".

The weekly changes compare our latest crawl with the previous one, at least four days apart. A launch is a product published in between. A price drop is a price cut of 10% or more on the same product. A new discount is a product that gained a compare-at price above its price (a sale started). A best-seller climb is a product that entered the store's top 50 best sellers or rose at least five places. Apps added or removed come from comparing the apps detected on the homepage in the two crawls, so an app that only loads on some pages can look removed when it is not.

Meta ads

For stores whose Facebook page we can match, we read their ads from the public Meta Ad Library: when each ad started, whether it is still running, its formats and the product it links to. For ads shown in the European Union, the Ad Library also publishes reach and audience under the EU Digital Services Act; we show those as published. We do not see spend outside those disclosures, and ads are tracked for a growing subset of stores, not all of them.

How stores are categorized

A store's category is what most of its products are. First we read the product types merchants give their products: we map the 5,000 most common types (in every language) to our categories by hand, extend that list to similar types automatically, and give a store a category when at least 80% of its typed products fall into one. For stores without usable product types, a model trained on those stores reads the store's name, description and newest product titles, and we keep its answer only when it is confident or when the product titles agree. Stores selling across many categories, or publishing too little product data, stay uncategorized.

We audit the result by hand: about 4 in 5 automatically categorized stores are correct in a random sample, and we review the most visited stores of every category and correct them. Category pages exist for categories with at least 1000 stores where our audit found the categorization reliable.

Rankings and "top stores"

Worldwide store lists are ordered by web traffic tier from the Chrome UX Report (for example, "top 10k sites"), then by Tranco rank within a tier. Chrome counts nearly all visits in Android-heavy markets such as India or Pakistan but only about half in the United States, where Safari is common, so worldwide lists favor those markets. Lists for a country (country pages, "top US stores" on category pages) therefore use the Chrome UX Report tier among visitors from that country. Traffic tiers are coarse and measure visits to the whole domain, so they rank popularity, not revenue.

For US stores we also estimate monthly search visits. Within the US, visits fall almost exactly in proportion to a store's Chrome tier (a top-50k store gets about ten times the visits of a top-500k store), and within a tier, stores whose Chrome visitors are mostly on desktop tend to have more iPhone visitors that Chrome does not count. A small model learns this from the search-traffic estimates of about 5,000 randomly sampled US stores (DataForSEO). The estimates are rough, typically within a factor of 3, and order stores better than the tier alone; they are not revenue.

What gets a page

Country pages exist for countries with at least 100 active stores (97 countries), and technology pages for apps, pixels and themes used by at least 50 stores, so every page is based on a meaningful sample.

Freshness

Pages are rebuilt from the database after each crawl, and every page shows the date of the data it uses.