Biografia È cugino di Cristián Zapata, a sua volta calciatore professionista. Sposato con Diana, la coppia ha due figli.

Caratteristiche tecniche Ritenuto uno dei migliori attaccanti colombiani della propria generazione, è una punta centrale dal fisico massiccio, caratteristica che gli permette di reggere anche da solo il peso dell'attacco contro i difensori avversari. Dispone di un tiro potente e preciso oltreché di un buon bagaglio tecnico, risultando abile nel gioco aereo, nell'uno contro uno e in fase di rifinitura. Nel corso della carriera, inoltre, ha dimostrato di sapersi adattare a diversi schemi di gioco.

Carriera Club América de Cali ed Estudiantes Viene acquistato nel 2001 dall', militando per sette anni nelle giovanili del club. Nel 2008 trova spazio in prima squadra, esordendo il 18 maggio dello stesso anno durante la partita di campionato contro il , conclusasi con la prima rete realizzata da calciatore professionista. Trascorre due anni con i Diablos Rojos, nei quali colleziona in totale 21 presenze e 7 gol segnati, non sufficienti a evitare la retrocessione in Categoría Primera B della squadra.

Nel 2011 passa in prestito all'. Debutta con la squadra biancorossa il 26 settembre, in occasione dell'incontro con il , entrando a partita in corso e segnando, dopo pochi minuti, la sua prima rete nella Primera División. Dopo 5 gol segnati in 11 partite, il club di La Plata esercita l'opzione per l'acquisto del cartellino del calciatore.

Napoli Nell'agosto 2013 approda in Italia, ingaggiato dal . Esordisce in maglia azzurra, e contestualmente in Serie A, il 28 settembre successivo, nella gara esterna contro il vinta 2-0 dai partenopei. Tre giorni più tardi debutta anche in Champions League, nella gara giocata all'Emirates Stadium contro l'; nella stessa competizione, il successivo 22 ottobre segna il primo gol in maglia azzurra, allo Stade Vélodrome contro l', dopo essere subentrato nel corso della gara a Gonzalo Higuaín. Va ancora in rete nel match di ritorno degli ottavi di finale di Europa League contro il , terminato 2-2, risultato che, in virtù della sconfitta per 1-0 dell'andata, decreta l'eliminazione del Napoli dalla competizione. I primi gol in Serie A arrivano il 26 marzo 2014, nella vittoria esterna contro il (4-2), durante la quale mette a segno una doppietta. Nella sua prima stagione con i partenopei realizza complessivamente 7 reti in 22 presenze.

Anche nell'annata 2014-2015 il colombiano si ritrova spesso a partire dalla panchina. Il 24 settembre 2014, in occasione della terza giornata di campionato, segna il primo gol stagionale nella partita casalinga contro il (3-3). Nell'ultima gara della fase a gironi di Europa League, contro lo , mette a segno il gol del definitivo 3-0 a favore degli azzurri. Nella partita giocata il 23 febbraio 2015 realizza, ai danni del , il suo settimo gol in stagione con il Napoli, diventando così il calciatore colombiano più prolifico nella storia della squadra partenopea.

Udinese e Sampdoria Nel luglio del 2015 lascia il Napoli per approdare in prestito biennale all'. Segna la sua prima rete in campionato con la maglia bianconera contro l'. Nella prima stagione friulana gioca 25 partite segnando 8 reti. L'anno seguente gioca invece tutte le 38 gare di campionato, realizzando 10 gol, a cui aggiunge un'ulteriore rete nella sua unica presenza stagionale in Coppa Italia.

Nell'agosto 2017 si trasferisce alla , in prestito con obbligo di riscatto. Debutta con la maglia blucerchiata il successivo 17 settembre contro il , andando in rete dopo soli 16 secondi. Realizza gol decisivi per le vittorie casalinghe contro , , e , consentendo ai liguri di stazionare nella parte alta della classifica per quasi tutto il girone di andata; tuttavia, la squadra terminerà la stagione al decimo posto, e Zapata chiuderà con 11 reti all'attivo in 31 presenze.

