The problem is that for instancing, you want to pass the maximum number of matrices to the GPU that you can. You don’t want to settle for some minimum number and retard performance on better cards.
I am just going to stick to using a uniform buffer (NVidia only). You can get the max size allowed, so there is no guessing.