Whitehead speelde vijf jaar voor Oxford United. Whitehead stond op 14 mei2011 met Stoke City (als invaller) in de finale van de strijd om de FA Cup. Daarin verloor de ploeg van trainer-coach Tony Pulis met 1-0 van Manchester City door een treffer in de 74ste minuut van Yaya Touré.
In juni 2004 tekende hij als transfervrije speler bij Sunderland. In vijf jaar speelde hij 185 competitiewedstrijden, waarin hij 13 keer scoorde. Op 24 juli 2009 zette hij zijn handtekening onder een vierjarig contract bij Stoke City. Na vier seizoenen staat zijn teller bij Stoke op 132 competitiewedstrijden. In juli 2013 verliet hij Stoke City transfervrij voor Middlesbrough, dat in de Championship uitkomt. In 2015 ging hij naar Huddersfield Town waarmee hij in 2017 naar de Premier League promoveerde.