Athletic Bilbao welcomed Celta Vigo to San Mames on Monday looking to make it nine points from a possible 12 in La Liga.
Celta took the lead after 14 minutes courtesy of a cool finish from Charles, but Mikel San Jose levelled for Bilbao four minutes later.
Charles had a chance to score his second from the spot moments before the 30-minute mark, but he fired his penalty high and wide of the crossbar.
Bilbao completed the turnaround in the second period, however, when Andoni Iraola found the bottom corner from inside the box, before Benat made it three 20 minutes from time.
Santi Mina had one back for Celta in the latter stages, but it was a case of too little too late as Bilbao held on for all three points.
Read how it all unfolded in Sports Mole's minute-by-minute live commentary of the action below.
BILBAO: Iago; Iraola, San Jose, Laporte, Gurpegi; Susaeta, Benat, Herrera, Moran; Aduriz, Muniain
CELTA: Yoel; Mallo, Fontas, Costas, Oubina; Fernandez, Toni, Lopez, Rafinha; Nolito, Charles