Given an expression
$$g_{\mu\nu}v^{\nu} v^{\rho} k_{\nu} \delta^{\mu}_{\alpha} k_{\rho} \delta^{\nu}_{\beta}$$
if we contract $v^{\rho} k_{\rho}$, we get $v \cdot k$, then the rest of it reads $g_{\mu\nu}v^{\nu} k_{\nu} \delta^{\mu}_{\alpha} \delta^{\nu}_{\beta}$.
At this point, we can further contract $v^{\nu} k_{\nu}$ to get another factor of $v \cdot k$, and the rest contracts to $g_{\alpha \beta}$, so that the whole expression contracts to $(v \cdot k)^2 g_{\alpha \beta}$.
However, it seems that we can also contract $g_{\mu\nu}v^{\nu} \delta^{\mu}_{\alpha}$ and $k_{\nu} \delta^{\nu}_{\beta}$ separately to get $(v \cdot k) v_{\alpha} k_{\beta}$ as the final result.
In general, $(v \cdot k) v_{\alpha} k_{\beta}$ and $(v \cdot k)^2 g_{\alpha \beta}$ have different tensor structures. Where exactly does my derivation go wrong? I feel I might miss something obvious, but a hint is most appreciated.