Major ClientsNarrow moat

Dino Polska (DNP) — moat facet

No customer concentration whatsoever, and a customer base that nevertheless moves as one, because it is one country buying food.

Dino's filings contain no customer concentration disclosure, because there is nothing to disclose.

Largest customer as a share of revenueCoreWeave67%Nvidia22%Kioxia20,4%Dino PolskaNo concentration note at allSeveral million Polish households, none of them material, none of them contracted.
The purest case of no customer concentration in this collection — and every customer moves at the same time.

The company sells groceries across 3 176 stores1 to several million Polish households, none of whom has an account, a contract or any negotiating position. There is no loyalty scheme of consequence, no subscription, and no customer whose departure would register. Set against CoreWeave at 67% of revenue from one customer, or Nvidia at 22%, this is the opposite extreme in the collection.

That is genuine diversification of counterparty, and it is worth less than it appears, because every one of those customers is exposed to the same things at the same time. They all live in Poland, they are all paid in złoty, they all shop for food, and they all became more price-sensitive at once in 2026 — which is why like-for-like fell to 0,3% in the second quarter2 and the EBITDA margin fell from 7,54% to 6,98%3. A customer base of several million behaves, for this purpose, as a single customer with one wage packet and one grocery bill.

What those households actually buy is worth naming, because it is the part of the relationship Dino controls. Nearly half the basket is fresh — meat, cold cuts, fruit and vegetables, dairy and bread — restocked every day4. A packaged-goods shopper can be won back with a price cut; a fresh shopper has to be won back with a habit, which is slower to lose and slower to regain.

There is one exception to the no-concentration rule, and it is internal. Agro-Rydzyna, the wholly owned meat plant, makes 3 945,3 million złoty of product and sells 264,7 million of it outside the group5 — a manufacturer with essentially one customer, which happens to be its parent.

So Dino has four counterparties worth understanding: millions of shoppers who matter only in aggregate, a captive catchment in each town, a customer base that turned price-sensitive in unison, and a factory whose only real client is the shop above it.

The measure is like-for-like sales. With no customer concentration to track, the volume itself is the only reading available on whether the customer base is healthy, and at 0,3% it currently is not.

Moat trajectory: Narrowing

No concentration and no contracts, and in 2026 the whole customer base turned price-sensitive at once — like-for-like 0,3%, EBITDA margin down to 6,98%.

The number that tests this moat
Reported
Net profit, first half of 2026
716,3m zł, up 1,0% on revenue up 12,5%

Every customer is a Polish household buying food in złoty, so they turn price-sensitive together. Profit barely rising on double-digit sales growth is that showing up all at once.

Source: Dino Polska Management Report for the first half of 2026 ↗
Dig deeper
References
  1. ReportedThe company sells groceries across 3 176 stores to several million Polish households, none of whom has an account, a contract or any negotiating position.
    Dino Polska Management Report for the first half of 2026 - 3 176 stores at 30 June 2026 (341 more than a year earlier), 86 openings in the second quarter, revenue of 9 531,4m złoty up 10,5%, like-for-like growth of 0,3% in the quarter and 2,2% for the half, and the EBITDA margin of 6,98% against 7,54% — H1 2026 · publ. August 2026 · source ↗
  2. ReportedThey all live in Poland, they are all paid in złoty, they all shop for food, and they all became more price-sensitive at once in 2026 — which is why like-for-like fell to 0,3% in the second quarter and the EBITDA margin fell from 7,54% to...
    Dino Polska Management Report for the first half of 2026 - 3 176 stores at 30 June 2026 (341 more than a year earlier), 86 openings in the second quarter, revenue of 9 531,4m złoty up 10,5%, like-for-like growth of 0,3% in the quarter and 2,2% for the half, and the EBITDA margin of 6,98% against 7,54% — H1 2026 · publ. August 2026 · source ↗
  3. ReportedThey all live in Poland, they are all paid in złoty, they all shop for food, and they all became more price-sensitive at once in 2026 — which is why like-for-like fell to 0,3% in the second quarter and the EBITDA margin fell from 7,54% to...
    Dino Polska Management Report for the first half of 2026 - 3 176 stores at 30 June 2026 (341 more than a year earlier), 86 openings in the second quarter, revenue of 9 531,4m złoty up 10,5%, like-for-like growth of 0,3% in the quarter and 2,2% for the half, and the EBITDA margin of 6,98% against 7,54% — H1 2026 · publ. August 2026 · source ↗
  4. ReportedNearly half the basket is fresh — meat, cold cuts, fruit and vegetables, dairy and bread — restocked every day.
    Dino Polska Management Board's Activity Report for 2025 - Section 3,2, description of the Group (Agro-Rydzyna, the wholly-owned meat processing plant at Kloda supplying the fresh counters, private label at 6,6% of network sales excluding its output, the eZebra internet business, and the direct sourcing arrangements with producers) — FY2025 · publ. March 2026 · source ↗
  5. ReportedAgro-Rydzyna, the wholly owned meat plant, makes 3 945,3 million złoty of product and sells 264,7 million of it outside the group — a manufacturer with essentially one customer, which happens to be its parent.
    Dino Polska Group consolidated financial statements for 2025 - income statement, balance sheet and notes (revenue split between goods and own production, the segment note, property plant and equipment of 7 765,5m złoty, intangibles, related-party transactions, impairment testing by cash-generating unit, and the Zawiercie distribution centre approved after the reporting date) — FY2025 · publ. March 2026 · source ↗
Sources
Generated September 24, 2026