Ba memulai karier sepak bola dengan bermain sebagai pemain junior Port Autonome du Havre, Frileuse, dan Montrouge di Perancis dan Watford di Inggris. Ia memulai karier profesional dengan Rouen pada tahun 2006 sebelum bergabung dengan R.E. Mouscron. Pada tahun 2007 ia bergabung dengan klub Bundesliga TSG 1899 Hoffenheim. Pada tahun 2011, Ba begabung ke West Ham United. Ia menjadi top skor klub tersebut dengan 12 kali penampilan pada paruh kedua musim 2010–2011, meski pada akhir musim West Ham terdegradasi ke Championship. Ba kemudian bergabung dengan Newcastle pada bulan Juni 2011. Setelah dua tahun bersama Newcastle, pada bulan Januari 2013, Ba bergabung ke Chelsea.