Skeletal vs Static mesh for optimisation

Would there be a performance hit or benefit for using 20 static mesh components instead of 1 skeletal mesh with 20 bones for vehicles?

It really depends on what you’re ultimately looking to do but your best approach will probably be a mixture of both. If, for example, one of the objects is the antenna - you’re probably better off doing it with bones so you can procedurally animate it to the bouncing of the car and attach it to a socket in the chasis, which, since it needs no animation, can just be a Static Mesh.
That said, performance-wise you generally want to use as few components as possible in a BP.
Cheers.