A quaternion is a kind of multivector consisting of a scalar + a bivector (a bivector is an oriented magnitude with the orientation of a plane). You can get one by taking the quotient of two 3-dimensional vectors (a vector is an oriented magnitude with the orientation of a line). Note that a planar “complex number” is the same kind of object as a quaternion, just with the bivector part always oriennted in the same plane.
When people limit themselves to Gibbs-style vectors or to quaternions as a primary formalism what they are doing is pretending that vectors and bivectors are the same kind of object, and this pretense leads to massive amounts of confusion. cf. https://en.wikipedia.org/wiki/Pseudovector
The biggest thing GA adds compared to quaternions is that the same technology generalizes to higher or lower dimensions and to pseudo-Euclidean spaces (and to generalized Möbius transformations, non-metrical contexts, to modeling points and circles as multivectors, etc.), and there are many vector identities which are awkward to express when you are pretending that vectors and bivectors are the same.
Another advantage is that you don’t need any arbitrary conventional rules about multiplication of {i, j, k}, since typically the basis is specified in terms of orthonormal unit vectors e.g. e₁, e₂, e₃, so that it becomes very obvious how basic bivectors e₁e₂, e₂e₃, e₃e₁ should multiply: (e₁e₂)(e₂e₃) = e₁e₃ = −e₃e₁, etc.