I use this as my benchmark for mash efficiency.
From How to Brew Chap 18: Calculate how efficient your extraction was. Measure the gravity in the boiling pot and multiply the points by the number of gallons you collected. Then divide by the number of pounds of grain you used.
For example my recent brew Fri:
1.032 pre boil
6 gal pre boil
6.375 lbs grain
32 x 6 = 192. 192 / 6.375 = 30.1
Palmer continues: The result should be somewhere around 30 ppg. 27 is okay, 29 is good, and over 30 is great. If it is 25 or below, you are lautering too fast or you are not getting good conversion in the mash, which could be caused by having too coarse a grist, the wrong temperature, not enough time, it got cold, or a pH factor, et cetera.
For me, in my brewery, for my mill setting, I like a 90 min mash. That 90 min includes mash in (usually below mash temp), mash, and mash out (usually above mash temp). When I follow my personal processes I routinely hit 30+.