To do this measure the outside perimeter of your roof–you need not take into account the pitch or slant of the roof, since this does not affect the amount of water collected. Next, use the following formula:
collection area (square feet) x 0.6 x collection efficiency factor x rainfall (inches) = gallons per year
The collection efficiency factor is basically how good your roof is at shedding water. Metal roofs are the best and have the additional benefit of reflecting the heat of the sun and being less prone to leaks. Figure on a efficiency factor of .95 for a metal roof. Pitched asphalt shingle roofs are next with a efficiency factor of .9. Tar and gravel roofs are the least efficient with a factor of .8. Both tar and gravel and asphalt shingle roofs retain a fair amount of water after a rain, but they will still work fine for rainwater collection.
Data on both yearly and monthly average rainfall can be found on the National Oceanographic and Atmospheric Administration website.
For our house here in Los Angeles, we have a collection area of 992 square feet, a pitched asphalt shingle roof and an average of 15.06 inches of rain a year. So the average amount of rain we could collect in a year would be:
992 x 0.6 x 0.9 x 15.06 = 8,067.34 gallons.
If we lived in Atlanta, where the average annual precipitation is 48.6 inches per year we could theoretically collect 26,034 gallons of water a year.
With these numbers in mind we can begin to answer a few questions. Does rainwater collection make sense for your climate and living circumstances? If so, what kind of system will work?