Matthews is een jeugdproduct van Cardiff City. Hij debuteerde op 15 augustus 2009 in het eerste team in een competitiewedstrijd tegen Blackpool. In twee seizoenen speelde hij 41 wedstrijden voor de Welshe club. Op 25 februari 2011 tekende Matthews een voorcontract bij Celtic. Hij tekende een vierjarig contract bij de Schotse club, waar hij zijn voormalig teamgenoot Joe Ledley terugvond. Hij kreeg het rugnummer 2 toebedeeld, dat daarvoor aan Andreas Hinkel toebehoorde. Hij debuteerde voor Celtic op 7 augustus 2011, tegen Aberdeen. In zijn eerste seizoen kwam hij tot 27 competitiewedstrijden bij The Celts.
Na meer dan honderd competitiewedstrijden en vier landskampioenschappen op rij, tekende Adams in juli 2015 een contract tot medio 2019 bij Sunderland, de nummer zestien van de Premier League in het voorgaande seizoen. Dat betaalde circa €2.800.000,- voor hem.[1]