brew365 has a good calc that has some constants and you input the variables, and I believe grain absorption is one of the constants. After so many brews though, I figured that I can get roughly 45% return. So if I mash with 3 gal, I can expect a first runnings total of 1.35 gal. Then subtract that from my expected pre boil volume to get my sparge volume. I use a keggle with a false bottom though. In short, next brew day, just record the amount of water you mash with regardless of what water to grist ratio you use, and then record your first runnings volume. Divide first runnings volume by total mash volume to get your %.