Decoding Mapping of File Based Tags to Roon

A great starting place to understand how Roon leverages file based tags is the knowledge base:

Unfortunately these guides leave many unanswered questions (which I’ll add to the KB if I figure it all out). To better understand how Roon leverages file based tags and behaves when encountering tags in various fields I created a dummy album and started experimenting with the tags to see what Roon does with them. Here are my findings so far:

  • artist field only = maps to Roon primary artist

  • adding a second artist to any track makes Roon assign the album to both artists … or as many as you add to artist

  • Assigning a value to a performer field makes the performer a primary artist in Roon, but leaves the album attribution to the entry in the artist tag

  • albumartist overrides all other artist and performer fields insofar as whom the album is assigned to

  • At a track level the albumartist is never listed as “Performed by” even if explicitly included in as an artist or performer in a track

Adding a tag called release is ignored within Roon
Adding a tag called version is shown on the album cover and as Type under Album Info

A number of inferences can be drawn from above that will influence tagging scheme. I’ll add more observations as I experiment to learn how to make the most of metadata for those albums that Roon cannot identify. Classical will be interesting. Following that I’ll try summarise the inferences that can be drawn from what’s observed.

Questions for Roon @support : what is a Primary Artist in Roon and how does that differ from Artist and Performer? I’ve always added guest appearances to a track by setting artist=name of album artist\name of guest artist. Should I move the guest to performer only?


There’s some pretty good info in the Knowledge Base.

Some additional ones that aren’t covered there:

  • RELEASEDATE maps to Released
  • PUBLISHER, like LABEL, maps to Label
  • BARCODE, like UPC, maps to Product

Some track level tags:

  • RECORDINGLOCATION maps to Recording Location
  • RECORDINGSTARTDATE and RECORDINGENDDATE map to the track level Recording Start Date and Recording End Date, have no effect on album level
  • LIVE maps to track level Live, has no effect on album level (I use 1 to indicate a live track, I would imagine Yes also works)

great, I’d referenced this KB article above a few mins back, lets keep the data coming.

BAND appears to be ignored outright.

@support, what is an ENSEMBLE, and to which genres is it applicable within Roon?

Will you be testing WORK and PART tags?

Also, my limited test showed Roon ignored FORM tagging. J

When I get to classical, yes.

I can see myself coding some transform functions in puddletag to split my track titles in classical between WORK and PART. Not sure it’d yield any benefit for me though because my tags are based on Rovi’s metatada (per, so chances are Roon has already identified most of my classical stuff).

BOOTLEG isn’t supported, which is a pity as one is then forced to add it to the album title or version. Database theory holds that a field should never serve a dual purpose.

This is one reason why Roon should support assigning Roon Tags based on a custom metadata field embedded within the file. You can see the information is there in the Roon database, there just is no way to leverage it presently.


IMHO, this thread is, or will eventually be, the stuff of a FAQ. But i wonder if such info will ever make into official Roon lore.

Another mystery: “Note that ORCHESTRA is not supported. You can add an “Orchestra” credit using the PERSONNEL tag.” Not sure of the precise meaning of this quote from the KB.

Before I discovered this quote, I routinely entered, at track level/Edit Credits, e.g., Enter ARTIST = “Berlin Symphony Orchestra”, then enter ROLE = “Orchestra”. Not sure what Roon does with that. Perhaps it internally converts it to a PERSONNEL tag.

But ALL of my classical symphonies are tagged this way from within Roon, and “it” works at some level:


Evan, are you re-exporting the file(s) after your change experiments and examining file tags outside of Roon?

I’ve never exported. What does Roon do with the non-standard metatag data that was in the original file? Does it reproduce it or is the new file completely Roon standard metadata?

no, such luxuries are reserved for real Roon users that confine their Roon interactions to a Windows or OSX based desktop. I’m a Linux and tablet guy, so at worst a refugee and at best an illegal immigrant where Roon is concerned.

I’m making changes to the file tags in a single dummy album comprised of blank tracks and as changes to the filesystem are detected on a real time basis Roon reflects the changes I make where its code is sensitive to a field. Viewing same on a tablet.

Seems it’s incorrect - I just added an Orchestra tag and it works:


Right, moving on to Classical music (a genre where my knowledge extends only to knowing what I like when I hear it). The terminology is meaningless to me, and I’m guessing if I understood it better it might make it easier to find the things I like.

In any event, tagging the dummy album like so, yields a happy marriage in Roon - the album is identified despite the fact that this particular version has 9 second tracks (or is that movements):



Now let’s make some changes to the underlying tags to cause Roon to believe the album is unidentified and lets see how many data points we can bring back manually (remembering the primary purpose of this exercise is to get the most out of Roon for albums that don’t exist in its metadata ecosystem).

Changed the artist / performer entries to yield this:

So far one thing is clear - format your track titles exactly as they appear in and Roon will parse it into WORKS and PARTS for you.

Observations: barcode and upc both resolve to PRODUCT, but only one will survive, so if you have both entries only UPC will be presented as PRODUCT. In the absence of upc, barcode will be presented as product.

Here’s a sufficient recreation to inform further tagging:

image should be useful to any purists wanting to enrich their metadata

1 Like

Can a classical music aficionado explain what Roon’s missing re browsing/ searching/ exploring classical (except box sets, which is a universal shortcoming) e.g. @John_V what is FORM and why does it matter (this is for my own edification, not to expect changes to Roon…I’ve no influence in that dept)?

FORM is a Roon-supplied tag that identifies the type of performance: symphony, concerto, etude, etc. Using this to focus and create playlists is, uh…, “quite desirable.” It allows you to listen to different piece types across time, across composers, and/or across musical eras.

Roon does fill this, but in my experience, leave maybe 30% untagged. So I thought I’d fill in the blanks. But my quick and dirty test failed. HTH J

Come to think of it, I can access my “live” files via OSX or Virtual Windows with tagger software, but I thought that Roon only wrote things to file when they exported a copy. Prolly not describing my logic well; maybe no logic involved. But that’s my story and I’m sticking with it.

Answer 2: as to your general question, most of Roon’s shortcomings are on the tagging and recognition side. I can’t think of any browsing/searching/exploring CLASSICAL stuff per se. Transportation to and from TIDAL could be a little easier (command-T to switch to them, e.g.), but that applies to all music.