It is easy to color each instance in different color, but how color facets of each instance in unique colors?
Generally instances share all buffer data but their transform matrix. This means that usually you create one master version of each color you need then instance the correct one for which color you need.
The SPS allows meshes to all be drawn in one draw call and have different colors though, so maybe that would be a solution?
You will probably need SPS as @Pryme8 or write your own shader