Composer Field Not Uploading Correctly

$trim() works on the contents of a field, not the fieldname.
$trim() also works only in generating format strings but not matching format strings - for the import of data from files a matching format string is required.
See here for more descriptions of format strings:

esp. the part
" Format strings are used in two ways in Mp3tag, matching format strings and generating format strings.

Matching format strings are used for simple pattern matching of existing strings, e.g., file names to import tags from or lines in a text file that describe tag contents to be imported.

Generating format strings are used to create new strings, e.g., file names when renaming, field contents when formatting tag fields, data when exporting, but also file names for playlists or cover images that are parameterized with tag contents. Generating format strings can be combined with scripting functions."

There (fieldname) it's the biggest issue, as humans will not see trailing white space - as you pointed it out, too.

I'm referring to trim() in general if/how a program implements it is not something a user should have to know, or worry about, in my opinion.

Modification date is a OS file system function. Usually any time a file is changed for any reason this date reflects the current date and time. This is with or without using mp3tag.

In the options for mp3tag there is a setting that you can check so that this date is not changed when saving from mp3tag. However this means most other software will not find any reason to update.

Since you are seeing the genre update I doubt this is the cause here. I am more inclined to believe that additional characters are being used during the import as has been discussed already.

Clearly if three different player programs are unable to see the updated tag info for any field, there is a mismatch between what is expected and what has been written.

I can very much confirm that both the composer and conductor fields when saved directly from mp3tag are very much visible in MusicBee using mp3, FLAC, and m4a files when tested on my side.

This leads back to something in your environment that is causing the mismatch to occur. Since you are depending on an import from a csv file to harness this external data you will need to comb through that to determine if the error can be found in the naming there.

As an alternative test, use the tag panel in mp3tag to manually type in the Composer and Conductor data and save it. (You may need to add these fields to your panel as I cannot recall if they are there by default). For the test file, can MusicBee now see these changes? If yes the problem is definetly in your csv source data.

Me too, just tested this, as it wouldn't have crossed my mind, being possible:

Well, I again will admit, this is not soo easy to spot,figure,understand…

//Just some pseudocode during the import to cleanup fieldnames
$fieldname = str_replace('%', '', $import_fieldname);
$fieldname = '%'.trim($fieldname).'%'

Is that not possible in mp3tag, sanitizing a fieldname seems crucial, to me.

So it turns out Composer fieldname needed to be case sensitive in my test import:

Seeing the result… who is not to be confused?

And in MusicBee:

@mattiebear I feel with you, if this is what happened in your import, would frustrate me too.
And I'm glad I learned something -- hope you read this and get your imports to work soon.

Field name placeholders for actions. are always lower case and enclosed within percent symbol characters such as %composer% or %conductor% for mp3tag formatting. Reference simply to their names is in all caps such as COMPOSER or CONDUCTOR.

I do not think that there is a rule about the case of a field name.
Here in the forum we try to use a certain style to distinguish between a semantic reference to e.g. a composer, the contents of the field %composer% or the field name COMPOSER.
Some applications require field names to be all capitals if the field names are not identified by tokens but by their real name which is e.g. the case for vorbis comments in flac files.
These field names can adapted with an action of the type "Case conversion" for _FIELDNAME.
For a discussion on the case of field names, please open a new thread.

I have just tried to upload the csv and a couple of mp3 files for you but it won't let me here?

Please upload it to one of the public and free transfer websites (like WeTransfer.com or swisstransfer.com) and then share the link to your upload here.

This is the format string being used:

%filename%,%conductor%,%genre%

I've uploaded the csv and 3 mp3 files as examples:

What I see for "Mister Sandman" are two fields: CONDUCTOR and CONDUCTORS
image

For "Count Your Blessings Instead Of Sheep"
image

Are these two songs showing the CONDUCTOR / CONDUCTORS correctly in MusicBee and MediaMonkey? If yes, I think it should be CONDUCTOR (singular).

So Mister Sandman I updated manually as a test, so it shows correctly in both.

Count Your Blessings Instead Of Sheep does not show the Conductor in MusicBee.

As for there being Conductor and Conductors, I did this in error trying to fix the problem myself before asking for help as a reference on another sources said the tag was conductors rather than conductor.

This cannot work because %filename% imports your value in the metadata field FILENAME:
image

What you would have to use as format string for the input from CSV is
%_filename_ext%,%conductor%,%genre%

I'll try that now, bear with.

(Oddly you say it cannot work but it updated all the genre data using that csv?)

The method I used works, the method you provided gives this:

Just to let you know make-nz, I tried using %Conductor% instead and it didn't change the result (still not visible in MusicBee)

To get usable results, please clear your test songs every time completely from MusicBee and MediaMonkey. Then import your new/updated version.
Otherwise you don't know if the new file was imported and the metadata refreshed or of they are still displayed from the internal database.