I feel like this is something that has to be determined on a case by case basis. We started out with 1 vCPU which works great for 95% of our users. We have others that require more resources so they have been moved into a different pool with additional resources. Also, we have found that 1 vCPU works well for most everything except video. If you are going to play a lot of video you may want to test with 2 vCPU and see if that performs better.
In the end it's all about what your user feedback and needs dictate. You don't want to squeeze your users of resources because that will lead to poor performance and bad perception but also be careful not to overcommit because they will also lead to poor performance and a bad perception. Once people get a negative perception of the environment it's difficult to get over.