diff --git a/saqc/funcs/rolling.py b/saqc/funcs/rolling.py
index e0986ddc71c8365d9ab42bdfc630aac35d3ff144..390805af2f8be473f614850b31eedd2192eef283 100644
--- a/saqc/funcs/rolling.py
+++ b/saqc/funcs/rolling.py
@@ -103,7 +103,7 @@ def roll(data, field, flagger, winsz, func=np.mean, eval_flags=True, min_periods
             means = to_fit.rolling(window=winsz, center=center, closed="both").apply(func)
 
     if _return_residues:
-        means = means - to_fit
+        means = to_fit - means
 
     data[field] = means
     if eval_flags: