Let $B$ denote the unit ball in $\mathbb{R}^n$ and let $f\in C^1(B\setminus\{0\})\cap L^1(B)$. Denote with $\nabla_c f$ the classical gradient, which is defined in $B\setminus\{0\}$, and denote with $\nabla f$ the distributional gradient, which is a distribution on the whole ball $B$. Suppose that $\nabla_cf$ is a distribution on $B$ (that is, $\nabla_c f \in L^1(B)$), so that we can write $$\nabla f = \nabla_c f + T,$$ for a distribution $T$ on $B$.
Question. What can we say about $T$?
I guess that $T$ needs be a Dirac delta, because it needs be supported in $\{0\}$ and I don't see any reason why it could be of order greater than zero. Am I right?
If $n \geq 2$, then in fact you have $T = 0$. This follows from Fubini's theorem. Consider the two dimensional case. Denote by $\partial_c$ the classical derivatives operator and by $\partial_d$ the distributional derivatives, and let $\phi \in C^{\infty}_c(\Omega)$. Because $\frac{\partial_c f}{\partial x} \phi \in L^1(B)$ we have
$$ \int_B \frac{\partial_c f}{\partial x} \phi dx dy = \int_{-1}^1 \int_{-1}^{1} \frac{\partial_c f}{\partial x}(x,y)\phi(x,y) dx dy = \int_{-1}^1 F(y) dy $$ where $$ F(y) = \int_{-1}^1 \frac{\partial_c f}{\partial x}(x,y)\phi(x,y) dx. $$ Since for all $y \neq 0$, the function $x \mapsto \frac{\partial_c f}{\partial x}(x,y)$ is $C^1$, you can integrate by parts, to get $$ F(y) = -\int_{-1}^1 f \frac{\partial_c \phi}{\partial x} dx. $$ Applying Fubini again, we get $$ \int_B \frac{\partial_c f}{\partial x} \phi dx dy = - \int_B f \frac{\partial_c \phi}{\partial x} dx dy$$ which implies that $\frac{\partial_c f}{\partial x} = \frac{\partial_d f}{\partial x}$.
If $n = 1$, then the fundamental theorem of calculus together with the fact that $f \in L^1(B)$ implies that $f$ must have at most a jump discontinuity at $0$ and so you can indeed get only a constant multiple of a Dirac delta.
More generally, the Fubini argument applies to any $C^1$ function outside a singular set of "codimension" two or higher. For example, if $n = 3$ and $f \in C^1(B \setminus \{x = y = 0\})$, you can still run the argument. This is also why it fails for $n = 1$.