Hi Ali,
Great question! Here is a setup that would do that (the Instancer here is a Plane, once Subdivided…and the Models Collection just contains 4 Cubes):

You set the Material on the Instanced Collection, before they get Instanced, so each Collection Instance gets the same Material (with the same randomization).