Wholesale
Find retailers who could stock your product
For Brands, distributors and wholesale sales teams
The problem
Wholesale expansion means finding independent retailers who already sell adjacent products to the right audience. Trade shows and directories cover a fraction, and the fraction skews to whoever paid for a stand.
How the data solves it
Filter by shop category and collections to find retailers already selling your category, then narrow by country, language and catalogue size to match your distribution terms.
The filter set this maps to
Every field below exists in the shop schema. This is the query, not an illustration.
- Shop categories
- your product category
- Shop collections
- adjacent collections
- Country
- your distribution territory
- Products
- 20–500 (independent, not marketplace)
Build it
Four steps to this list
Every column named here exists in the schema, and the request below runs as written.
- 1Use a tags filter on categories with the category you sell into.
- 2Add products between 20 and 500 to find independents rather than marketplaces.
- 3Add country for your distribution territory.
- 4Export emails and contact_url for the outreach list.
The same query through the API
POST this to /api/v1/search for a count, or /api/v1/rows for the shops themselves.
{
"filters": [
{
"kind": "tags",
"col": "categories",
"mode": "any",
"values": [
"Apparel & Accessories > Clothing"
]
},
{
"kind": "numeric",
"col": "products",
"op": "between",
"min": 20,
"max": 500
},
{
"kind": "dropdown",
"col": "country",
"values": [
"GB"
]
}
]
}Playbook
What to do once you have the list
A list is not a campaign. These are the three things that decide whether it converts.
Category comes from the shop, not from us
categories is read from the merchant's own taxonomy, so you are matching how they describe themselves rather than a classification we imposed.
Size bands map to order volume
20–500 products is the independent retailer band. Below that is usually a hobby shop; above it is usually a marketplace reseller.
Respect territory
Country filtering keeps you inside existing distribution agreements, which matters more in wholesale than in most channels.
Outcome
What you end up with
Independent retailers selling your category today
Territory-matched lists that respect distribution agreements
Catalogue size as a proxy for order volume
Questions
Wholesale: frequently asked
How do you know what category a shop sells?
Shop categories and collections are read from the storefront itself: the merchant's own taxonomy rather than an imposed classification.
Can I avoid approaching shops that carry a competitor?
Category and collection filters let you narrow to what a shop sells, and you can pair that with technology and language filters to refine further before you invest in outreach.
How do I tell a retailer that would stock my product from one that would not?
Shop categories and collections tell you what a retailer already sells, which is the only reliable indicator of whether your product fits their range. Add product count to separate a curated boutique from a broad-line retailer, and country plus currency so the logistics work. A shop selling adjacent categories at your price point is the target, not simply any shop in your vertical.
Can I find retailers who stock competing brands?
Indirectly. The dataset describes shops rather than the individual products inside them, so it does not list every brand on the shelf. What it does carry is categories, collections and the storefront's own description text, which together indicate the range. Treat it as a strong shortlist to verify rather than as a stocking list.
How do I avoid approaching retailers too small to place an order?
Filter on catalogue depth and trading history together. Product count and collections show the size of the operation, domain age shows it has survived more than one season, and shop active confirms the storefront is still trading. A shop with 40 products registered four months ago is unlikely to meet a minimum order.
Start finding better e-commerce leads today
Free trial with the full dataset and every filter, and the allowance resets daily rather than expiring.
