We present a modelling study of the global carbon cycle using the procedure of ‘data assimilation’ in the Melbourne University Tracer Model coupled to a three dimensional mass balance inversion. Previous mass balance inversions have been run in two dimensions and have ignored the longitudinal variability in the surface CO2 observations. Using an initial source field, we run a tracer transport model in forward mode and assimilate CO2 observations where available producing global CO2 distributions. The surface concentrations (which have longitudinal variability) are used to constrain a mass balance inversion to estimate surface sources. The time average of this source is similar to the initial source field, but contains the influences of the atmospheric dynamics of the transport model and the assimilated observations. We have used the data assimilation technique to estimate surface sources and sinks for the periods 1987-1992 and 1980-1993. The inter-annual variability of surface fluxes is analysed based on the inversion estimates, neglecting the inter-annual variability of transport.