diff --git a/src/operator/Unfold.cpp b/src/operator/Unfold.cpp
index 5b651846b3c8744d9bbe594a0578c5c2787f722c..f15bdd799cb5c75404dc8b9b94dbfee6474b147a 100644
--- a/src/operator/Unfold.cpp
+++ b/src/operator/Unfold.cpp
@@ -47,8 +47,8 @@ void Aidge::Unfold_OpImpl<DIM>::forward() {
 
     for (DimSize_t n = 0; n < op.getOutput(0)->dims()[0]; ++n) {
         for (DimSize_t outC = 0; outC < outChannels; ++outC) {
-            const auto inOffsetH = outC % kernelDims[1];
-            const auto inOffsetW = (outC / kernelDims[1]) % kernelDims[0];
+            const auto inOffsetW = outC % kernelDims[1];
+            const auto inOffsetH = (outC / kernelDims[1]) % kernelDims[0];
             const auto inC = outC / kernelDims[0] / kernelDims[1];
 
             for (DimSize_t outH = 0; outH < outHeight; ++outH) {