Watch factorial(n) wind and unwind

Recursion runs in two motions. In the winding phase each call pushes a new stack frame and suspends, waiting for its child; nothing is multiplied yet. When the base case factorial(0)=1 is reached, the unwinding phase pops the frames one by one, doing the multiplications on the way back up. Step through it and watch the stack height reach exactly n+1 before a single product is computed.

call stack (top grows upward)