By Ian Hargreaves · Market intelligence · Lausanne CH Market matrix · Research vintage 2016–2025 · not refit monthly

Market matrix

Every market against every feature, one page. Rows are markets; columns are the four factor scales, or the 13 underlying items. Bars are centred on the panel median; blue runs above it, grey below. Click any column header to sort. Positions are 2016–2025 averages, not current states. The selector adds one retail sub-category as your own column: an overlay on the same scale, outside the factor solution, never a fifth scale.

Basis
Mean position · 2016–2025
Scale
0 = panel median · robust SD units
Markets
35 + euro-area aggregate (pinned last)
Flags
* supplementary † short history
01Countries × features
Sorted A–Z · click a column to rank
Market every header sortsS1 · Headline cycle 6 items · α 0.92S2 · Sticky services 4 items · α 0.67S3 · Tech durables 2 items · α 0.53S4 · Retail activity 1 item
ALAlbania*
-0.6
-1.1
+0.7
+0.7
ATAustria
-0.0
+0.0
+0.9
-0.9
BEBelgium
-0.3
+0.2
-0.6
-1.0
BABosnia and Herzegovina*···
+2.1
BGBulgaria
+0.5
+0.2
-1.2
+1.2
HRCroatia
+0.2
-0.4
+0.7
+0.7
CYCyprus
-0.8
-1.2
-0.5
+1.0
CZCzechia
+0.5
+1.0
+0.6
-0.1
DKDenmark
-0.9
-0.5
-0.7
-0.8
EEEstonia
+1.0
+1.2
-0.9
-0.2
FIFinland
-0.9
-0.1
-0.0
-0.7
FRFrance
-0.7
-0.5
-0.4
+0.0
DEGermany
+0.0
-0.6
+0.3
-0.4
ELGreece
-1.0
-1.3
-0.7
-0.7
HUHungary
+1.5
+2.2
+0.7
+0.2
IEIreland*†
-1.6
-0.0
-1.6
+0.2
ITItaly
-0.8
-1.6
-0.7
-1.1
LVLatvia
+0.4
+0.6
+0.5
-0.5
LTLithuania
+0.7
+1.7
+0.5
+0.9
LULuxembourg
-0.3
-0.7
-0.7
-0.2
MTMalta
-0.2
-0.3
-0.1
+1.0
MEMontenegro*
+0.2
+0.2
+0.4
+1.8
NLNetherlands
-0.2
+0.2
+0.6
-0.4
MKNorth Macedonia
+0.0
-0.3
+1.1
+0.7
NONorway*
+0.0
+0.0
+1.5
-0.8
PLPoland
+0.8
+1.1
-0.5
+0.9
PTPortugal
-0.7
-0.8
-1.1
+0.2
RORomania
+1.0
+1.1
+1.6
+1.7
RSSerbia*
+0.7
+0.8
+0.5
+1.2
SKSlovakia
+0.8
+0.6
+0.7
-0.3
SISlovenia
-0.2
+0.4
+0.0
+0.2
ESSpain
-0.7
-1.2
-0.8
-0.3
SESweden*†
+0.0
-0.8
-0.8
-0.4
CHSwitzerland*
-1.7
-1.8
-0.7
-0.7
TRTürkiye*
+8.2»
+6.5»
+3.8»
+2.7
EA21Euro area···
-0.4
Above panel median Below panel median Your category · user overlay, outside the factor solution » beyond ±3 (clipped bar, true value shown) · not published at this level
02Clusters of features · r ≥ 0.80
Food · Furnish · Hobbies · Upkeepn 4 · mean r 0.80
Outside any cluster (9): AV gear · Computers · Education · Health · Drinks · Rents · Tobacco · Transport · Retail

Which items move together, pooled across markets. Series are z-scored within each market before correlating, so this is co-movement, never shared levels.

03Clusters of countries · r ≥ 0.80
No clusters at r ≥ 0.80
Outside any cluster (35): AL · AT · BA · BE · BG · CH · CY · CZ · DE · DK · EE · EL · ES · FI · FR · HR · HU · IE · IT · LT · LU · LV · ME · MK · MT · NL · NO · PL · PT · RO · RS · SE · SI · SK · TR

