Want to know how much of the local customers a store would actually win - and how much your own stores steal from each other? This step-by-step guide walks you through the Market Share tool from the first click to the final report, with no jargon.
Imagine three pizza shops in the same part of town. Some customers live right next to one shop and will almost always pick it. Others live between two or three shops and could go to any of them. Market Share works out how those customers split up - how many each shop is likely to win, and how big each shop's slice of the whole pie is.
You use it to answer very practical questions: If I open here, how many customers will I realistically capture? How much will a competitor next door cost me? If I open a second store, will it bring in new customers or just steal from my first one? This guide walks you through it from the first click to the final report. No maps background needed - we explain every term as we go.
In plain English: “Decision support, not a forecast”
The numbers are an educated estimate to help you compare options and shortlist stores - not an exact prediction of next year's sales. Treat it as a smart first pass, then confirm with local knowledge.
1
Open the Market Share tool
At the top of the map there is a tool menu. Open it and choose Market Share. (The other modes are for general map exploration and area workflows; Market Share is the one that compares stores against competitors.)
Open the tool menu and pick Market Share to start comparing your stores against competitors.
2
Add your stores and your competitors
You work with two lists: My stores (the blue ones - yours) and Competitor stores (the red/orange ones). Add a store by clicking Add by clicking the map and dropping a pin. You can rename any store and drag its pin to move it.
Each store also has an Attractiveness number. Leave it at 1 if all the stores are roughly equal. Make it bigger for a store that pulls more strongly - a larger floor area, a flagship, a stronger brand.
In plain English: Attractiveness
A simple “pulling power” dial. A store set to 2 is treated as twice as appealing as a store set to 1, so it wins a bigger share of the customers they compete over.
Add at least one of your own stores, plus any competitors. Each pin has a name, an attractiveness dial, and its own catchment.
3
Draw a catchment for each store
A catchment is the area a store can realistically serve. You set one rule that applies to every store - for example, “5 minutes by bike” or “2 km by car” - and MapBees draws the matching area around each pin. Pick a travel mode (driving, walking, cycling, transit), choose whether to measure by time or distance, set the value, then press Generate catchments.
In plain English: Catchment
A catchment (an isochrone) is just “everywhere you can reach in X minutes.” A 5-minute driving catchment is the blob of streets you could drive to in 5 minutes from the store.
Market share is only contested where these catchments overlap. The parts of a catchment no competitor reaches are captured outright; the overlap is where the real competition happens.
A catchment does not have to be one tidy shape. Where a river, a rail yard or a freeway cuts the streets off, it can come back in more than one piece, or with a hole in the middle. MapBees keeps every piece, and the hexes inside a hole count as outside the catchment, so nobody the store can't reach in time is counted as its demand.
One catchment rule applies to every store. Here: a 5-minute cycling catchment. Move a store and its catchment rebuilds.
4
Optional: choose how you measure “demand”
By default, demand means the number of people living in an area - everyone counts equally, and Total population is always reported. But you may want to measure demand a different way: by households, by a target age group, by income, by how many places of a kind sit nearby, by how much built space (building volume) sits in an area - or by your own data.
In the Demand profile section, press + Add demand measure: the measures open in the same groups as the Score's panel - Building volume, Places, Accessibility, Population & age and Affluence - which you can expand and collapse. A sixth card, Your data, holds measures made from files you add with Add your file: a CSV of your own points - where your loyalty-card customers live, say - with lat and lon columns, or an h3 column. Your file stays in this browser. Tick any measure you care about. Each measure you tick stays separate - we call it a demand lens - and you get a dedicated report section for it. Measures are never blended together into one mixed-up score: there is no weighting dial. The one exception is yours to make: Combine adds measures of one kind up into a single lens, such as two age bands into one.
MapBees is smart about each measure's units:
Counts (population, households, an age band, places, building volume, a count of your own points) are used directly as the demand - a count is a count.
Averages (e.g. income) can't be added up, so they instead weight the population: hexes (a hex is one hexagon on the map, about 350 m across, roughly 0.1 km²) that score high on the measure contribute more of their residents. For these you can pick a direction - More is better targets high values, Less is better targets low ones.
In plain English: Demand lens
One way of counting customers. “Total population” is one lens; “households” is another; “income-weighted population” is another. Pick several and you get several side-by-side reports - each honest in its own unit - instead of one blurry combined number.
Optional: tick any demand measures - grouped and collapsible. Each ticked measure becomes its own report section; counts are used directly, averages (like income) weight the population.
When customers sit between several stores, what decides which one is “closer”? You pick the method:
Straight line - the simple “as the crow flies” distance. It is instant and free, and good enough for a first look.
Route - the real travel time along actual roads. More realistic (rivers, motorways, and one-way streets all matter), so it is the better choice for a final decision.
In plain English: Why distance matters
The tool assumes people lean toward the store that is easier to reach. “Straight line” treats a store across a river as close; “Route” knows you have to drive to the bridge first.
Straight line is fast and free; Route uses real road travel time for a more realistic split.
6
Optional: fine-tune the model
Under Customize model parameters there are two dials. You can ignore them and the defaults work well - but here is what they do, in plain terms:
Attractiveness enhancement (α) - how much a store's size/strength matters. Turn it up and the “big” stores pull even harder.
Distance decay (β) - how quickly people give up as a store gets farther away. Turn it up and customers stick much more strongly to their nearest store.
Right below is the Own-network overlap switch. Leave it On for the realistic picture (your nearby stores share the customers they both reach). Flip it Off to see how each of your stores would do as if it were the only one - which reveals how much overlap your own network is creating.
In plain English: The Huff model (what’s doing the math)
All of this feeds a well-known rule called the Huff gravity model: like gravity, a bigger and closer store exerts more “pull,” so it wins a larger share of the customers that several stores compete over. You never do the math - the tool does.
Two optional dials: how much store strength matters (α) and how fast distance puts people off (β). Defaults are sensible.
Press Calculate
When your stores have catchments, hit Calculate market share. Nothing runs until you ask it to (Route mode in particular uses a paid map service, so the tool never surprises you). Change anything afterwards and a Recalculate prompt appears.
Tip: start with Straight line to explore for free, then switch to Route for the final answer.
7
Read the market share report
This is the payoff. The report is organized around the demand lenses you chose in Step 4. If you only used the default, you get one report on Total population. If you ticked extra measures, you get one section per lens - and, at the very top, a comparison table so you can scan them side by side.
The comparison table has one row per lens, with its My captured, My share, Contested, and Total. Because each lens is measured in its own unit (people vs households vs building volume), the rows are not meant to be added together - they are parallel views, not slices of one pie.
Each lens section then expands into the full detail: headline boxes on top, then the ranked store table. The headline numbers are:
My captured demand & My market share - how much demand your stores win in total, and that as a percentage of everyone in the analysis.
Total catchment demand - all the demand across every store's catchment, in that lens's unit. Competitor share is the slice the competition takes.
Contested demand - demand in the overlap that had to be split. Cannibalized demand - the demand your own stores took from each other.
In each lens's table, every store shows Exclusive (demand only it reaches), Contested (its share of the overlap), Captured (the two added together), and Share (%), ranked from biggest winner to smallest. A per-lens CSV export sits above each table, and a single Overlap: On/Off toggle at the top of the report controls every lens at once.
In plain English: Why several sections instead of one number
Mixing income, age and population into a single “demand score” hides what is actually happening. Separate sections keep every figure interpretable: you can see your share of people, of households, and of high-income residentsindependently, and decide which one matters for this store.
Final analysis map: each contested hex is split by the share each store captures, with colored catchment outlines for context.The report: a comparison of your demand lenses up top (when you pick more than one), then a full section per lens - headline numbers plus every store ranked by captured demand.
8
See who lives in the contested area
Finally, the tool profiles the people in the overlap - the customers everyone is fighting over. You get a quick read on population, density, average age, the share of foreign nationals, nearby places, and more. It is the same demographic snapshot used elsewhere in MapBees, focused on the battleground.
That helps you sanity-check the result: if the contested customers don't look like the people you want, you might reposition a store, shrink the catchment, or shape demand back in Step 4.
A profile of the people in the contested overlap - so you can check the customers you're competing for are the ones you actually want.
Every term, in one place
Bookmark this if a word ever trips you up.
Catchment
The area a store can realistically serve - everywhere within, say, a 10-minute drive.
Demand
The customers in an area. By default this is the number of people who live there.
Demand lens
One way of counting demand - e.g. population, households, or income-weighted residents. Each lens you pick gets its own report section; lenses are never blended together.
Building volume
How much built space (the volume of buildings) sits in an area - a handy proxy for activity when people counts alone don't tell the whole story.
Exclusive demand
Customers only one store can reach. That store captures all of them.
Contested demand
Customers who could visit two or more stores, so the stores have to share them.
Captured demand
The total a store wins: its exclusive customers plus its share of the contested ones.
Market share
Your captured demand as a percentage of all the demand in the analysis.
Cannibalization
Demand your own stores take from each other when they sit too close together.
Huff model
A simple rule of thumb: a closer, bigger, or stronger store wins a larger share of shared customers.
The whole workflow, in six lines
Open the tool menu and choose Market Share.
Add your stores (blue) and competitors (red/orange).
Draw a catchment - by driving time, transit time or distance - for each store.
Pick how distance is measured: Straight line for free, or Route for realistic travel time.
Optionally pick extra demand lenses and fine-tune the model, then press Calculate.
Read the report: compare your demand lenses, then dig into captured demand, share, contested overlap, and cannibalization per lens.
Remember: Market Share is a fast, transparent estimate to help you compare and shortlist - a smart starting point, not a guaranteed sales figure.
Quick questions
How do I start a market share analysis?
Open the Market Share tool, add at least one of your own stores plus any competitors, draw a catchment (by driving time, transit time or distance) for each, then click Calculate market share to see the report.
Can I measure demand by income, households, or building volume instead of population?
Yes. Demand defaults to total population, but you can tick extra measures from the same groups as the Score - Building volume, Places, Accessibility, Population & age and Affluence - plus Your data, measures made from a file of your own points that stays in your browser. Each measure becomes its own report section (a 'demand lens'): counts such as households, places or building volume are used directly, while averages like income weight the population (with a More is better / Less is better direction). Measures are never blended into one combined score - you get one clear, side-by-side section per lens.
What is a catchment?
A catchment is the area a store can realistically serve. MapBees draws it by travel time (an isochrone): everywhere you can reach within, say, a 10-minute drive of that store. It can come in more than one piece or with a hole in it, and only the hexes inside it count as that store's demand.
What does contested demand mean?
Contested demand is the customers who live where two or more catchments overlap. They could realistically visit several stores, so the tool splits them between those stores using the Huff model.
What is store cannibalization?
Cannibalization is the demand your own stores take from each other when their catchments overlap. The report shows this so you can place new stores that add coverage instead of competing with yourself.
Is the market share number a sales forecast?
No. It is decision support for comparing stores and planning a network, not an exact sales prediction. It estimates the relative pull of each store from attractiveness, travel distance, and nearby demand.
See it on a real map
Open the Market Share workflow and try the same analysis steps on your own stores.
Builds MapBees's location-intelligence pipeline end to end — census and Overture Maps ingestion, H3 hex scoring, and the map interface — and writes the methodology behind every number on the site.