What is the correct length for obtaining a true linear convolution from DFT?
I think what you are asking is: what happens of I implement the convolution of two sequences of length M &amp; N, using spectral multiplication with an FFT of length K? We defined &quot;correct&quot; here as &quot;matching the result of a linear convolution&quot;. For simplicity we define the correct length $L = M + N -1$
Here is what you get

K &gt; L: The first L samples will be &quot;correct&quot;, followed by (K-L) zeros
K = L: Correct
max(M,N) &lt; K &lt; L: the first (L-K) samples of the result are wrong because of time domain aliasing. You are also missing (L-K) samples at the end or your result since your buffer is too short. Some samples towards the end of your result to match the correct answer somewhere the middle.
K &lt; max(M,N): everything is wrong