Leclerc, a former Ferrari junior, was promoted from Alfa Romeo Racing (Sauber) after his rookie season in 2018 and this year took his first two Formula 1 race wins.
The 22-year-old Monegasque also achieved seven pole positions (including that due to a grid penalty for Max Verstappen in Mexico) in 2019, the greatest haul in the field.
“I am very happy to be staying on with Scuderia Ferrari,” said Leclerc.
“This past season, driving for the most illustrious team in Formula 1 has been a dream year for me.
“I cannot wait to enjoy an even deeper relationship with the team after what has been an intense and exciting 2019.
“I'm keen to see what the future holds and I can't wait to get going again next season.”
Team Principal Mattia Binotto added, “With each passing race this year, our wish to extend our contract with Charles became ever more self-evident and the decision means he will now be with us for the next five seasons.
“It demonstrates that Charles and the Scuderia have a firm future together.
“Charles has been part of our family since 2016 and we are more than proud of the results we are achieving with our Academy.
“We are therefore very pleased to be able to announce that he will be with us for many years to come and I'm sure that together, we will write many new pages in the history of the Prancing Horse.”
Leclerc finished fourth in this year's drivers' championship, one position and 24 points up on team-mate Sebastian Vettel.