Performance statistics for the machine learning groundwater prediction model. The model trains daily on 3,290 days of data (2003–present), using a 366-day weighted rainfall window with dynamic lag shifting to predict Calculated Groundwater % up to 120 days ahead across three rainfall scenarios. The 20-day backtest reruns automatically each day at 12:15 after EA data updates.
Each day's groundwater level is predicted using a linear formula applied to a weighted sum of the past 366 days of rainfall. Before being summed, every day’s rainfall is multiplied by two factors: a monthly factor (accounting for seasonal variation in recharge) and a lag weight (accounting for how long ago the rain fell and how much effect it still has on the aquifer).
The intercept (−8.00) and slope (0.147) are currently fixed at calibrated values. The slope derives from the original Excel hydrological model (calibrated against 20+ years of EA gauge data); the intercept was recalibrated in February 2026 when the original value (−22.09) was found to underestimate groundwater levels by ~14% under current weighted rainfall conditions.
To ensure predictions start exactly at today’s measured level, an exponentially decaying correction is added. This fades to near-zero over 90 days, so the model gradually transitions from anchoring on today’s reading to trusting the formula alone:
Rain falling in different months has very different effects on groundwater recharge. Summer rain is largely lost to evapotranspiration and plant uptake; winter rain percolates into the chalk aquifer far more efficiently. Each month’s rainfall is therefore multiplied by a seasonal factor before entering the model.
These factors are loaded from the database each run (shown below are the current learned values, starting from the Excel model baseline):
| Month | Factor | Recharge |
|---|---|---|
| Jan | 1.19 | High |
| Feb | 0.91 | Medium |
| Mar | 0.91 | Medium |
| Apr | 0.86 | Medium |
| May | 0.38 | Low |
| Jun | 0.38 | Low |
| Jul | 0.38 | Low |
| Aug | 0.38 | Low |
| Sep | 0.95 | Medium |
| Oct | 1.38 | High |
| Nov | 1.38 | High |
| Dec | 1.10 | High |
Highest recharge months: Oct, Nov, Jan. Lowest recharge months: May, Jun, Jul, Aug. These factors are fixed at calibrated values derived from the Excel model. Automatic ML adjustment has been disabled as the GBM model handles seasonality internally, causing the adjustment to incorrectly push all factors toward 1.0.
Rain does not immediately reach the groundwater table — it must percolate through the unsaturated chalk above the aquifer. The lag weight profile describes how much influence rainfall from different periods in the past has on today’s groundwater level. The profile covers the past 366 days:
| Days ago | Weight | Interpretation |
|---|---|---|
| 0 – 19 | 0.75 | Recent — partial effect, still percolating |
| 20 – 39 | 1.00 | Reaching water table |
| 40 – 59 | 1.20 | Peak influence |
| 60 – 179 | 0.90 | Sustained contribution |
| 180 – 199 | 0.85 | Fading influence |
| 200 – 219 | 0.77 | Diminishing |
| 220 – 259 | 0.70–0.75 | Background recharge |
| 260 – 279 | 0.50 | Minor residual |
| 280 – 299 | 0.05 | Negligible |
| 300 – 365 | 0.00 | No effect |
The peak influence at 40–59 days ago reflects typical chalk percolation times in the upper Pang valley. The ML model can adjust individual weights by up to 2% per daily run, capped at 1.5× the initial value.
When the aquifer is already full, rain reaches the water table faster because less unsaturated chalk needs to be saturated first. Conversely, when groundwater is very low, percolation takes longer. The model accounts for this by shifting the entire lag weight curve earlier or later depending on the current groundwater level.
Thresholds are based on historical quartiles from 20+ years of EA data (historical range: 3.3% – 96.6%):
| GW Level | Quartile | Lag Shift | Effect |
|---|---|---|---|
| < 26.6% | Bottom 25% | +40 days | Much slower response |
| 26.6 – 49.9% | Lower mid | +20 days | Slower response |
| 49.9 – 73.3% | Upper mid | 0 days | Baseline (current) |
| > 73.3% | Top 25% | −20 days | Faster response |
At today’s level of 83.9%, the model is applying a −20 day shift (fast response — aquifer near full).
Dynamic shifting is only applied from day 30 of the forecast onwards. In the short term (days 1–29) all three scenarios use the same baseline weights to ensure they diverge smoothly and predictably based only on differing rainfall amounts.
Three rainfall scenarios are projected: average uses historical monthly means; +40% and −40% scale future rain up or down. All scenarios start identically at today’s actual reading.
Actual today: 83.9%
Blue=wet, Green=average, Orange=dry
| No data available yet |
|---|
| Date | MAE % | RMSE % | Bias % | Status |
|---|---|---|---|---|
| 2026-03-12 | 4.55 | 4.61 | 4.55 | Significant bias detected |
| 2026-03-11 | 4.46 | 4.56 | 4.46 | Significant bias detected |
| 2026-03-10 | 4.33 | 4.46 | 4.33 | Significant bias detected |
| 2026-03-09 | 4.15 | 4.36 | 4.15 | Significant bias detected |
| 2026-03-08 | 3.97 | 4.28 | 3.97 | Significant bias detected |
| 2026-03-07 | 3.81 | 4.18 | 3.71 | Significant bias detected |
| 2026-03-06 | 3.63 | 4.07 | 3.44 | Significant bias detected |
| 2026-03-05 | 3.49 | 3.93 | 3.07 | Significant bias detected |
| 2026-03-04 | 3.36 | 3.80 | 2.66 | Significant bias detected |
| 2026-03-03 | 3.30 | 3.72 | 2.20 | Significant bias detected |
| 2026-03-02 | 3.31 | 3.73 | 1.69 | Within acceptable range |
| 2026-03-01 | 3.31 | 3.74 | 1.15 | Within acceptable range |
| 2026-02-28 | 3.40 | 3.89 | 0.53 | Within acceptable range |
| 2026-02-27 | 3.56 | 4.15 | -0.15 | Within acceptable range |
| 2026-02-26 | 3.79 | 4.53 | -0.88 | Within acceptable range |
| 2026-02-25 | 3.99 | 4.84 | -1.60 | Within acceptable range |
| 2026-02-24 | 4.24 | 5.20 | -2.32 | Significant bias detected |
| 2026-02-23 | 4.54 | 5.62 | -3.07 | Significant bias detected |
| 2026-02-22 | 4.87 | 6.05 | -3.82 | Significant bias detected |
| 2026-02-21 | 5.32 | 6.61 | -4.61 | Significant bias detected |
| 2026-02-20 | 5.88 | 7.26 | -5.42 | Significant bias detected |
| 2026-02-19 | 6.56 | 8.02 | -6.28 | Significant bias detected |
| 2026-02-18 | 7.30 | 8.83 | -7.20 | Significant bias detected |
| 2026-02-17 | 8.17 | 9.73 | -8.16 | Significant bias detected |
| Month | Avg MAE % | Avg RMSE % | Avg Bias % | Days |
|---|---|---|---|---|
| 2026-03 | 3.81 | 4.12 | 3.28 | 12 |
| 2026-02 | 5.14 | 6.23 | -3.58 | 12 |
| Date | Train R² | Val R² | Tr RMSE | Val RMSE | Samples |
|---|---|---|---|---|---|
| 2026-03-12 12:15 | 1.0000 | 0.9977 | 0.096 | 1.079 | 3290 |
| 2026-03-11 12:15 | 1.0000 | 0.9979 | 0.097 | 1.027 | 3289 |
| 2026-03-10 12:15 | 1.0000 | 0.9972 | 0.097 | 1.171 | 3288 |
| 2026-03-09 12:15 | 1.0000 | 0.9972 | 0.097 | 1.171 | 3288 |
| 2026-03-08 12:15 | 1.0000 | 0.9976 | 0.096 | 1.083 | 3287 |
| 2026-03-07 12:15 | 1.0000 | 0.9974 | 0.096 | 1.136 | 3286 |
| 2026-03-06 12:15 | 1.0000 | 0.9978 | 0.098 | 1.053 | 3285 |
| 2026-03-05 12:15 | 1.0000 | 0.9978 | 0.096 | 1.046 | 3284 |
| 2026-03-04 12:15 | 1.0000 | 0.9978 | 0.096 | 1.046 | 3284 |
| 2026-03-03 12:15 | 1.0000 | 0.9978 | 0.097 | 1.047 | 3283 |
| 2026-03-02 12:15 | 1.0000 | 0.9981 | 0.096 | 0.979 | 3282 |
| 2026-03-01 12:15 | 1.0000 | 0.9978 | 0.097 | 1.060 | 3281 |
| 2026-02-28 12:15 | 1.0000 | 0.9978 | 0.097 | 1.056 | 3280 |
| 2026-02-27 12:15 | 1.0000 | 0.9978 | 0.097 | 1.056 | 3280 |
| 2026-02-26 12:15 | 1.0000 | 0.9976 | 0.097 | 1.098 | 3279 |
| 2026-02-25 12:15 | 1.0000 | 0.9978 | 0.097 | 1.055 | 3278 |
| 2026-02-24 12:15 | 1.0000 | 0.9978 | 0.096 | 1.059 | 3277 |
| 2026-02-23 12:15 | 1.0000 | 0.9981 | 0.095 | 0.972 | 3276 |
| 2026-02-22 12:15 | 1.0000 | 0.9981 | 0.095 | 0.970 | 3276 |
| 2026-02-21 12:15 | 1.0000 | 0.9979 | 0.096 | 1.018 | 3275 |
| 2026-02-20 12:15 | 1.0000 | 0.9980 | 0.097 | 1.012 | 3274 |
| 2026-02-19 12:15 | 1.0000 | 0.9979 | 0.098 | 1.022 | 3273 |
| 2026-02-18 12:15 | 1.0000 | 0.9981 | 0.097 | 0.981 | 3272 |
| 2026-02-17 13:59 | 1.0000 | 0.9981 | 0.097 | 0.981 | 3272 |
| 2026-02-17 13:53 | 1.0000 | 0.9981 | 0.097 | 0.981 | 3272 |
| 2026-02-17 13:50 | 1.0000 | 0.9981 | 0.097 | 0.981 | 3272 |
| 2026-02-17 13:44 | 1.0000 | 0.9982 | 0.097 | 0.948 | 3272 |
| 2026-02-17 13:41 | 1.0000 | 0.9982 | 0.097 | 0.967 | 3272 |
| 2026-02-17 13:40 | 1.0000 | 0.9981 | 0.097 | 0.985 | 3272 |
| 2026-02-17 13:37 | 1.0000 | 0.9980 | 0.097 | 1.010 | 3272 |
| Date | Actual % | Predicted % | Error % | Days Ahead | Made On |
|---|---|---|---|---|---|
| 2026-03-12 | 83.93 | 83.75 | -0.17 | 0 | 2026-03-12 12:15:22 |
| 2026-03-11 | 83.91 | 83.88 | -0.02 | 0 | 2026-03-11 12:15:24 |
| 2026-03-10 | 83.97 | 83.81 | -0.17 | 0 | 2026-03-10 12:15:23 |
| 2026-03-09 | 83.88 | 83.75 | -0.13 | 0 | 2026-03-09 12:15:23 |
| 2026-03-08 | 83.81 | 83.67 | -0.14 | 0 | 2026-03-08 12:15:23 |
| 2026-03-07 | 83.72 | 83.55 | -0.16 | 0 | 2026-03-07 12:15:24 |
| 2026-03-06 | 83.62 | 83.49 | -0.13 | 0 | 2026-03-06 12:15:20 |
| 2026-03-05 | 83.54 | 83.25 | -0.28 | 0 | 2026-03-05 12:15:24 |
| 2026-03-04 | 83.22 | 82.98 | -0.24 | 0 | 2026-03-04 12:15:23 |
| 2026-03-03 | 82.95 | 82.74 | -0.21 | 0 | 2026-03-03 12:15:22 |
| 2026-03-02 | 82.72 | 82.54 | -0.18 | 0 | 2026-03-02 12:15:26 |
| 2026-03-01 | 82.44 | 82.14 | -0.30 | 0 | 2026-03-01 12:15:21 |
| 2026-02-28 | 81.96 | 81.69 | -0.27 | 0 | 2026-02-28 12:15:22 |
| 2026-02-27 | 81.58 | 81.23 | -0.35 | 0 | 2026-02-27 12:15:22 |
| 2026-02-26 | 81.01 | 80.57 | -0.45 | 0 | 2026-02-26 12:15:23 |
| 2026-02-25 | 80.34 | 79.94 | -0.41 | 0 | 2026-02-25 12:15:21 |
| 2026-02-24 | 79.69 | 79.21 | -0.49 | 0 | 2026-02-24 12:15:23 |
| 2026-02-23 | 78.93 | 78.40 | -0.53 | 0 | 2026-02-23 12:15:23 |
| 2026-02-22 | 78.09 | 77.45 | -0.63 | 0 | 2026-02-22 12:15:21 |
| 2026-02-21 | 77.11 | 76.42 | -0.68 | 0 | 2026-02-21 12:15:20 |
| 2026-02-20 | 76.11 | 75.39 | -0.72 | 0 | 2026-02-20 12:15:21 |
| 2026-02-19 | 75.04 | 74.51 | -0.53 | 0 | 2026-02-19 12:15:22 |
| 2026-02-18 | 74.16 | 73.15 | -1.01 | 0 | 2026-02-18 12:15:21 |
| 2026-02-17 | 72.75 | 71.99 | -0.77 | 0 | 2026-02-17 13:59:48 |
| Date | Average % | +40% Rain % | -40% Rain % | Range % |
|---|---|---|---|---|
| 2026-03-13 | 84.07 | 84.21 | 83.93 | 0.28 |
| 2026-03-14 | 83.73 | 83.94 | 83.52 | 0.43 |
| 2026-03-15 | 84.03 | 84.32 | 83.75 | 0.57 |
| 2026-03-16 | 83.28 | 83.64 | 82.93 | 0.71 |
| 2026-03-17 | 83.48 | 83.91 | 83.05 | 0.85 |
| 2026-03-18 | 83.64 | 84.14 | 83.15 | 1.00 |
| 2026-03-19 | 83.87 | 84.44 | 83.30 | 1.14 |
| 2026-03-20 | 84.04 | 84.68 | 83.40 | 1.28 |
| 2026-03-21 | 83.68 | 84.39 | 82.97 | 1.42 |
| 2026-03-22 | 82.96 | 83.74 | 82.18 | 1.56 |
| 2026-03-23 | 82.57 | 83.43 | 81.72 | 1.71 |
| 2026-03-24 | 82.58 | 83.50 | 81.66 | 1.85 |
| 2026-03-25 | 82.60 | 83.60 | 81.61 | 1.99 |
| 2026-03-26 | 82.62 | 83.69 | 81.56 | 2.13 |
| 2026-03-27 | 83.03 | 84.17 | 81.90 | 2.27 |
| 2026-03-28 | 82.25 | 83.46 | 81.04 | 2.42 |
| 2026-03-29 | 82.26 | 83.54 | 80.98 | 2.56 |
| 2026-03-30 | 82.42 | 83.77 | 81.07 | 2.70 |
| 2026-03-31 | 82.24 | 83.66 | 80.81 | 2.84 |
| 2026-04-01 | 82.19 | 83.69 | 80.69 | 3.00 |
| 2026-04-02 | 82.05 | 83.63 | 80.47 | 3.15 |
| 2026-04-03 | 82.15 | 83.80 | 80.50 | 3.31 |
| 2026-04-04 | 81.78 | 83.51 | 80.04 | 3.46 |
| 2026-04-05 | 81.76 | 83.57 | 79.95 | 3.62 |
| 2026-04-06 | 81.42 | 83.30 | 79.53 | 3.77 |
| 2026-04-07 | 81.06 | 83.03 | 79.10 | 3.93 |
| 2026-04-08 | 81.06 | 83.10 | 79.02 | 4.08 |
| 2026-04-09 | 81.10 | 83.22 | 78.98 | 4.24 |
| 2026-04-10 | 81.22 | 83.42 | 79.03 | 4.39 |
| 2026-04-11 | 85.04 | 87.06 | 83.03 | 4.03 |
| 2026-04-12 | 84.63 | 86.70 | 82.56 | 4.14 |
| 2026-04-13 | 84.62 | 86.74 | 82.49 | 4.24 |
| 2026-04-14 | 84.61 | 86.79 | 82.44 | 4.35 |
| 2026-04-15 | 84.61 | 86.84 | 82.38 | 4.46 |
| 2026-04-16 | 84.99 | 87.28 | 82.71 | 4.57 |
| 2026-04-17 | 84.19 | 86.52 | 81.85 | 4.67 |
| 2026-04-18 | 84.17 | 86.56 | 81.78 | 4.78 |
| 2026-04-19 | 84.31 | 86.75 | 81.86 | 4.89 |
| 2026-04-20 | 84.09 | 86.59 | 81.60 | 5.00 |
| 2026-04-21 | 84.07 | 86.64 | 81.49 | 5.15 |
| 2026-04-22 | 83.94 | 86.60 | 81.29 | 5.31 |
| 2026-04-23 | 84.06 | 86.79 | 81.33 | 5.46 |
| 2026-04-24 | 83.70 | 86.51 | 80.89 | 5.62 |
| 2026-04-25 | 83.69 | 86.58 | 80.81 | 5.77 |
| 2026-04-26 | 83.37 | 86.33 | 80.41 | 5.93 |
| 2026-04-27 | 83.03 | 86.07 | 79.99 | 6.08 |
| 2026-04-28 | 83.04 | 86.16 | 79.93 | 6.24 |
| 2026-04-29 | 83.09 | 86.29 | 79.90 | 6.39 |
| 2026-04-30 | 83.23 | 86.51 | 79.96 | 6.55 |
| 2026-05-01 | 82.89 | 86.21 | 79.56 | 6.66 |
| 2026-05-02 | 82.87 | 86.25 | 79.48 | 6.77 |
| 2026-05-03 | 82.80 | 86.24 | 79.36 | 6.88 |
| 2026-05-04 | 82.60 | 86.09 | 79.11 | 6.99 |
| 2026-05-05 | 82.85 | 86.40 | 79.30 | 7.10 |
| 2026-05-06 | 82.37 | 85.97 | 78.76 | 7.21 |
| 2026-05-07 | 82.16 | 85.82 | 78.51 | 7.32 |
| 2026-05-08 | 82.06 | 85.77 | 78.34 | 7.43 |
| 2026-05-09 | 81.96 | 85.73 | 78.19 | 7.54 |
| 2026-05-10 | 81.80 | 85.62 | 77.97 | 7.65 |
| 2026-05-11 | 81.59 | 85.48 | 77.70 | 7.79 |
| 2026-05-12 | 81.69 | 85.65 | 77.73 | 7.92 |
| 2026-05-13 | 81.78 | 85.81 | 77.75 | 8.06 |
| 2026-05-14 | 81.88 | 85.98 | 77.79 | 8.20 |
| 2026-05-15 | 81.68 | 85.85 | 77.52 | 8.33 |
| 2026-05-16 | 81.59 | 85.83 | 77.36 | 8.47 |
| 2026-05-17 | 81.65 | 85.95 | 77.34 | 8.61 |
| 2026-05-18 | 81.61 | 85.98 | 77.24 | 8.74 |
| 2026-05-19 | 81.59 | 86.03 | 77.15 | 8.88 |
| 2026-05-20 | 81.55 | 86.06 | 77.05 | 9.02 |
| 2026-05-21 | 81.54 | 86.11 | 76.96 | 9.15 |
| 2026-05-22 | 81.65 | 86.30 | 77.01 | 9.29 |
| 2026-05-23 | 81.79 | 86.51 | 77.08 | 9.43 |
| 2026-05-24 | 81.95 | 86.73 | 77.17 | 9.56 |
| 2026-05-25 | 81.85 | 86.70 | 77.00 | 9.70 |
| 2026-05-26 | 82.00 | 86.91 | 77.08 | 9.84 |
| 2026-05-27 | 81.74 | 86.73 | 76.76 | 9.97 |
| 2026-05-28 | 81.49 | 86.54 | 76.43 | 10.11 |
| 2026-05-29 | 81.54 | 86.67 | 76.42 | 10.25 |
| 2026-05-30 | 81.52 | 86.71 | 76.33 | 10.38 |
| 2026-05-31 | 81.49 | 86.71 | 76.26 | 10.46 |
| 2026-06-01 | 81.42 | 86.68 | 76.16 | 10.52 |
| 2026-06-02 | 81.28 | 86.58 | 75.99 | 10.59 |
| 2026-06-03 | 81.20 | 86.52 | 75.87 | 10.65 |
| 2026-06-04 | 81.07 | 86.43 | 75.72 | 10.72 |
| 2026-06-05 | 81.02 | 86.41 | 75.63 | 10.78 |
| 2026-06-06 | 80.96 | 86.39 | 75.54 | 10.85 |
| 2026-06-07 | 80.91 | 86.37 | 75.45 | 10.92 |
| 2026-06-08 | 80.73 | 86.22 | 75.24 | 10.98 |
| 2026-06-09 | 80.47 | 86.00 | 74.95 | 11.05 |
| 2026-06-10 | 79.86 | 85.41 | 74.31 | 11.10 |
| 2026-06-11 | 79.75 | 85.33 | 74.18 | 11.15 |
| 2026-06-12 | 79.80 | 85.40 | 74.20 | 11.20 |
| 2026-06-13 | 79.85 | 85.47 | 74.22 | 11.25 |
| 2026-06-14 | 79.88 | 85.53 | 74.23 | 11.30 |
| 2026-06-15 | 79.90 | 85.57 | 74.22 | 11.35 |
| 2026-06-16 | 79.87 | 85.57 | 74.17 | 11.40 |
| 2026-06-17 | 79.52 | 85.25 | 73.79 | 11.45 |
| 2026-06-18 | 79.40 | 85.15 | 73.64 | 11.50 |
| 2026-06-19 | 79.28 | 85.06 | 73.51 | 11.55 |
| 2026-06-20 | 79.19 | 85.00 | 73.38 | 11.62 |
| 2026-06-21 | 78.99 | 84.83 | 73.15 | 11.68 |
| 2026-06-22 | 78.70 | 84.57 | 65.54 | 19.03 |
| 2026-06-23 | 78.39 | 84.30 | 65.47 | 18.83 |
| 2026-06-24 | 78.11 | 84.04 | 65.35 | 18.69 |
| 2026-06-25 | 77.96 | 83.93 | 65.28 | 18.65 |
| 2026-06-26 | 77.77 | 83.78 | 65.24 | 18.53 |
| 2026-06-27 | 77.61 | 83.64 | 65.00 | 18.64 |
| 2026-06-28 | 77.29 | 83.36 | 64.94 | 18.41 |
| 2026-06-29 | 77.04 | 83.14 | 64.81 | 18.33 |
| 2026-06-30 | 75.65 | 81.78 | 64.64 | 17.14 |
| 2026-07-01 | 75.36 | 81.51 | 64.61 | 16.89 |
| 2026-07-02 | 75.40 | 81.57 | 64.65 | 16.92 |
| 2026-07-03 | 75.40 | 81.60 | 64.61 | 16.98 |
| 2026-07-04 | 75.33 | 81.55 | 64.51 | 17.03 |
| 2026-07-05 | 75.27 | 81.51 | 64.34 | 17.17 |
| 2026-07-06 | 75.01 | 81.27 | 63.59 | 17.68 |
| 2026-07-07 | 74.19 | 80.47 | 62.63 | 17.84 |
| 2026-07-08 | 73.83 | 80.14 | 62.55 | 17.59 |
| 2026-07-09 | 73.50 | 79.83 | 62.33 | 17.50 |