Milan, Milan · Italy · Serie A
Power-ranking history
Against expectation
Every Italian top-flight match this club has played in the Serie A, scored against the odds an Elo rating gave it before kick-off. Over 94 seasons from 1929-30 to 2024-25 it has beaten them by +91.0 match points.
Season points use that season’s own scoring, two for a win before 1994-95 and three from it; the bars use match points so the whole series is comparable.The rating only starts telling you much after about 1960. Before that, knowing the era’s home-and-away split is almost as good as knowing the teams.
1945-46 table not final: two regional groups (Alta Italia, Centro-Sud) plus a final round.
What the squad was worth
Total market value of the squad, EUR millions, by month; the player count beside it is the size of the priced squad.
How this is measured
Drawn as a step, not a curve: Transfermarkt reprices every squad in December and June (marked with a small tick on the axis) and revalues continuously between, so the line only moves when a real valuation changed, never by interpolation.
A month renders no value at all once the priced squad falls below 15 players, so a thin squad is never shown as a cheap one. The series is floored at July 2012on purpose: earlier Transfermarkt totals reflect which players happened to be priced yet rather than the squad’s real worth, and are excluded rather than shown misleadingly low.
Upstream (dcaribou/transfermarkt-datasets) has been paused since July 2026, so the series ends where the source ends rather than where the season does.
Player valuations from Transfermarkt via github.com/dcaribou/transfermarkt-datasets (CC0).
What the squad was worth€647m
The money ledger
Fees paid and received each season, and what the squad was worth once the trading is netted out.
How this is measured
Spent is the fees paid for players arriving, received the fees for players leaving, both in EUR millions by the July-to-June season of the move. A move with no fee on record (a free, a loan, an undisclosed sum) is counted, never priced: the small figure beside each total is the moves with a fee, plus those without (so 4+3 is four priced arrivals and three unpriced), and a quiet window is not mistaken for a cheap one. Wages are not here: they are estimates nobody licenses, and fees are documented.
Appreciationis the season’s change in squad value with the net spend taken out: buy 100m of players and finish 100m higher is zero; finish 120m higher and the club made 20m of players better, or the market repriced them. It needs a priced squad at both ends of the season (the same 15-player floor as the value chart), so it is blank rather than guessed for a season that lacks one.
The source has been paused since 6 July 2026, so the final row holds only the opening days of its window.
Transfer fees and player valuations from Transfermarkt via github.com/dcaribou/transfermarkt-datasets (CC0).
The money ledger−€307m
Grown or bought: in 2026-27, trading −€11m and appreciation —. Over the last 5 seasons (2022-23–2026-27), trading −€121m and appreciation unpriced.
The director’s ledger: 113 arrivals graded since 2022-23, 89% EV-positive. €333m deployed for a 1.1× multiplier.
Show all 15 seasons
Money against football
Every priced club-season in the six leagues: points against expectation across, squad value gained beyond the net spend up. This club’s seasons are joined.
Tap or drag on the plot: the nearest club-season, its points and its money.
Greatest games
Internazionale's top matches by the club Game Score: closeness, stakes, quality and upset over one unified rating of league and European play.All-time board.
| # | Date | Stage | Result | Score |
|---|---|---|---|---|
| 1 | 1967-05-25 | European Cup · Final | NL 1-2 v Celtic | game score 90.9 |
| 2 | 2025-05-07 | Champions League · Semi Finals · 2nd leg, agg 6-7 | HL 3-4 v FC Barcelona | game score 87.8 |
| 3 | 1965-05-12 | European Cup · Semifinals · 2nd leg, agg 4-3 | HW 3-0 v Liverpool | game score 83.8 |
| 4 | 2023-06-10 | Champions League · Final | NL 0-1 v Manchester City | game score 83.3 |
| 5 | 1965-05-27 | European Cup · Final | NW 1-0 v Benfica | game score 82.7 |
| 6 | 1965-08-29 | Coppa Italia · Derby d'Italia · Final | NL 0-1 v Juventus | game score 81.0 |
| 7 | 1966-04-20 | European Cup · Semifinals · 2nd leg, agg 1-2 | HD 1-1 v Real Madrid | game score 80.0 |
| 8 | 1967-05-28 | Serie A | AL 0-1 v Mantova | game score 79.3 |
| 9 | 1966-04-13 | European Cup · Semifinals · 1st leg | AL 0-1 v Real Madrid | game score 79.1 |
| 10 | 2010-04-28 | Champions League · Semifinals · 2nd leg, agg 3-2 | AL 0-1 v FC Barcelona | game score 77.7 |
Footprint
The Heartbreak Index11.2 · #149
The Tortured · European Cup, 2010
The Heartbreak Index11.2 · #149
The Tortured · European Cup, 2010
- Champions-league since 20100.7
- Major trophy since 20260.0
- League title since 20260.0
lost the European Cup final, 2025 · lost the European Cup final, 2023 · lost the Europa League final, 2020 · league runner-up, 2025
One formula, every club the site covers. See the whole board →
Season-by-season
Most recent season first. Covers Serie A only. Rows tagged "national playoff" are pre-modern formats where the workbook records only playoff participants, not round-robin standings.
Show all 113 seasons
Domestic Cup Finals
Most recent first. Every domestic cup final the club has played, including losses. Scheduled finals (date not yet passed) are flagged.
Show all 29 rows
European competition appearances
Most recent first. One row per entry showing the deepest round reached. A Cup Winner badge marks tournaments the club won: gold for the European Cup / Champions League, silver for every other UEFA or Intercontinental trophy.
