I will be the first person to tell you that I have little to no use for efficiency percentages. In the grand scheme of things, what does an efficiency percentage really tell a brewer? An efficiency percentage is an abstract value that is difficult to translate to pounds of grist necessary to hit a target O.G. at a given volume without significant computation. To further complicate things, efficiency percentages are based on a static look-up table of theoretical maximum extraction rates that may not bear any direct relationship to the actual bag of malt being used in the girst. Efficiency percentages did not play much of a role in practical home brewing until brewing software became common place, and home brewers were still able to calculate accurate batch-to-batch original gravities.

Let's ask ourselves a question, what is the goal of calculating an efficiency percentage? If that goal is something other than bragging rights, then we need to eliminate the abstraction and switch to a system of direct measurement; namely, points per pound per gallon (PPG) or points per kilogram per liter (PKL). Both of these measurements give us directly usable numbers. PPG and PKL were common place measurements before the introduction of brewing software. These units of measure are still common enough that British maltsters tend to quote extraction rates as HWE (Hot Water Extract) in PKL on their malt analysis sheets, not DBFG (Dry Basis, Fine Grind) percentages.

Now, forum members are wondering how I apply this system to produce accurate values on which to base my recipes. My system is so simple as to be almost trivial. First off, after casting out the clear wort to a primary fermentation vessel, I remove the hops and break from my kettle. I use whole cones almost exclusively; therefore, I squeeze as much liquid as I can from the hops and measure it (this wort does not get added to the primary). This volume along added to the cast-out wort volume becomes my finished batch volume. I then multiply the original gravity in points (e.g., 1.052 is 52 points) by the finished batch volume and divide by the weight of the grist, yielding batch points per pound.

batch_points_per_pound = batch_original_gravity_in_points * batch_volume / grist_weight

Now, the next step is to track and sum multiple batch_points_per_pound values and divide by the number of values summed, yielding an average_batch_points_per_pound value. From here, calculating the standard deviation will tell the brewer how far one standard deviation lies above and below the mean (average). In practice, we really do not need to calculate the standard deviation. What will happen is that one will start to categorize "like" grists based on the percentage and type of base malt that is in the grist because the base malt used in a recipe drives extraction rate. For example, two of my main categories are 90/10 and 80/20, that is, 90% base malt/10% other and 80% base malt/20% other. Recipes that fall between 80 and 89% malt are clustered together as are recipes between 90 and 100% base malt.

In practice, while clustering allows one to achieve higher levels of accuracy. One will find that all of one's batches will converge to within a spread of 2 to 3 PPG with the occasional outlier. I also use a sliding window to track the actual bags of base malt being used because the maximum extraction rate for a bag of grain can vary from year to year and malting to malting (in this context, a sliding window is basically using the most recent batch extraction values in my average batch extraction calculation). For example, if my recipes have been yielding PPG values between 31 and 33 PPG, I will pick 32 as my PPG value. If I want to yield a final batch volume of 5.5 gallons of 1.058 wort, I multiply the O.G. in points by the final batch volume and then divide that value by 32, yielding pounds of grist necessary to hit that target O.G.

grist_weight = batch_original_gravity_in_points * batch_volume / batch_points_per_pound

grist_weight = 58 * 5.5 / 32 = ~10lbs

This system can also be used to reverse engineer commercial beers if one knows the percentages of the grist. For example, it has been claimed that SNPA is composed of 97% domestic 2-row and 3% caramel malt. We want to formulate a recipe that will yield a final volume of 5.5 gallons. SNPA has an O.G. of 1.053.

grist_weight = 53 * 5.5 / 32 = 9.1lbs

weight_of_2row = 9.1 * 0.97 = ~8lbs 13oz

weight_of_caramel = 9.1 * 0.03 = ~4.4oz

In practice, I tend to round to even ounces and often to even fractions of a pound if doing so does not alter the grist percentages horribly. If one takes the time to calculate the percentages of grain in any given recipe grist, one can scale that recipe for one's brew house using the system outlined above.

In the end, whatever system a brewer uses, the primary goal should be consistent batch-to-batch results. My system has yielded consistent batch-to-batch results since 1993, and it is so simple that the grist for any given wort can be casually penned on that back of a napkin while having a few pints at a local craft beer bar. There's something to be said about keeping the things that we can control simple.