A lot of reasons.
It will reduce the amount of code, making it managable. Because you have just 1 object and its instances. And you get instance variables for free.
Construct has all easy code in place to loop/pick/manage instances. Especaly loops are so much easyer. You can ofcours use families, but they lack IID support. And that can give you unexpected suprises.
Because of the instance variables, and because of the easy looping, instances are easy to lock to an array.
If you use instances (in stead of all differend objects) the only way to change its appereance is by changing its frame (or animation). So this is in fact is just a logical route that started with choosing to go with instances.