Attivo soprattutto nei tornei minori, ha vinto diversi titoli sia in doppio che in singolare. I suoi migliori ranking ATP sono stati l'80º in singolare e il 245º in doppio, entrambi nel 2018. Ha disputato due semifinali nel circuito maggiore e nel 2016 ha esordito nella squadra slovacca di Coppa Davis.[1] Tra gli juniores ha raggiunto nel 2010 il 17º posto nel ranking mondiale.[2]
Carriera
Fa le sue prime due apparizioni tra i professionisti nel 2008 e 2009 e inizia a giocare con continuità alla fine del 2010. Vince il primo titolo in doppio nel gennaio 2011 in un torneo israeliano del circuito ITF Futures e nel giugno successivo vince in Bosnia il primo Futures in singolare. Giocherà nei tornei ITF fino al 2014, collezionando in totale nove titoli in singolare e sei in doppio.
Nel 2011 entra per la prima volta nel tabellone principale di un torneo del circuito Challenger, e l'anno dopo viene sconfitto nella sua prima finale Challenger in doppio a San Paolo del Brasile. Nell'aprile 2013 perde la sua prima finale Challenger in singolare a Itajaí contro Rogério Dutra da Silva. Il primo titolo di categoria arriva il 17 agosto 2014 al Meerbusch Challenger, con il successo in finale su Andrej Kuznecov per 6-1, 6-4. Nel gennaio 2015 entra per la prima volta nella top 200 del ranking ATP, ma non ci resta a lungo.
Nel gennaio 2016, al suo settimo tentativo, supera per la prima volta le qualificazioni di un torneo ATP al Chennai Open e viene eliminato al primo turno. Subito dopo supera le qualificazioni anche all'Australian Open, ed esce di scena di nuovo al primo turno. Rientra nella top 200 e ad aprile vince alla Capri Watch Cup il secondo titolo Challenger battendo in finale Arthur De Greef. In giugno perde la finale al Challenger di Mestre e il mese successivo esordisce in Coppa Davis battendo Márton Fucsovics nella sfida vinta 3-0 dalla Slovacchia contro l'Ungheria. Anche agli US Open si qualifica per il tabellone principale ed esce al primo turno. A ottobre vince ad Anversa il primo incontro in un torneo ATP battendo il nº 76 del ranking Guillermo García López e viene eliminato al secondo turno. Chiude il 2016 con il nuovo best ranking alla 117ª posizione mondiale.
All'inizio del 2017 consegue il successo più significativo della carriera battendo al secondo turno dell'ATP di Chennai il nº 6 del mondo Marin Čilić, alla sua prima vittoria su un top 10; disputa così per la prima volta un quarto di finale ATP e viene sconfitto da Daniil Medvedev. Tra i pochi altri risultati di rilievo in stagione in singolare vi sono le qualificazioni superate al Roland Garros, dove esce al primo turno, e due finali perse nei Challenger, che non bastano a evitare la discesa nel ranking. In doppio disputa tre finali Challenger e vince a settembre quella di Roma in coppia con Martin Kližan.
Torna a mettersi in evidenza nel febbraio 2018 raggiungendo per la prima volta una semifinale ATP al Sofia Open, dove elimina due top 100 e viene sconfitto da Marius Copil. In aprile raggiunge il terzo turno all'ATP 500 di Barcellona e in estate disputa due finali Challenger vincendo quella di Poprad. In luglio si spinge fino in semifinale al prestigioso ATP 500 di Amburgo, elimina tra gli altri il nº 24 ATP Damir Džumhur e cede nel tie-break decisivo dopo aver sprecato un match-ball contro Leonardo Mayer, che vincerà il torneo.[3] Questo risultato porta Kovalik per la prima volta nella top 100 mondiale, in 82ª posizione. Si infortuna dopo gli US Open ed è costretto a chiudere la stagione a fine agosto, per effetto dei risultati stagionali in ottobre sale all'80ª posizione mondiale, il suo best ranking in carriera.[3]
Rientra nel circuito nel marzo 2019, nei primi mesi non ottiene buoni risultati e ad agosto scende alla 364ª posizione del ranking. Si riprende in settembre vincendo il Challenger 125 di Stettino; a fine stagione gioca altre due finali Challenger, vince quella di Maia e chiude il 2019 al 139º posto. Nelle due stagioni successive non vince alcun titolo ma si mantiene a ridosso della top 100 grazie ad alcuni discreti risultati, tra i quali i quarti di finale raggiunti nel 2021 ai tornei ATP di Córdoba e Kitzbühel. Le sconfitte subite nei primi mesi del 2022 lo riportano in aprile oltre la 200ª posizione mondiale e vi rientra a luglio con alcuni buoni risultati nei Challenger. A settembre torna a vincere un torneo quasi 3 anni dopo Maia battendo Jelle Sels nella finale del Challenger di Tulln an der Donau. Il mese successivo perde la finale al Challenger 125 di Parma contro Timofej Skatov.