We present the application of the ensemble Kalman filter to a three-dimensional, convection-driven model of the geodynamo. Our implementation rests on a suitably modified version of the parallel data assimilation framework of Nerger and Hiller (2013). We resort to closed-loop experiments for validation purposes, using a dynamo model of intermediate resolution. Observations for these experiments consist of spectral coefficients describing the surface poloidal magnetic field, with arbitrary truncation. Our synthetic tests demonstrate the efficacy and adaptivity of the method, provided the ensemble comprises O(500) members, in which case the typical spin-up time we find for our system is O(1000) years. In case of a poor resolution of the observations, we find that the knowledge of the full covariance matrix describing the uncertainty affecting the spectral coefficients (as opposed to its sole diagonal) results in a much better estimate of the internal structure of the dynamo.