Methodology & sources

What each number is, where it comes from, how late it is, and what it is not
Source summary
Cadence is the real publication rhythm, measured against each live source — not the rhythm the source's own marketing implies.
SourceWhat it measuresCadenceLagRevised?
EUMOFAEU imports from third countries, volume and CIF unit value Weekly~2 weeksYes — back-filled for several weeks
Eurostat COMEXTGreek exports; EU27 imports from Türkiye Monthly6–7 weeksYes — early prints revise
Sogemi, MilanoWholesale quotation, farmed fresh, by origin × size Weekly (Tuesdays)Same dayNo
RNM / FranceAgriMerWholesale quotation at Rungis, farmed Published daily; changes rarelySame dayNo
MercamadridPrice (monthly) and traded volume (daily) Monthly price, daily volume~1 day volumeWithin-month
Madrid open dataOrigin split behind the Mercamadrid series AnnualUp to a yearNo
ECBEUR/USD reference rateDaily (TARGET days)Same dayNo

Unit value is not price

The EUMOFA and COMEXT figures on this site are unit values: total declared customs value divided by total declared net weight for a given code, origin and period. They are labelled CIF for imports and FOB for exports, and they are never called prices anywhere on this site. Three things separate a unit value from a market price. It embeds freight and insurance to the border. It is a weighted average across every consignment in the period, so a shift in the mix of sizes or buyers moves it without any price having changed. And it is a customs declaration, made for customs purposes. It is an excellent indicator of direction and a poor substitute for a quotation.

The wholesale figures — Milano, Rungis, Mercamadrid — are quotations published by those markets for their own product definitions. They are real prices in the sense that they are what the market reports, but they are not transaction-verified, and each market quotes its own size buckets.

Size classes are not harmonised

The headline size class across the site is 400–600 g, because it is the only class all three wholesale markets quote. Everything else is left in the market's own terms: Mercamadrid reports pequeña, mediana and grande for lubina, Milano reports numeric bands from 300–400 up to 1500–2000 g, Rungis reports its own bands. These are not mapped onto one another. Forcing them onto a common grid would create a tidy table that no source would recognise.

Incomplete periods are withheld, not smoothed

EUMOFA back-fills. A week first appears with only part of the reporting countries in it, and fills out over the following weeks. Plotting that raw would draw a sharp fall at the right-hand edge of every chart, every week, which is an artefact and not a market event. A week is treated as incomplete when its volume is below 60% of the mean of the four preceding weeks, or when one of the large reporting countries — Italy, Greece or the Netherlands — has not yet reported. The check walks back from the newest week and stops at the first complete one. Incomplete weeks are excluded from every chart and headline, and are shown explicitly in the table on the EU imports page with the reason they were withheld.

Repeated quotations are marked

RNM repeats its last quotation on days when no new one is set. Counting those repeats as fresh observations would make a series that moved three times in a year look like 250 daily observations. Every repeat is flagged, and each Rungis series carries the date its quote last actually changed.

Currency

Figures are published in EUR and USD only. USD conversion uses the ECB euro reference rate for the period each observation belongs to — not a single current rate applied backwards across history, which would silently re-price the past every time the rate moved. Turkish lira series are not published on this site at all.

Product scope

Farmed fish only. Wild-caught series are excluded everywhere they occur: sauvage and de ligne at Rungis, de captura at Mercamadrid, and the wild Atlantic sections of the Milano bulletin, which quote several times the farmed level. On the customs side the headline is fresh whole fish — CN 03028410 for seabass and 03028530 for gilthead seabream. Frozen product (03038410 and 03038955) is collected but held as a separate series, because blending fresh and frozen into one unit value produces a number that describes neither. Codes 03028510 and 03028590 are not used: they cover other Sparidae and are not specific to gilthead seabream.

Update cycle

Every series on this site is rebuilt automatically on a daily schedule and each page displays the date its underlying data last changed — not the date the page was generated. A source that has not published anything new will show an unchanged date, which is the intended behaviour rather than a fault.