Etter å ha vært innom juniorlagene til Port Autonome du Havre, Frileuse, Montrouge, Lura og Watford, signerte Ba en ettårsavtale med den franske klubben Rouen, og nøt et suksessrikt år i Normandie. Mouscron vant kampen om Bas signatur i 2006, og etter en god start på karrieren i Belgia, hvor han scoret i sine tre første kamper, ble han skadet og var ute med skade mellom august 2006 og april 2007. Etter å ha kommet tilbake fra skade, fortsatte Ba der han hadde sluppet og scoret syv mål på ni kamper.
1899 Hoffenheim
29. august 2007, hentet Hoffenheim Ba til Tyskland for €3M. Ba gjorde en god førstesesong i Hoffenheim, og var en av bidragsyterne til at den nyopprykkede Bundesliga-klubben ledet ligaen da de tok juleferie.
I juli 2009 var Ba nære ved å signere for VfB Stuttgart, men han bestod ikke den medisinske testen[5] og ble værende i Hoffenheim. I desember samme år, signerte Ba en ny kontrakt med Hoffenheim, som holdt ham til klubben til 2013.[6]
Totalt scoret Ba 40 mål på 103 kamper for Hoffenheim.
West Ham United
I januar 2011 nektet Ba å dra på treningsleir med Hoffenheim fordi han ville til West Ham United.[7] Hoffenheim annonserte at Ba ville bli straffet av klubben[8], mens Ba påstod at Hoffenheim hadde forsikret ham om at han kunne forlate klubben under de rådende forhold.[9] I stedet var det Stoke City som var nærmest å signere Ba, men Ba bestod ikke den medisinske testen.[10] Dermed ble West Ham United likevel Bas neste stoppested, og han signerte en treårsavtale med London-klubben 28. januar 2011.[11]
West Ham rykket ned fra Premier League samme år, og dermed ble klausulen i Bas kontrakt aktivert. Han kunne forlate klubben vederlagsfritt.
Newcastle United
Ba hadde intet ønske om å bli med West Ham ned til Championship og signerte derfor for Newcastle United 17. juni 2011. Kontrakten hans varer frem til sommeren 2014, men hadde en klausel som sa at Ba kunne dra for et bud på 7.5 millioner pund.[12]
Chelsea
Ba signerte for Chelsea fjerde januar for 7.5 millioner pund, og ble tildelt draktnummer 29.