The attacker has committed his future to the club until 2021, with the club having an option to add another year to the deal.
The 30-year-old has been an integral part of the team this season.
Barnes has four goals in 10 games in the Premier League this term, playing as a centre-forward.
"We want to safeguard the club as best we can and that is another step in the right direction when we sign good players and players that historically have been good for us and continue to be good for us," Burnley boss Sean Dyche said of the contract renewal.
"It is a good sign for the club to continue keeping these players here."
Need a VPN? Or seeking to switch? Then support Tribal Football by clicking here to sign up with our official partners NordVPN. Not only will you receive the best VPN experience, but also great discounts by signing up via Tribal Football. Thanks for your support!