Atalanta 2018-2020 Nel luglio del 2018 si trasferisce dalla Sampdoria all' in prestito biennale per 12 milioni di euro, con diritto di riscatto per ulteriori 14 milioni. Fa il suo esordio in maglia nerazzurra il 26 dello stesso mese, subentrando dalla panchina nella partita casalinga del secondo turno preliminare di Europa League pareggiata per 2-2 contro i bosniaci del . Realizza il suo primo gol con gli orobici il successivo 9 agosto, nella sfida del terzo turno preliminare vinta per 4-1 sul campo degli israeliani dell'; la sua prima rete in Serie A con i bergamaschi arriva nei minuti finali della partita del 4 novembre, vinta per 2-1 sul terreno del , nella quale Zapata realizza il gol-vittoria. Il 9 dicembre decide la trasferta in casa dell' (1-3), sua ex squadra, mettendo a segno la prima tripletta nel campionato italiano. Il 20 gennaio 2019 realizza una quaterna nella partita vinta per 5-0 sul campo del : gli unici giocatori del club bergamasco a segnare quattro reti in una partita di massima serie, entrambi nel 1952, erano stati Hasse Jeppson (nella stagione 1951-1952) e Poul Rasmussen (nella stagione 1952-1953). In quest'annata Zapata, grazie ai 23 gol in campionato e ai 28 stagionali – entrambi suoi record personali –, emerge tra i protagonisti di un'Atalanta che raggiunge uno storico terzo posto in Serie A, suo migliore piazzamento della storia, e l'annessa qualificazione in Champions League; la Dea arriva a giocare anche la sua terza finale di Coppa Italia, traguardo a cui l'attaccante colombiano contribuisce con la decisiva doppietta alla nei quarti di finale, in una vittoria per 3-0 che elimina dalla competizione i detentori delle precedenti quattro edizioni.

In avvio della stagione 2019-2020, il 1º ottobre realizza la rete del momentaneo 1-0 nella sconfitta casalinga per 2-1 contro gli ucraini dello , nella seconda giornata della fase a gironi di Champions League: si tratta del primo, storico gol atalantino nella massima competizione europea per club. Il successivo 17 gennaio 2020 il club bergamasco riscatta definitivamente Zapata dalla Sampdoria: con i 26 milioni totali sborsati tra prestito oneroso e riscatto, il colombiano diventa, all'epoca, l'acquisto più costoso di sempre per la società nerazzurra.

2020-2023 Il 17 ottobre 2021, andando a segno nel successo per 4-1 sul terreno dell', realizza il suo 100º gol in Serie A, diventando il primo colombiano a raggiungere tale traguardo. Il 27 novembre seguente segna il gol del decisivo 1-0 in trasferta contro la Juventus, facendo sì che i nerazzurri tornino a vincere a Torino dopo 32 anni. Nel corso della stagione 2021-2022 diventa, inoltre, il secondo miglior marcatore di sempre nella storia del club in incontri di campionato, superando nel corso dell'annata Severo Cominelli, Adriano Bassetto, Germán Denis e Poul Rasmussen; nel finale della stagione precedente, superando questi stessi giocatori, era già diventato il secondo di sempre per numero di gol tra tutte le competizioni ufficiali con il club bergamasco.

L'annata 2022-2023 è caratterizzata da una serie di infortuni che condizionano il rendimento dell'attaccante colombiano, il quale chiude la sua quinta stagione tra le file nerazzurre con soltanto 2 reti in 27 presenze complessive.

Il 26 agosto 2023, alla seconda giornata del campionato seguente, realizza un gol nella sconfitta per 2-1 sul campo del Frosinone: in tal modo, con 69 reti, raggiunge Cristiano Doni in testa alla classifica dei marcatori in Serie A con la maglia nerazzurra.

Torino Il 1º settembre 2023 Zapata si trasferisce in prestito, con diritto di riscatto convertibile in obbligo, al ; è il primo calciatore colombiano a vestire la maglia granata. Fa il suo debutto coi torinesi due giorni dopo, in Serie A, scendendo in campo da titolare nella vittoria interna sul (1-0). Il successivo 24 settembre trova, sempre in campionato, la sua prima rete coi granata, quella del definitivo 1-1 nella gara casalinga contro la ; quindi il 4 dicembre, ancora in Serie A, realizza la sua prima doppietta con il Torino, in occasione del successo casalingo per 3-0 ai danni della sua ex squadra atalantina. Chiude la sua prima stagione sotto la Mole a quota 12 gol, venendo riscattato dalla società granata.

Nella stagione 2024-2025, stante gli addii di Alessandro Buongiorno e Ricardo Rodríguez, l'attaccante colombiano viene nominato capitano della squadra piemontese. Inizia il campionato segnando, il 17 agosto, il gol del definitivo 2-2 nel big match contro il . Tuttavia il successivo 5 ottobre, sempre in Serie A, durante la sconfitta esterna per 3-2 contro l' (in cui peraltro realizza la prima delle due reti granata) si infortuna gravemente, procurandosi una lesione del legamento crociato anteriore e del menisco mediale e laterale: l'infortunio lo terrà lontano dai campi per dieci mesi, facendogli chiudere anzitempo la stagione.

