DataHonoursMusic

Writing a Club Anthem From the Trophy Record

By PlayFutbol Data Team · · 7 min read

TITLES PER CLUB · 11 COMPETITIONS203 clubs117None181252–4195–91610–24825+Grey: nothing in these competitions — not the same as nothing ever

Sooner or later, a lot of club songs get round to the trophies. That verse is the part of a football song that can be checked, which makes it the part that can be wrong, and once a stand has learned it, nobody corrects it. Three of our games play from one honours table: 800 titles across 11 competitions, from the 1889-90 season to 2025-26. So we tried to write that verse straight from the table for all 203 of our clubs. Most clubs turn out to have a short verse, and the table cannot be sung as it stands.

Most clubs have a short verse

The chart at the top sorts the whole roster by how many of those titles each club holds. 117 of the 203 have none, and that number needs reading carefully. The table covers the top divisions of England, Spain, Italy, Germany and France, the main cups of four of them, and the Champions League and Europa League. England only counts from 1992, when its top flight became the Premier League. Our clubs come from 34 countries, and a club whose honours were won in Portugal, the Netherlands or Saudi Arabia scores zero here however many leagues it has won.

At the other end, the five clubs with the longest verse:

  1. Real Madrid, 69 titles — 36 La Liga, 18 Copa del Rey, 15 UEFA Champions League
  2. Bayern Munich, 59 titles — 34 Bundesliga, 19 DFB-Pokal, 6 UEFA Champions League
  3. FC Barcelona, 59 titles — 27 Copa del Rey, 27 La Liga, 5 UEFA Champions League
  4. Juventus FC, 52 titles — 37 Serie A, 13 Coppa Italia, 2 UEFA Champions League
  5. Inter Milan, 33 titles — 20 Serie A, 10 Coppa Italia, 3 UEFA Champions League

The verse that writes itself

Some seasons do the songwriting for you. 73 times in the table a club won two of these competitions in one season, and 6 times it won three:

  • Manchester United, 1998-99: FA Cup, Premier League, UEFA Champions League
  • FC Barcelona, 2008-09: Copa del Rey, La Liga, UEFA Champions League
  • Inter Milan, 2009-10: Coppa Italia, Serie A, UEFA Champions League
  • Bayern Munich, 2012-13: Bundesliga, DFB-Pokal, UEFA Champions League
  • Bayern Munich, 2019-20: Bundesliga, DFB-Pokal, UEFA Champions League
  • Manchester City, 2022-23: FA Cup, Premier League, UEFA Champions League

Those are lines a stand already knows. They are also where the trouble starts, because of how the table writes the year.

Which year do you sing?

The table keys every season by the year it started, so 2015 means 2015-16, the season Leicester won the league. That is a sensible rule for a database, and nobody sings it. The most recent treble in the table is Manchester City’s, stored as 2022. Every trophy in it was lifted in 2023, and so that is the year in the song.

For modern seasons that is an off-by-one you can fix with arithmetic. For older ones you cannot, because the table holds two kinds of edition: cups decided inside a single calendar year, and seasons that span two. When one club wins a cup final in 1929 and that cup belongs to a season that started in 1928, it lands on 1928, on top of whoever won the year before.

That collision shows up in the data. The table will not count a season with two recorded winners, because a quiz question with two right answers is broken rather than hard. 15 seasons are excluded that way, and we went through every one of them:

Really two winners (3)

Copa del Rey filed as 1910Athletic Club · FC Barcelona

Two rival federations each ran a cup that year. Athletic Club won one, Barcelona the other.

Copa del Rey filed as 1913Real Unión · FC Barcelona

The federations split again: Barcelona won one cup, Real Unión (then Racing de Irún) the other.

Serie A filed as 1921U.S.D. Novese · F.C. Pro Vercelli 1892

The 1921-22 season split between two federations, and Pro Vercelli and Novese each won one.

Two winners, a year apart (9)

FA Cup filed as 1891West Bromwich Albion F.C. · Blackburn Rovers F.C.

Blackburn Rovers won the 1891 final. West Bromwich Albion won in 1892, stored as 1891-92.

Serie A filed as 1909Inter Milan · F.C. Pro Vercelli 1892

Pro Vercelli won the 1909 championship. Inter won 1909-10.

Copa del Rey filed as 1928FC Barcelona · RCD Espanyol de Barcelona

Barcelona won the 1928 final. Espanyol won the 1929 final, stored as the 1928-29 season.

La Liga filed as 1929Athletic Club · FC Barcelona

Barcelona won the first league, played inside 1929. Athletic Club won 1929-30.

Copa del Rey filed as 1947Real Madrid Club de Fútbol · Sevilla FC

Real Madrid won the 1947 final. Sevilla won in 1948, stored as 1947-48.

Copa del Rey filed as 1958FC Barcelona · Athletic Club

Athletic Club won the 1958 final. Barcelona won in 1959, stored as 1958-59.

