Technologies Used: Python, JavaScript
Overview
The drugstore retail market in Germany is dominated by three players: dm ("dm-drogerie-markt", ), Rossmann and Müller. Collectively, these chains operate over 9,000 stores across the country. According to the website store finder of each chain, here is the total store count per brand:
Brand |
Store Count |
Founding Year |
Revenue (2023) |
Market Share (Germany) |
DM |
2,149 |
1973 |
€11.4 billion |
~24% |
Rossmann |
2,311 |
1972 |
€9.3 billion |
~22% |
Müller |
582 |
1953 |
€4.6 billion |
~8% |
According to Statista (
Link), DM and Rossmann have over 80% of market share combined in 2023. The two chains, founded only a year apart, deployed extensive growth strategies, focusing initally around their "base" and later regionally & nationwide. The third competitor, Müller, has significantly less stores and a more regional focus; thus, in this analysis I will focus
only on DM and Rossmann.

DM is the dominant player in terms of revenue and market share, despite fewer stores than Rossmann. Geography, of course, plays a key role in its market dominance. By looking at opening date by store, it's possible to observe expansion waves, market entry strategy by region and urban vs. rural penetration. This analysis demonstrates the
store expansion from 1973 to present across Germany:
This highlights some interesting expansion patterns regionally:
the gradual expansion into the GDR in the 1990s, a significant saturation strategy to consolidate foothold in its strongest markets (North Rhine-Westphalia, Bayern, Baden-Württenburg, Rhineland-Pfalz) and nationwide expansion from 2005 onwards. This total expansion effort can be summarized by looking at total store openings by year, with the peak number of stores opened being 156 at 2014:
Next, let's take a look at Rossmann.

No opening date is available for Rossmann store locations. However, we can still visualize the stores as they are today, and compare them to DM's footprint in the map below.
Optional: use keyboard buttons to move around the map (←, →, ↑, ↓) and + and - to zoom:
We can already see how the locations overlap heavily, particularly around the major cities. Let's deep dive into the division of territory within major cities.
THE DRUGSTORE DUOPOLY
Unique Territory Share: We begin by creating
Voronoi Polygons around each store location for each brand. With this approach, each store is assumed to "own" the closest surrounding area, and thus each zone is a theoretical potential market. Keeping that in mind, DM covers 37% of Germany, whilst Rossmann covers 63%. In cities, the share is heavily fragmented and divided, as can be seen in Berlin:
This suggests a few things:
- Rossmann has more stores in rural or spatially isolated regions than DM, suggesting a broader market approach
- DM is more urban-centric and is more present in the contested areas
Let's include population now (using
Landscan 2023 data) for each brand's total territory:
Brand |
Population |
Rossmann |
44,029,086 |
dm |
40,157,416 |
So despite Rossmann having significantly higher footprint, its population share is only slightly larger - 52% vs. 48%. This confirms DM's concentration in dense, urbanized areas, and potentially higher efficiency and/or customers per km². Let's take a deep dive into what's going on in cities.
City Analysis: We create a 5-km hexagon grid for Germany, counting of DM and Rossmann locations per cell, and classifying into 4 categories (see Legend in top-right):
This allows us to identify precisely the main duopoly "battlegrounds", where both brands are heavily present. Based on the hexagon classification, these are predominantly located in NRW, but essentially present in all major cities. Another way to visualize this is using a pie chart, detailing the number of locations present for each location (DM in
yellow and Rossmann in
red):
To summarize the duopoly competition by city, we can compute a few KPIs to indicate where the competition stands. The
imbalance is a simple indicator that is calculated as
Abs of total(dm) - total(rossmann)
, and allows to see where the competition is closest, whereas the
duopoly share indicates what share (%) of the city constitutes a duopoly. Here are the results for the largest 25 cities, sorted on
high branch count and
low imbalance (indicating high competition):
Sources
- DM Store Count & Revenue (Germany-only, FY 2023/24):
- Rossmann Store Count & Revenue (Germany-only, 2023):
- Müller Store Count & Revenue (Germany-only, FY 2022/23):
- Founding Years:
- DM: 1973
- Rossmann: 1972
- Müller: 1953
- Source: corporate sites or Wikipedia
- Market Share Estimates (Germany, 2023):
Back to my projects →