Torna in campo nel primo impegno dell'annata successiva, il 18 agosto 2025, subentrando nel finale del vittorioso incontro di Coppa Italia contro il (1-0).

Nazionale Nazionali giovanili Con la nazionale Under-20 vince il Torneo di Tolone 2011, mettendo a segno anche un gol nella finale contro i pari età della . Nello stesso anno, inoltre, prende parte al mondiale di categoria organizzato proprio in Colombia, che vede i padroni di casa uscire sconfitti per 3-1 ai quarti di finale contro il ; nell'occasione è lo stesso Zapata a realizzare la rete del momentaneo pareggio colombiano.

Nazionale maggiore Nel marzo 2017 viene convocato dal commissario tecnico José Pekerman per la prima volta in nazionale maggiore. Debutta il 23 dello stesso mese contro la , subentrando al 64' al posto di Mateus Uribe. Viene poi incluso tra i preconvocati per il , senza risultare tra i 23 finali di Pekerman. Il 9 giugno 2019 segna la sua prima rete in nazionale maggiore, siglando il definitivo 3-0 nella vittoriosa amichevole contro il . Convocato nello stesso anno per la Copa América, il 16 giugno segna il gol del definitivo 2-0 all', nella prima partita della fase a gironi. Si ripete nella gara successiva contro il (partecipante alla competizione tramite invito della CONMEBOL), realizzando la rete del definitivo 1-0. Il cammino dei Cafeteros s'interrompe ai quarti di finale contro il dopo i tiri di rigore.

Prende parte anche alla Copa América 2021, che vede la Colombia fermarsi in semifinale, eliminata nuovamente ai tiri di rigore dai futuri campioni dell'Argentina.

Statistiche Presenze e reti nei club Statistiche aggiornate al 13 marzo 2026.

StagioneSquadraCampionatoCoppe nazionaliCoppe continentaliAltre coppeTotaleCompPresRetiCompPresRetiCompPresRetiCompPresRetiPresReti 2008 PD 25 1 CC 0 0 - - . - - - 25 1 2009 PD 6 0 CC 1 1 CL 0 0 - - - 7 1 2010 PD 19 2 CC 5 3 - - - - - - 24 5 2011 PD 13 5 CC 2 1 - - - - - - 15 6Totale América de Cali 63 8 8 5 0 0 - - 71 13 2011-2012 PD 11 5 CA 0 0 CS 0 0 - - - 11 5 2012-2013 PD 31 13 CA 2 3 - - - - - - 33 16 ago. 2013 PD 2 1 CA 0 0 - - - - - - 2 1Totale Estudiantes (LP) 44 19 2 3 - - - - 46 22 2013-2014 A 16 5 CI 1 0 UCL+UEL 3+2 1+1 - - - 22 7 2014-2015 A 21 6 CI 1 0 UCL+UEL 1Nei play-off.+8 0+2 SI 0 0 31 8Totale Napoli 37 11 2 0 14 4 0 0 53 15 2015-2016 A 25 8 CI 1 0 - - - - - - 26 8 2016-2017 A 38 10 CI 1 1 - - - - - - 39 11Totale Udinese 63 18 2 1 - - - - 65 19 2017-2018 A 31 11 CI 1 0 - - - - - - 32 11 2018-2019 A 37 23 CI 5 3 UEL 6Nei turni preliminari 2 - - - 48 28 2019-2020 A 28 18 CI 0 0 UCL 5 1 - - - 33 19 2020-2021 A 37 15 CI 4 1 UCL 8 3 - - - 49 19 2021-2022 A 24 10 CI 0 0 UCL+UEL 6+2 3+0 - - - 32 13 2022-2023 A 25 2 CI 2 0 - - - - - - 27 2 lug-ago. 2023 A 2 1 CI 0 0 UEL - - - - - 2 1Totale Atalanta 153 69 11 4 27 9 - - 191 82 set. 2023-2024 A 35 12 CI 1 0 - - - - - - 36 122024-2025 A 7 3 CI 2 1 - - - - - - 9 42025-2026 A 23 3 CI 2 0 - - - - - - 25 3Totale Torino 65 18 5 1 - - - - 70 19Totale carriera 456 154 31 14 41 13 0 0 528 181

Cronologia presenze e reti in nazionale

Record Atalanta Unico calciatore ad aver segnato in otto partite consecutive in Serie A.

Palmarès Club Competizioni nazionali

América de Cali: Clausura 2008

Napoli: 2013-2014