There is a crossed module associated to this situation, which will be trivial if $G \to \pi_0(G)$ splits on the level of gropus. Thus an obstruction for the existence of a splitting is the non-triviality of the crossed module.

In some more detail, the crossed module is given by the universal covering $\tilde{G_0}\to G_0$, composed with the inclustion $G_0\to G$. The action is given by lifting the conjugation action of $G$ on $G_0$ to $\tilde{G_0}$ (note that each automorphism of $G_0$ lifts in a unique way to its simply connected cover). This defines the smooth crossed module $\tilde{G_0} \to G$. This has an obstruction class in the group cohomology $H^3(\pi_0(G),\pi_1(G))$, where the action of $\pi_0(G)$ on $\pi_1(G)$ in induced by the conjugation in $G$.

The purpose of the obstruction class is twofold. On one hand, it is an obstruction for the existence of the splitting. On the other hand, it allows you to reduce the question to simply connected $G_0$ in case that the obstruction vanishes, since then there exists a $H$ with $H_0$ simply connected and $\pi_0(H)=\pi_0(G)$ and $G\to\pi_0(G)$ splits if $H\to \pi_0(H)$ does so. Details on the latter arguing can be found in Theorem III.8 of http://arxiv.org/abs/math/0504295 (I hope that I am not overseeing some smoothness issues here).