Hotelling’s Spatial Theory (Restaurant Analysis)
Hotelling’s spatial-competition model helps compare restaurant locations by estimating which customers each restaurant can attract after accounting for price and travel cost. Define the market, map customer origins, and estimate how far people will travel. Then calculate likely customer boundaries and test how prices, access, and competitor locations change demand. The results are planning scenarios, not guaranteed forecasts.
Would customers choose your restaurant if a competitor were closer, cheaper, or easier to reach? That is the central question behind spatial competition analysis. I use Hotelling’s framework as a simple way to organize it: customers compare nearby options, and the effort or cost of getting to each one affects their choice.
The classic model is deliberately spare. Real restaurant markets are not straight lines, and people do not choose based on distance and price alone. Still, the framework can help you compare candidate sites, spot weak assumptions, and decide what local evidence to collect before committing.
What the spatial-competition model explains
Hotelling’s model describes how businesses compete for customers who are spread across a geographic area. Each customer chooses the option with the lowest combined price and travel cost. For restaurants, it offers a starting point for estimating how location and price may shape customer capture, rather than a ready-made forecast.
A basic model represents the market as a line from (0) to (L). Each restaurant has a location (x_i), and each customer has an origin (x). The customer compares options using a generalized cost:
[ G_i(x)=p_i+\tau d(x,x_i) ]
Here, (p_i) is the restaurant’s customer-facing price, (d(x,x_i)) is travel distance, and (\tau) is travel cost per distance unit. Customers are assigned to the option with the lowest generalized cost.
This cost is a modeling tool, not a claim that every customer calculates prices and miles in the same way. It can represent money, time, or a combined measure, but the units must be consistent. If travel time matters more than distance, use time and a cost per minute instead.
The classic setup also assumes customers are spread along a market line and make choices based on the modeled options. Restaurant decisions often involve more factors, such as cuisine, brand, service, parking, and delivery. Add those factors when they are important to the choice being studied.
Define the Restaurant Market and Customer Distribution
A market definition states which customer origins and restaurant alternatives belong in the analysis. The standard model uses a one-dimensional interval, often scaled from 0 to 1, with a stated customer density. This simplification makes capture easy to calculate, but the chosen area and customer pattern must reflect the decision.
Start by defining the trade area: the locations from which customers might realistically visit. Choose a travel mode, such as walking, driving, or public transit. Then map existing restaurants, candidate sites, major roads, transit stops, and barriers that affect access.
Represent customer origins with a density (\rho(x)). In the simplest version, density is uniform: each section of the market contains the same number of potential customers. If actual demand clusters near offices, homes, campuses, or shopping areas, use a non-uniform density based on local data.
For a total customer mass (M) spread evenly across a line of length (L), density is (M/L). If the market is 10 kilometers long and contains 1,000 potential customer trips in the period being modeled, uniform density is 100 trips per kilometer. That is an illustrative input, not a typical restaurant benchmark.
| Model input | Simple assumption | Better local evidence |
|---|---|---|
| Market shape | One-dimensional line | Customer origins and travel network |
| Customer density | Uniform across the area | Population, visits, or sales by zone |
| Travel mode | One mode for all customers | Mode-specific travel times |
| Restaurant options | Locations and prices | Locations, menus, and relevant alternatives |
Be clear about what “customer” means. It might be a person, household, visit, or potential transaction. Use the same unit throughout, and match the analysis period to the decision, such as a weekday lunch period or a full week.
Estimate Travel Costs, Prices, and Competitive Capture
Competitive capture is the share of modeled customers assigned to each restaurant after comparing generalized costs. With fixed locations and prices, the key step is to find where two nearby options have equal cost. Those indifference points divide the market into customer zones.
For two restaurants at (x_1) and (x_2), where (x_1<x_2), customers choose restaurant 1 when its generalized cost is lower. If both have the same travel-cost rate and distance is measured along the line, the boundary (x^*) is:
[ x^*=\frac{p_2-p_1+\tau(x_1+x_2)}{2\tau} ]
The equation applies when the boundary falls between the restaurants. If it falls outside the market or past one restaurant, check the endpoints and assign each customer to the lowest-cost option. For more than two restaurants, compare all available options and identify the lowest-cost choice at each point.
Consider an illustrative market from 0 to 10 kilometers. Restaurant 1 is at kilometer 3, restaurant 2 at kilometer 7, and customer density is uniform. If prices are equal, the boundary is at kilometer 5, so each restaurant captures half the market. If restaurant 1 charges $2 less and travel cost is set at $0.50 per kilometer, the formula places the boundary at kilometer 7. In this simplified example, restaurant 1 captures 70% of the market.
That result depends on the inputs. It does not mean a $2 discount will produce a 70% share in a real neighborhood. Real customers may prefer a particular menu, avoid a route, or choose an option outside the model.
Estimate demand by adding up the customer density within each restaurant’s assigned area. For uniform density, demand is density multiplied by the length of the area captured. For uneven density, integrate or sum the density over the assigned zones. Revenue can then be estimated as price multiplied by predicted transactions, while keeping demand and revenue distinct.
Validate Assumptions and Stress-Test Location Scenarios
A stress test changes key assumptions to see whether a location ranking remains stable. It helps reveal which inputs drive the result and where better data would matter most. Because the basic model simplifies customer behavior, its output should be compared with observed travel, traffic, and sales before it guides a major investment.
Use local evidence where available: customer origin records, transaction counts by time, travel times, competitor prices, and surveys about where customers consider dining. For new sites without sales history, use comparable locations carefully and label those estimates as uncertain.
Test a range of values for travel cost, customer density, prices, and competitor locations. There is no universal travel-cost value or capture threshold. Calibrate these inputs to the local market, and report the assumptions alongside each scenario.
| Scenario | What changes | What to check |
|---|---|---|
| Base case | Best current estimates | Predicted capture and sales |
| Higher travel cost | Customers resist longer trips more | Whether distant zones are lost |
| Price change | One restaurant raises or lowers price | Boundary movement and revenue |
| Uneven demand | Origins cluster in some zones | Whether a site is near real demand |
| New competitor | Add a nearby option | Which customer areas shift |
Illustrative site comparisons
The following are hypothetical planning cases, not reports of actual restaurant openings. They show how the framework can be used without treating its output as a proven outcome.
- Two sites along a shopping corridor: Suppose two candidates sit on the same main road. A line model may give each a similar catchment under equal prices. Before choosing, compare road access, parking, and actual customer origins; a median or one-way system can make straight-line distance misleading.
- A site near a river crossing: A restaurant may appear close to customers on a map but require a long trip to reach. Replace straight-line distance with network travel time, or separate the market into zones divided by the barrier. The simple line model may otherwise overstate capture.
- A lower-priced entrant: A new restaurant may use price to attract customers from an established neighbor. Test several price differences, then compare predicted demand with costs and capacity. The model does not show whether the discount is profitable or whether customers value the two menus equally.
Check whether the model’s predicted patterns resemble available evidence. If actual customer origins fall well outside the predicted catchment, revisit the market shape, travel measure, customer density, or omitted restaurant differences.
Translate Predicted Demand into Restaurant Positioning
Positioning means deciding how a restaurant should compete given its location and the alternatives customers can reach. The model can show where price or access may influence customer capture. It cannot, by itself, identify the best menu, guarantee demand, or prove that a site will be profitable.
Use results to compare choices, not to declare a single “winning” location. A site with a larger modeled catchment may face higher rent, lower capacity, or stronger competition. Add relevant business constraints, such as seating, opening hours, delivery range, and service capacity, before turning potential demand into a sales estimate.
A practical workflow is:
- Define the decision. Compare candidate sites, pricing plans, or competitive responses.
- Map the market. Set boundaries, customer origins, travel modes, competitors, and access barriers.
- Choose inputs. Estimate density, prices, and travel costs in consistent units.
- Calculate boundaries. Assign each customer area to the lowest generalized-cost option.
- Estimate demand. Sum customer density within each captured area.
- Stress-test and validate. Change uncertain inputs and compare outcomes with local evidence.
The useful question is not “What share does the theory promise?” It is “Which assumptions change the decision, and can I verify them?” If small changes in travel time or density reverse the ranking of candidate sites, gather better data before treating one site as clearly superior.
Conclusion and FAQ
The model is most useful as a disciplined comparison tool. It makes the role of location, price, and travel cost explicit, then shows how those assumptions shape estimated customer capture. Use local travel and demand data, test alternatives, and treat every result as a scenario rather than a guaranteed restaurant outcome.
Frequently asked questions
What is Hotelling’s model in restaurant analysis?
It is a framework for studying how customers choose between businesses at different locations. It commonly assumes customers select the option with the lowest combination of price and travel cost.
What does customer capture mean?
Customer capture is the number or share of modeled customers assigned to a restaurant. It depends on the market area, customer density, prices, locations, and travel-cost assumptions.
How does the model find the boundary between two restaurants?
It finds the point where a customer’s generalized cost is equal at both restaurants. Customers on either side are assigned to whichever option has the lower modeled cost.
Does the theory identify the best restaurant location?
No. It can compare candidate locations under stated assumptions, but it does not guarantee sales or profit. Costs, capacity, menu appeal, and local access also matter.
Can I use straight-line distance?
Only when it is a reasonable measure of travel. Roads, rivers, transit routes, and other barriers may make network distance or travel time a better choice.
Does the model assume customers are spread evenly?
The simplest version does. A more useful local analysis can use uneven customer density based on population, customer origins, or observed visits.
How should I estimate travel cost?
Choose a consistent measure, such as money per kilometer or cost per minute, and calibrate it to local behavior where possible. The model does not provide a universal value.
Can the model compare prices?
Yes. Price can be included in generalized cost. You can test how different prices change customer boundaries, then separately assess costs, revenue, and profitability.
What if restaurants offer different food or service?
Add a suitable measure of preference or differentiation, or use a model that accounts for those differences. A price-and-distance-only model may misstate choices when offerings differ substantially.
When is the basic line model unsuitable?
It is a poor fit when the market is strongly shaped by road networks, barriers, uneven demand, or multiple travel modes. Use network travel times or a spatial choice model when those features materially affect access.
(This article was written by one of our staff writers, Daniel M. Whitaker. Visit our Meet the Team page.)
