What has made the most significant performance increase in your rigs?
Much less constraints is definitely what made the most significant increase for me.
I have to say that with removing constraints I've adopted an entire different mentality of questioning myself about everything I do in a rig to make sure I do not add unnecessary stuff, as I used to do with constraints previously. Other than improving performance it has added another layer of fun to rigs as I am trying to come up with different ways of solving an issue without using too much resources.
A close second I'd say is using the Profiler to see what's slowing my rig, as sometimes we don't realize the dependencies we create untill we see them.
When connecting the facial rig to the whole body geo I like to use a BlendShape with 'check topology' turned off instead of a wrap which is much faster.
Possible downside: This might not work for large productions with lots of model changes as it requires a specific setup with the vertex numbering to work which might get messed up with lots of model updates.
I'd have to say thinking about what is really needed and what is overShooting. It may be really obvious, but I think that its the best performance/time saving thing I do when starting a rig. My first rigs were full of stuff that animators on the project had no need for, all I did was time consuming and slow performance. So a great thing to do I guess is speak with animator to learn what they really need and what you can discard to save time/performance.
Other than that I am completly with the "much less constraints" approach. As I've recently learned the use of matrices for rigging and I must say it gives quit the nice result.