Gomez werd geboren in Catford en sloot zich in 2010 aan bij Charlton Athletic. Op dertienjarige leeftijd debuteerde hij in het elftal voor spelers onder 18 jaar. In 2014 ondertekende hij zijn eerste professionele contract. Op 12 augustus 2014 debuteerde Gomez in de League Cup, tegen Colchester United.[2] Eén week later maakte hij zijn opwachting in de Championship, in een thuiswedstrijd tegen Derby County.[3] In zijn eerste en enige seizoen voor Charlton kwam hij tot 24 wedstrijden in alle competities.
Liverpool
Gomez tekende in juni 2015 een contract tot medio 2020 bij Liverpool, dat circa €4.900.000,- voor hem betaalde aan Charlton.[4] Op 9 augustus maakte hij als linksback zijn debuut voor Liverpool. Hij gaf een assist op de enige treffer van de wedstrijd, gemaakt door Philippe Coutinho. Op 17 september maakte hij tegen Girondins de Bordeaux zijn Europese debuut voor Liverpool. Hij speelde zeven wedstrijden, voordat hij bij Engeland onder 21 zijn voorste kruisband scheurde en zijn seizoen voorbij was. Op 8 januari 2017, vijftien maanden na zijn laatste wedstrijd voor Liverpool, maakte hij in de FA Cup-wedstrijd tegen Plymouth Argyle zijn rentree. Hij speelde dat seizoen alleen in de FA Cup drie wedstrijden.
Gomez begon het seizoen 2017/18 als eerste rechtsback door een blessure van Nathaniel Clyne. Op 13 september maakte hij zijn debuut in de Champions League tegen Sevilla (2-2), maar hij kreeg in de blessuretijd zijn tweede gele kaart. Mede door de groei van Trent Alexander-Arnold, maar vooral door blessureleed miste hij een aantal wedstrijden in de tweede seizoenshelft, waaronder de verloren Champions League-finale tegen Real Madrid. Hij speelde 31 wedstrijden in alle competities, zijn hoogste aantal tot dan toe.
Door blessureleed bij Dejan Lovren en Joël Matip en de opkomst van Alexander-Arnold ging Gomez zich in het seizoen 2018/19 op de plek van centrale verdediger naast Virgil van Dijk. Dat deed hij met verve, totdat hij op 5 december 2018 na een tackle van Ben Mee geblesseerd het veld moest verlaten. Hij werd in februari 2019 geopereerd aan zijn enkel, werkte aan zijn fitheid in april en viel op 1 juni 2019 in tijdens de gewonnen UEFA Champions League-finale tegen Tottenham Hotspur.
In het seizoen 2019/20 won hij de concurrentiestrijd met Matip en speelde hij 43 wedstrijden in alle competities. Op 14 augustus speelde hij 120 minuten tijdens de UEFA Super Cup tegen Chelsea en eind december miste hij geen wedstrijd in de wedstrijden om de Wereldkampioenschap voetbal voor clubs tegen CF Monterrey en CR Flamengo. Gomez speelde slechts 12 wedstrijden in het seizoen 2020/21 door een knieblessure, opgelopen bij het Engelse nationale elftal. Rond dezelfde tijd scheurde Virgil van Dijk zijn voorste kruisband, waardoor Liverpool een blessurecrisis had centraal achterin. In mei 2022 zat Gomez 90 minuten op de bank tijdens zowel de gewonnen FA Cup-finale tegen Chelsea als de verloren Champions League-finale tegen Real Madrid. Tussen 2020 en 2023 was Gomez voornamelijk rotatiespeler, achter Ibrahima Konaté en Virgil van Dijk. Eind 2023 speelde hij een aantal wedstrijden linksback door blessures van Andrew Robertson en Kostas Tsimikas.