5-11 who mixes in a little weight training to my gym routine.  Just bought a small flannel buttonup shirt from walmart.  The shoulders are slightly too small width wise (a usual problem for all shirts) and the abdomen is a bit on the loose side.  I consider that to be about as good a fit as I will find for less than $100 + a tailor. Most cheap smalls these days have huuuge abdomen areas, they might as well be a mix of small top+large added on the bottom. I used to wear mediums.  In another 10 years I'll be at xs I guess.