How is “popularity” determined for release-groups in MusicBrainz search?

Hello,

I’m working on a project where I downloaded the MusicBrainz dumps for release-groups and artists to build my own local database. I would like to implement a sorting by popularity similar to the one used in the MusicBrainz search results, where more popular release-groups appear first.

I couldn’t find any documentation about how this popularity ranking is calculated.

Could anyone provide more information on:

  • How MusicBrainz defines or measures popularity for release-groups?

  • Which tables or fields in the dumps are relevant for reproducing this ranking?

  • Any recommended approach for implementing a similar sorting in a local database?

Thanks in advance for your help !

1 Like

I might miss something, but I don’t think there is such a popularity in the MusicBrainz database itself.

Some popularity might be possible from the data in ListenBrainz.

1 Like

For entity search, it’s not popularity, it is similarity with the search terms.

I found that

Popular results are preferred over exact matches.

In this page Search - MusicBrainz.

That’s why I thought there was a way to sort results by popularity.

1 Like

Oh! Wow!
I wonder how it works or whether it even exists…

3 Likes

Yep same that’s the point of my question haha

1 Like

IIUC for release groups it prefers ones with more releases inside them. It’s not as big a difference as for other kinds of entities, for example artists, where preferring the ones with more releases and the like can make a large difference, or areas, where we prioritise the ones with more artists, places and the like.

2 Likes

In my experience there is no sorting. “1999” by Prince has 37 releases in the group, but is entry #76 (after many groups with fewer releases) when searching for release groups “1999”. Even searching “Purple Rain” (synonymous with “Prince”), the Prince RG is ranked #20/20 of all groups with this exact name.

2 Likes

@AlbertDeTerre Maybe the ListenBrainz endpoints on Popularity — ListenBrainz 0.1.0 documentation are interesting for your use case.

1 Like