Caratteristiche tecniche Di piede mancino, può giocare da attaccante esterno o seconda punta. In giovane età era considerato uno dei calciatori più promettenti al mondo. Dispone di buon dribbling e fiuto del gol, oltre ad essere uno specialista dei calci piazzati. Nei primi anni della carriera il carattere irruente lo ha portato sovente a ricevere sanzioni disciplinari.
Nel 2015 è stato inserito dalla rivista 101 Great Goals nella lista dei 101 calciatori più promettenti del mondo nati dopo il 1993.
Carriera Club Gli inizi Muove i primi passi nella squadra locale di Bocchigliero, piccolo centro del cosentino dove è cresciuto. Successivamente si trasferisce con la famiglia a Mirto Crosia ed entra nella scuola calcio "Il Castello", dove viene segnalato agli osservatori della , squadra che gli fa firmare un accordo con opzione sul cartellino valida fino ai 14 anni. Nella stagione 2007-2008 disputa in prestito il campionato Allievi regionali con l’AC Rossano. L'anno seguente rientra alla base e trascina la squadra alle finali provinciali della categoria Allievi, dove si rende protagonista con due triplette. Nel 2009 è vicino ad entrare nelle giovanili del , ma il trasferimento non si concretizza per via dei problemi societari della squadra silana.
Decide dunque di fare visita al fratello maggiore Francesco, studente fuori sede a Modena. Qui ha modo di fare un provino per la SPAL, che non va a buon fine. La svolta arriva quasi per caso, quando, durante una partita a calcetto con gli amici del fratello, viene notato da Luciano Carlino, allenatore in seconda degli Allievi del , che lo segnala alla società neroverde. Il Sassuolo lo inserisce subito nelle proprie giovanili.
Sassuolo Dalle giovanili alla prima squadra (2010-2015) Aggregato inizialmente agli Allievi Nazionali, viene poi promosso in Primavera, dove continua a mettersi in luce, guadagnando le attenzioni dell'allenatore della prima squadra Fulvio Pea, che alla fine della stagione 2011-2012 lo convoca per il doppio impegno dei play-off di Serie B contro la Sampdoria.
Nella stagione 2012-2013, dopo averlo portato in ritiro, Eusebio Di Francesco decide di inserirlo nella rosa della prima squadra. Il 27 agosto 2012, a 18 anni, debutta da professionista in Serie B in -Sassuolo (0-3). Il 1º settembre, alla 2ª giornata di campionato, realizza il suo primo gol in carriera nella vittoria per 2-1 contro il allo Stadio Alberto Braglia. In campionato disputa 37 gare, segna 11 reti e contribuisce alla prima promozione del Sassuolo in Serie A.
Il 2 settembre 2013 è inserito nell'operazione che comprende anche la compartecipazione di Luca Marrone, passato dalla Juventus al ; la squadra torinese lascia Berardi in prestito gratuito al Sassuolo, che ottiene un accordo di partecipazione per 4,5 milioni di euro. Il 25 settembre 2013, a 19 anni, esordisce in Serie A in -Sassuolo 1-1. La prima rete, in Serie A, è il 6 ottobre 2013 nella sconfitta 3-1 col , segnando su rigore il momentaneo 1-1. Segna nella prima vittoria storica in Serie A del Sassuolo col 2-1, al 12' su rigore. Il 3 novembre 2013, in -Sassuolo 3-4, segna la sua prima tripletta (due gol su rigore) in Serie A, che porta il Sassuolo a ottenere la prima vittoria esterna in A della sua storia. Il 12 gennaio 2014 segna 4 gol in Sassuolo- 4-3. Con questa quaterna diventa il secondo giocatore più giovane (dopo Silvio Piola) ad aver realizzato quattro gol in una gara di Serie A. Chiude la stagione con 16 reti in Serie A, di cui 6 rigori realizzati.
Il 10 maggio 2015 ottiene la 100ª presenza in maglia neroverde, in -Sassuolo (2-3). Chiude la seconda stagione in Serie A con 15 reti, una in meno rispetto alla stagione precedente. Il 25 giugno 2015 la sua compartecipazione è risolta in favore dei neroverdi per 10 milioni di euro; la Juventus ottiene l'opzione per riacquistarlo entro l'estate del 2017.
Altalena di prestazioni (2015-2018) Dopo un inizio di stagione costellato da vari infortuni, il 10 gennaio 2016 decide il match vinto per 1-0 in casa dell', diventando così il miglior marcatore nell'intera storia del Sassuolo con 45 gol. Chiude la sua 3ª stagione nel massimo campionato italiano con un bottino di 7 reti in 29 presenze, non raggiungendo la doppia cifra di gol come aveva fatto nelle stagioni passate.
Il 28 luglio 2016 esordisce nelle coppe europee, in occasione della partita d'andata del terzo turno preliminare di Europa League, pareggiata per 1-1, contro il , nella quale realizza, su rigore, il gol del pareggio. Una settimana più tardi, in occasione della partita di ritorno, mette a segno la sua prima doppietta in campo internazionale nella gara vinta per 3-0 contro la squadra svizzera. Il suo bottino personale di cinque gol nella fase di qualificazione della competizione permettono al Sassuolo di partecipare alla fase a gironi dell'Europa League per la prima volta della propria storia. Tuttavia, alla 2ª giornata di campionato, il 28 agosto, si infortuna al collaterale del ginocchio sinistro nella partita casalinga contro il . La natura dell'infortunio costringe Berardi a rimanere fuori a lungo: ritorna in campo l'8 gennaio 2017, all'ultima giornata del girone di andata. Conclude la sua quinta stagione in neroverde con un totale di 25 presenze e 10 reti messe a segno.
Nella stagione 2017-2018 risente della partenza del suo mentore Di Francesco, e realizza unicamente 4 reti in campionato.
Il ritorno ad alti livelli e la ripartenza dalla B (2018-2024) Nella stagione successiva arriva l'allenatore Roberto De Zerbi e il 7 ottobre 2018, in occasione della sconfitta esterna per 2-0 contro il , Berardi disputa la duecentesima partita con indosso la maglia neroverde. Conclude la stagione 2018-2019 con 10 gol totali, di cui 8 in campionato e 2 in Coppa Italia.
Il 1º settembre 2019, nella seconda giornata di campionato, segna la sua prima tripletta stagionale nella partita casalinga vinta contro la per 4-1. Nella terza giornata mette a referto una doppietta (segnando uno dei gol su calcio di punizione) nella partita persa in trasferta contro la per 4-2. Finisce la stagione 2019-2020 con 31 partite giocate, 14 gol e 8 assist. Nell'anno solare 2020, avendo collezionato 10 gol e 10 assist in uno dei top-5 campionati europei, entra quale unico giocatore italiano tra i 10 giocatori ad essere riusciti ad andare in doppia cifra sia per gol che per assist.
Il 20 settembre 2020 realizza il suo primo gol stagionale nella partita di campionato vinta 4-1 contro il neopromosso . Il 17 marzo 2021 mette a segno una doppietta nella gara casalinga contro il , poi persa per 3-2, raggiungendo quota 11 reti e arrivando in doppia cifra per il secondo anno consecutivo e la quarta volta in Serie A per poi ripetersi, esattamente un mese dopo, nella vittoria casalinga contro la , segnando la rete 100 e 101 con la maglia neroverde, diventando il primo a riuscirci. Conclude la sua stagione con 17 reti in 30 presenze totali in campionato, segnando il suo record personale.
Il 18 marzo 2022 realizza una doppietta nella vittoria casalinga contro lo (4-1), raggiungendo così i 100 gol in Serie A. Conclude la stagione con 34 presenze tra coppa e campionato, 15 gol e 17 assist.
Ormai divenuto una bandiera del Sassuolo, con l'avvio della nuova stagione decide di cambiare numero di maglia, scegliendo la numero dieci. La stagione 2022-2023 non inizia bene per Berardi, dati i molteplici infortuni muscolari, ma il suo rientro sarà decisivo nella seconda parte dell'annata per la salvezza della squadra emiliana, con i gol nelle vittorie esterne contro (2-5) e (3-4).
Nella stagione 2023-2024, con il Sassuolo relegato in zona retrocessione nonostante le sue 9 reti in 18 presenze, il 3 marzo 2024, al rientro dopo un lungo infortunio nella gara persa 1-0 in casa del Verona, riporta la lesione completa del tendine d'Achille della gamba destra che gli fa chiudere anzitempo la stagione e saltare gli Europei.
Rimasto al Sassuolo anche la stagione seguente in Serie B, torna a giocare il 5 ottobre nel secondo tempo della gara vinta per 6-1 contro il servendo a Thorstvedt l’assist per l’ultimo gol. Il 3 novembre, alla prima da titolare, decide dal dischetto la vittoria casalinga contro il Mantova, tornando a segnare in Serie B dopo oltre 11 anni. Chiude la stagione con 6 gol e 13 assist diventando il miglior assist-man del campionato insieme a Jari Vandeputte della Cremonese.
Ritorno in Serie A (2025-) Ormai riconosciuto quale «simbolo» del Sassuolo in questa fase storica, nel corso della stagione 2025-2026 tocca dapprima il traguardo delle 400 presenze in maglia neroverde, in occasione della gara con il Napoli del 23 agosto 2025, e poi quello del 150º gol per la squadra sassolese, andando a segno nella sconfitta casalinga per 1-2 contro il Genoa del successivo 3 novembre. Con la doppietta segnata all'Hellas Verona il 20 febbraio 2026 nel 3-0 dei neroverdi , trova rispettivamente i gol numero 128 e 129 in Serie A superando in un sol colpo Gianni Rivera (128) e Andry Shevchenko (127) nella classifica marcatori all-time della Serie A.
Per la stagione 2026-2027, dopo la scadenza del contratto di Filippo Romagna, diventa ufficialmente capitano dei neroverdi. Il 29 agosto 2026 ritorna in campo dopo l'infortunio alla caviglia in Sassuolo-Torino, 2ª giornata di Serie A 2026/27 e a 5 minuti dal suo ingresso regala il gol del 2-1 e i primi 3 punti ad Aquilani, trovando il gol numero 131 in Serie A, salendo al 6° posto della classifica marcatori all-time con una sola squadra, scavalcando Pascutti del Bologna.
Nazionale Nazionali giovanili Componente della nazionale Under-19, non risponde alla convocazione alle qualificazioni al campionato europeo di categoria e subisce una squalifica di 9 mesi per violazione del codice etico.
Il 28 febbraio 2014 è convocato da Luigi Di Biagio, CT della nazionale Under-21, per la gara di qualificazione al campionato europeo Under-21 con l' del 5 marzo seguente. Il 2 marzo, in Sassuolo-Parma di campionato, rifila una gomitata a Cristian Molinaro dopo 50 secondi dal suo ingresso in campo e il CT, per rispetto del codice etico della Federazione, ritira la sua convocazione. Esordisce con l'Under-21 il 4 giugno 2014, nell'amichevole Italia- (4-0). Realizza il suo primo gol con l'Under-21 il 5 settembre successivo, nella gara valida per le qualificazioni al campionato europeo Under-21 vinta 3-2 contro la a Pescara.
Viene inserito nella lista dei 23 convocati per il campionato europeo Under-21 2015 in Repubblica Ceca. Il 18 giugno 201 esordisce nel campionato d'Europa nella partita persa per 1-2 contro la , aprendo le marcature su calcio di rigore. Il 24 giugno fornisce un assist per il gol di Andrea Belotti all'; pur vincendo 1-3 l'ultima gara del girone, l'Italia non supera la fase a gironi, piazzandosi al 3º posto dietro a e Svezia.
Titolare anche nel ciclo successivo dell'Under-21, viene convocato per il campionato europeo Under-21 del 2017 in Polonia, nel quale segna il gol del momentaneo pareggio nella seconda partita della fase a gironi, persa 1-3 contro la . Salta per squalifica la semifinale del torneo, nella quale l'Italia viene eliminata dalla .
Nazionale maggiore Il 3 ottobre 2015 viene convocato per la prima volta nella nazionale maggiore dal CT Antonio Conte per le ultime due gare delle qualificazioni al contro e , ma è costretto a lasciare il ritiro per infortunio. Viene poi convocato per lo stage per calciatori emergenti del febbraio 2017, voluto dal CT Gian Piero Ventura. Il 31 maggio 2017 scende in campo con la fascia da capitano nella partita non ufficiale disputata dalla nazionale "sperimentale" contro ad Empoli.