Confirmed moves across every competition we cover. Fees in euros as reported by the data provider — loans, frees and undisclosed deals count as moves but contribute nothing to spend.
| League | Moves | Spent | Received | Net |
|---|---|---|---|---|
| Leagues Cup | 643 | €380.2m | €337.8m | −€42.4m |
| Liga MX | 342 | €264.6m | €158.5m | −€106.1m |
| Major League Soccer | 301 | €115.5m | €179.3m | +€63.8m |
A move between two clubs in the same league counts as both a purchase and a sale, so net — not spend — is what shows whether a league is a net buyer.
| Club | In | Out | Spent | Received | Net |
|---|---|---|---|---|---|
| 20 | 8 | €64.8m | €0 | −€64.8m | |
| 11 | 14 | €46m | €3.6m | −€42.4m | |
| 6 | 8 | €43.2m | €0 | −€43.2m | |
| 8 | 2 | €35m | €0 | −€35m | |
| 16 | 20 | €23.7m | €27m | +€3.3m | |
| 6 | 6 | €23.4m | €6.6m | −€16.8m | |
| 10 | 4 | €20m | €0 | −€20m | |
| 10 | 12 | €14.3m | €13.6m | −€660k | |
| 4 | 12 | €14.2m | €17.2m | +€3m | |
| 8 | 4 | €13.6m | €0 | −€13.6m | |
| 6 | 6 | €10.2m | €3m | −€7.2m | |
| 16 | 16 | €8.1m | €8.6m | +€500k | |
| 6 | 10 | €7.2m | €9m | +€1.8m | |
| 4 | 8 | €7m | €7.2m | +€200k | |
| 8 | 4 | €6.8m | €26.4m | +€19.6m | |
| 6 | 14 | €6.2m | €23.4m | +€17.2m | |
| 7 | 4 | €5.2m | €0 | −€5.2m | |
| 18 | 10 | €5.2m | €5.8m | +€556k | |
| 22 | 8 | €4.5m | €6.8m | +€2.3m | |
| 7 | 2 | €4m | €1.1m | −€2.9m | |
| 4 | 10 | €3.7m | €5.2m | +€1.5m | |
| 10 | 8 | €3.5m | €9m | +€5.5m | |
| 34 | 2 | €3.1m | €0 | −€3.1m | |
| 6 | 12 | €2.4m | €3.5m | +€1.1m | |
| 12 | 14 | €1.7m | €25.4m | +€23.7m | |
| 10 | 18 | €1.7m | €34m | +€32.3m | |
| 14 | 8 | €760k | €8.9m | +€8.2m | |
| 8 | 10 | €270k | €28.6m | +€28.3m | |
| 6 | 6 | €260k | €25.5m | +€25.2m | |
| 6 | 10 | €150k | €0 | −€150k | |
| 4 | 10 | €0 | €2.7m | +€2.7m | |
| 6 | 10 | €0 | €1.5m | +€1.5m | |
| 2 | 6 | €0 | €0 | €0 | |
| 4 | 14 | €0 | €13.3m | +€13.3m | |
| 2 | 2 | €0 | €10.4m | +€10.4m | |
| 0 | 4 | €0 | €10.5m | +€10.5m |
Totals include provider estimates for undisclosed fees, marked (est.). Confirmed business only — unconfirmed talk stays in each league’s Rumors tab.