Weighing lysimeters yield the most precise and realistic measures for evapotranspiration (ET) and precipitation (<i>P</i>), which are of great importance for many questions regarding soil and atmospheric sciences. An increase or a decrease of the system mass (lysimeter plus seepage) indicates <i>P</i> or ET. These real mass changes of the lysimeter system have to be separated from measurement noise (e.g., caused by wind). A promising approach to filter noisy lysimeter data is (i) to introduce a smoothing routine, like a moving average with a certain averaging window, <i>w</i>, and then (ii) to apply a certain threshold value, δ, accounting for measurement accuracy, separating significant from insignificant weight changes. Thus, two filter parameters are used, namely <i>w</i> and δ. In particular, the time-variable noise due to wind as well as strong signals due to heavy precipitation pose challenges for such noise-reduction algorithms. If <i>w</i> is too small, data noise might be interpreted as real system changes. If <i>w</i> is too wide, small weight changes in short time intervals might be disregarded. The same applies to too small or too large values for δ. Application of constant <i>w</i> and δ leads either to unnecessary losses of accuracy or to faulty data due to noise. The aim of this paper is to solve this problem with a new filter routine that is appropriate for any event, ranging from smooth evaporation to strong wind and heavy precipitation. Therefore, the new routine uses adaptive <i>w</i> and δ in dependence on signal strength and noise (AWAT – adaptive window and adaptive threshold filter). The AWAT filter, a moving-average filter and the Savitzky–Golay filter with constant <i>w</i> and δ were applied to real lysimeter data comprising the above-mentioned events. The AWAT filter was the only filter that could handle the data of all events very well. A sensitivity study shows that the magnitude of the maximum threshold value has practically no influence on the results; thus only the maximum window width must be predefined by the user.