We use project tag colors to give immediately visibility to the different types of projects that we're currently working on, so that when I have tasks from multiple projects on the go, I can quickly group the tasks by project without having to actually read the project name. In particular, we use blue tags to indicate low-priority open source project work, and use unique colours for commercial projects, general business work or external work.
For example, here's a screen capture of a list of tasks for me:
When I created a new project, and a new milestone in that project, I set the project's tag colour to orange, because it's a new commercial project and I want to at a glance be able to see the tasks associated with it. However, the milestone project doesn't get that colour, and gets lost in all the other blue tags, which means now I need to read the project tags to group my work:
(The top task should have an orange project tag)
While I could add the parent project as well as the milestone to the task, this feels redundant because the milestone project tag also includes the parent project name anyway.