Coppa Italia filed as 1958Juventus FC · SS Lazio

Lazio won the 1958 final. Juventus won in 1959, stored as 1958-59.

Copa del Rey filed as 1969Real Madrid Club de Fútbol · Athletic Club

Athletic Club won the 1969 final. Real Madrid won in 1970, stored as 1969-70.

DFB-Pokal filed as 1970FC Bayern Munich · Kickers Offenbach

Kickers Offenbach won the 1970 final. Bayern won in 1971, stored as 1970-71.

One of the two did not win (3)

UEFA Europa League filed as 2009Fulham F.C. · Atlético Madrid

Atlético Madrid beat Fulham in the 2010 final. Fulham are recorded as a winner.

UEFA Europa League filed as 2011Atlético Madrid · Chelsea F.C.

Atlético Madrid won the 2012 final. Chelsea’s Europa League came a season later.

La Liga filed as 2014FC Barcelona · Real Betis Balompié

Barcelona won 2014-15. Real Betis won the second division that season, not La Liga.

Only 3 of the 15 are real double winners, years when two rival competitions ran under one name. 9 are the calendar problem: two clubs that won a year apart, filed under the same key. And 3 are simply wrong, with a beaten finalist or a second-division champion recorded as the winner.

Leaving them out keeps the games honest, but it is not free, because every excluded season also drops the title that really was won. Barcelona’s 2014-15 league is on that list. So are Atlético Madrid’s first two Europa League wins, which is why the table credits Atlético with 1.

Espanyol, both problems at once

The first version of our club matcher read “RCD Espanyol de Barcelona”, found “Barcelona” inside it and handed all 4 of Espanyol’s cups to their neighbours. That is fixed, using the same kind of rule our crest matching had to learn. The table now counts 3. The missing one is the 1929 final, which shares its key with Barcelona’s 1928 cup.

Even the 3 it counts would be sung wrong straight out of the table, and not by one consistent rule. 1940 is stored as the year of its final. 1999 and 2005 are stored as the years their seasons started, and those finals were played in 2000 and 2006. Add one to every year and you fix the last two lines of the verse and break the first.

A brief, not a lyric

So the table cannot write the verse. It can write the brief for whoever does. Here is one for Bayer Leverkusen, chosen because its whole record is modern split seasons, where adding one is safe:

LYRIC BRIEFBayer LeverkusenTABLESEASONSING[Verse]DFB-Pokal19921992-931993Bundesliga20232023-242024DFB-Pokal20232023-242024[Chorus]The double: Bundesliga + DFB-Pokal2024Sing = the year the season was won. Safe here: all split seasons.

3 titles in song order, with the year the table stores struck through and the year to sing beside it.

It is honest about what it is: facts in song order, with the year to sing. It also shows what it lacks. Leverkusen’s 1988 UEFA Cup is not there, because our Europa League rows begin with 2009-10, the first season under that name. A brief built from a table inherits the table’s scope, and whoever writes the song has to know where that scope ends.

Then hand it to something that can sing

The melody, the arrangement and the vocal are now the easy part. A song generator can produce all three from one sentence, and in its simplest mode it writes the words as well. Tunora’s page says it plainly: in Simple mode, “Tunora writes the lyrics for you.” For a song about a feeling, that is fine. For an anthem it is backwards. The facts are the lyric, and a generator asked for “a song for Bayer Leverkusen” has to get them from somewhere other than a record you checked, including which year to sing.

The better order is the one the brief sets up. Write the verse from the record, then paste it into the custom mode of Tunora’s AI music generator. It takes “up to 5,000 characters of lyrics” with [Verse], [Chorus] and [Bridge] tags, so the song keeps your structure, and it does the tune and the singing. It also takes lyrics in your own language. That matters for a roster like ours: 203 clubs from 34 countries, and most club songs are sung in the club’s own language, not in English.

Let the generator get the tune wrong if it likes. A tune is a matter of taste. A year is not.

How this was built

The honours come from Wikidata’s season and winner properties. A script in our repository fetches them, and the matcher described above maps them onto our club ids. The season convention, the two-winner exclusion and every count on this page come from the same module the games read, so the article and the games cannot disagree.

The three-way split of the 15 excluded seasons is a judgement, not a measurement. It is football history, checked one season at a time, and each note says what its call rests on. A test ties that list to exactly the seasons the table excludes, so if the data gains a new collision, the site will not build until someone explains it.

Play with the same data

Three games play from this table. Who Won It gives you ten seasons and asks for the champion of each. Title Count asks you to order four clubs by how often they have won one competition, which is the verse-length chart above as a puzzle. And Double Up is built entirely on the doubles and trebles, the seasons that write their own songs.

About this article

Written by the PlayFutbol Data Team. Figures are computed at build time from our player database, which is reconciled against Wikidata and cross-checked with Transfermarkt and club pages. When a claim is not supported by the data, we say so in the text rather than leaving it out.

Last audited 26 October 2026Spotted an error? support@playfutbol.app