Rainwater Catchment Calculator
By Camilo Mora

Lack of water is one of the top causes for tree mortality. Remarkably, at any given site, a native species likely gets all the rainwater in a year that needs; if not, it will not be there. The problem for most individual trees is the sporadic nature of rainfall.

As my daughter Asryelle puts it, this is like going to an all-you-can-eat buffet for one day, and then ask to survive the following 30 days without food; enough food is there just not at the right time.

Going back to rainwater irrigation, the trick is how to store enough water when it rains to be used when it does not.

The solution to this problem requires to know 1) how much water it rains and the area over which you will collect water, 2) the size of your water reservoir, and 3) the amount of water to be used. The balance of these three factors will determine if you will run out of water in your tank.

This application has been developed for the purpose of calculating the water volume in a tank given water collected and used over time. You can play around with specific parameters so you can tailor your water catchment and needs to an specific site.

Let's firsts understand the parameters at play, using the water catchment above as example, which I built with my partner Audrey and my daughter Asryelle. Remember that the ultimate goal is to have water available in the tank at all times.

So the first thing you need is data on rainfall (a); the app requires you to use daily rainfall data in mm. The app uses as default rainfall data from Kukaniloko in Oahu, but you can use your own data, just be sure to separate data from each day with a comma.

The second parameter needed is the area of your catchment (b). By multiplying rainfall in mm by area of catchment in mm2, you get the volume of water collected.

The third parameter is the size of your water tank (c). The amount of water collected will never exceed the size of your tank.

Finally, it is the water to be used (d); in our case this is the number of trees times the water you will give each day to each tree.


Water in tank=(rainfall*area catchment)-(number of trees*water to be added per tree)

This calculation is done cumulatively over each consecutive day, ensuring the water in the tank is not larger than the tank size nor below zero.

Rainwater catchment calculator

(a) Daily precipitation data (in mm, comma separated):

Displayed are daily precipitation data for Kukaniloko. Just delete the data and use your own.

First date in time series
Year Mon Day

(b) Catchment area:
Canopy width: length: feet

(c) Reservoir size:

(d) Water usage:
Number of trees to irrigate:

Desire water a day per tree (fraction acceptable): litters

Adjust irrigation if it rains (Tree area)*: in feet2
*if you can control irrigation, you may use less water from the reservoir. This parameter lets you adjust how much water to take from the tank depending how much the rainfall in the given day contributes to the desire amount of water you want to add to each tree. This is to be used when you have an irrigation control that can measure rainfall or soil moisture, if you do not have such a device leave this field as zero.

The Rainwater Catchment Calculator was developed by Camilo Mora. Thanks to Prof. Giambelluca and Matthew Lucas for providing daily data for Kukaniloko.