diff --git a/include/evalhyd/detail/probabilist/cdf.hpp b/include/evalhyd/detail/probabilist/cdf.hpp
index 1f5489eaaba8cfca095d89ba29080b3de81a0dd8..e0cf0b146c8a9d65554bc43e416075c1b4d83c1a 100644
--- a/include/evalhyd/detail/probabilist/cdf.hpp
+++ b/include/evalhyd/detail/probabilist/cdf.hpp
@@ -107,16 +107,17 @@ namespace evalhyd
                 );
 
                 // compute crps as difference between the quadratic CDFs
-                auto p_i_2 = xt::eval(
+                auto p_i = xt::eval(
                         xt::view(
-                                xt::square(xt::arange<double>(n_mbr + 1) / n_mbr),
+                                xt::arange<double>(n_mbr + 1) / n_mbr,
                                 xt::all(), xt::newaxis(), xt::newaxis(),
                                 xt::newaxis()
                         )
                 );
 
                 auto crps_from_ecdf = xt::sum(
-                        (alpha_i * p_i_2) + (beta_i * (1 - p_i_2)),
+                        (alpha_i * xt::square(p_i))
+                        + (beta_i * xt::square(1 - p_i)),
                         0
                 );
 
diff --git a/tests/expected/evalp/CRPS_FROM_ECDF.csv b/tests/expected/evalp/CRPS_FROM_ECDF.csv
index 13832cc05b6185a94d67fc615af231bc718fe8e1..a639c991d747ee29be096a2354aafdb4d737cb01 100644
--- a/tests/expected/evalp/CRPS_FROM_ECDF.csv
+++ b/tests/expected/evalp/CRPS_FROM_ECDF.csv
@@ -1 +1 @@
-271.9578705197483
+262.615225902479