You don't indicate the process you are following to actually update the user tag. Or the product versions. But assuming your're on current versions and only messing with the controller GUI I have the following:
The user tag values are stored in two separate places within the hub/robot configuration.
If you only edit the user tag via the controller then on a robot then the value seen in USM will follow your edits. For a hub, the first time the hub starts and the hub's user tag is blank and the controller's user tag value is not blank, the hub will assume the value from the controller. Then from that point on it will ignore the controller's value and use its own. There is a tag in the hub.cfg that triggers this copy - it starts off with a value of 1 and when at least one of the user tag values is copied, the setting is flipped to zero and it never tries again. This copy process treats the two user tag values as if they were a single entity.
So if you continue to twiddle the value via the controller GUI you will see nothing change in USM. You need to use raw configure on the hub to change the value.
The value stored in the database is put there by discovery_server (at least so far as I know - in my experience it seems like there's other ways this data gets into the database initially but not that I've bothered the track explicitly). So, once you make the edit to the configuration and the probes are restarted to start exposing that value, you then need to wait for discovery to do its thing to update the data.
-Garin