Whole systems compared: each market is its full stack of 13 item trajectories. Two markets cluster only if the entire system co-moves at 0.80.

04Feature–country relationships · r ≥ 0.80

441 series (market × item) · 4 clusters · 301 series inside, 140 outside

Food×33 · Drinks×33 · Transport×33 · Furnish×32 · Upkeep×32 · Hobbies×31 · Health×28 · Rents×25 · Education×22 · AV gear×10 · Tobacco×9 · Computers×6n 294 series · 34 markets · mean r 0.53AL AT BE BG CH CY CZ DE DK EE EL ES FI FR HR HU +18 moreRetail×3n 3 series · 3 markets · mean r 0.77ES FR ITComputers×1 · Education×1n 2 series · 2 markets · mean r 0.85IE LTComputers×2n 2 series · 2 markets · mean r 0.83LU PL

Read with care. The matrix above shows positions (levels); these clusters show co-movement. A tight 0.80 threshold on the full window including 2020–21: COVID manufactures co-movement, and no uncertainty is attached yet. Components chain, so each chip shows its mean pairwise r; a large cluster with a low mean is chained, not tight.

05Likely latent influences · readings, not findings

What a factor is, and is not. The model behind these scales assumes a small number of unobserved influences generating the co-movement of the underlying indicators. Assuming is not finding: the factors are covariance patterns with names attached. The readings below are consistent with the loadings and with outside evidence, and they could be wrong. The structure is also regime-dependent: it is essentially the post-2021 structure, and positions are 2016–2025 averages, not current states.

S1 · Headline-cycle exposure. Food, drinks, home upkeep, furnishings, transport and hobby-goods inflation rising and falling together. This scale tracks headline inflation almost one-for-one (r≈0.94), so the most defensible reading is that it IS the 2021–23 cost shock spread across the categories it travelled through: energy, import and commodity costs passing into goods prices. A market's position here is exposure to that common cycle, not a hidden trait.

S2 · Sticky-services & excise. Rents, health, education and tobacco. The first three are the classic institutionally priced categories: contracts, indexation and administered tariffs that reprice slowly and catch up late. Tobacco moves on excise decisions. This cluster reproduces, from our data alone, the a-priori “stickiest categories” of the euro-area price-setting literature, which is the strongest outside corroboration any of these factors has. Reliability is nonetheless marginal (α 0.67) and tobacco is the weak member.

S3 · Tech-durables prices. Audio-visual gear and computers: globally traded goods with a persistent, quality-driven price decline. Their prices are set on world markets more than domestic ones, which reads as a separate influence, and part of the commonality may be shared measurement practice (hedonic adjustment). Two items only: an index, not a scale, but the only piece of this structure stable across the 2021 regime change.

S4 · Retail activity. Volume growth stands apart from every price factor in every encoding we tried. The honest reading is thinner than a latent influence: one real-activity indicator in a battery of prices cannot form a factor, so its separation partly reflects the instrument. What it does establish is that the price cycle and the demand cycle are different things: a market's inflation exposure tells you little about its demand cycle.

Why the items view exists. Items inside one factor do not sort markets identically: rents and health, for example, rank countries almost independently. The factor columns are the denoised summary; the item columns are the same encoding without the compression. Item positions are country means of winsorized year-on-year values over the same window, normalized the same way, so the two views are directly comparable.

Your category column. The selector adds one retail sub-category (Eurostat sts_trtu_m, volume of sales, automotive fuel excluded) as an extra column: country means of winsorized year-on-year growth over the same window, normalized the same way, so its positions read on the same scale and its header sorts like any other. It is a user overlay for ranking markets by a category you care about, and that is all it is: the sub-categories were never inputs to the factor estimation, and a market's position on your column says nothing about the validated structure in the other columns. Markets whose category series is unpublished or too short show “·”.

What a factor is, in plainer terms →
© 2026 Ian Hargreaves. Robust normalization per column (median/MAD across 33 markets) ← Back to the monthly data sheet Built 16 July 2026 · Positions are 2016–2025 averages, not current states