Research
Size a market from the actual population, not a sample
For Analysts, strategy teams and market researchers
The problem
E-commerce market sizing usually rests on a survey of a few thousand merchants extrapolated to a continent. The error bars are enormous and the segmentation is coarse.
How the data solves it
Query the population directly. Platform share by country, technology adoption over time, catalogue-size distribution, language and currency patterns: computed across 8.9 million shops rather than inferred from a panel.
The filter set this maps to
Every field below exists in the shop schema. This is the query, not an illustration.
- Country
- any market or set of markets
- Platform
- grouped for share analysis
- Domain age
- cohort by registration year
- Registered date
- time-series segmentation
Build it
Four steps to this list
Every column named here exists in the schema, and the request below runs as written.
- 1Select the markets you are sizing with a country dropdown filter.
- 2Add a registered date range to build cohorts by year.
- 3Use POST /search rather than /rows — counts cost one search credit and return no rows.
- 4Vary one dimension at a time to build a share table.
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": "dropdown",
"col": "country",
"values": [
"DE",
"FR",
"IT",
"ES"
]
},
{
"kind": "date",
"col": "registered",
"from": "2020-01-01",
"to": "2024-12-31"
}
]
}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.
Count, do not download
The /search endpoint returns totals without spending download leads. A full market-share table costs a handful of search credits, not an export.
Respect undefined
Unmeasured fields are stored as undefined, not zero. Exclude them from a denominator rather than treating them as zeros — that single mistake invalidates most third-party e-commerce research.
Cohort by registration year
registered gives you a real birth date per shop, so adoption curves are measured rather than modelled.
Outcome
What you end up with
Platform share by country from real counts
Technology adoption curves segmented by cohort
Defensible market sizing with a stated methodology
Questions
Research: frequently asked
Can I export aggregate data for analysis?
Yes. Build the segment with filters and export the matching rows to CSV, or pull the same query through the API for a repeatable pipeline.
How do I account for fields that are not measured everywhere?
Coverage is explicit. Undefined is stored distinctly from zero, so you can exclude unmeasured rows from a denominator instead of silently treating them as zeros, which is the single most common way this kind of analysis goes wrong.
How is this different from a survey-based market report?
A report extrapolates from a few thousand responses to a whole market. Here you query the population directly: every shop matching your criteria, counted rather than estimated, with the filter set stated so the number is reproducible. You can rerun the same query next quarter and the change is real rather than sampling noise.
Can I count platform share in a specific country?
Yes, and it is one query. Filter by country and group by platform to get the count of live shops on each. Because the underlying figure is a count rather than a sample, the confidence interval is not a consideration, though coverage still is: shops the crawl has not discovered are not in the count.
What are the limits I should state in a report built on this?
Two. Coverage is not census: discovery is continuous, so a shop can be missing because it has not been found yet rather than because it does not exist. And undefined is not zero: a field that was never measured is stored as undefined, so a filter for zero products returns shops measured at zero, not shops nobody has checked.
Start finding better e-commerce leads today
Free trial with the full dataset and every filter, and the allowance resets daily rather than expiring.
