Kimbrel, 25, avoided salary arbitration. He was the last Braves player eligible for arbitration.
Kimbrel gets a $1 million signing bonus and salaries of $7 million this year, $9 million in 2015, $11 million in 2016 and $13 million in 2017. The Braves have a $13 million option for 2018 with a $1 million buyout.
"We are very excited to agree to terms with Craig, who we feel is the best closer in Major League Baseball," Braves general manager Frank Wren said. "He is one of the key pieces of our pitching staff and we are happy to keep him in a Braves uniform for at least four more years."
Kimbrel's arbitration hearing had been set for Monday. The Braves offered $6.55 million and Kimbrel asked for $9 million.
The Braves have been busy locking up some of their top young players and avoiding arbitration with long-term contracts.
The deal with Kimbrel came only two days after the Braves and right-hander Julio Teheran, 23, agreed to terms on a six-year, $32.4 million contract on Friday. The deal includes a club option for the 2020 season.
Earlier this month, the Braves announced multiyear deals with a pair of 24-year-old hitters — first baseman Freddie Freeman and outfielder Jason Heyward.
Freeman agreed to the biggest contract in Braves history, $135 million for eight years. Heyward's contract is for two years and $13.3 million.
The agreement with Kimbrel allows the Braves to retain one of baseball's most dominant closers. He has 138 saves in the past three seasons, including 50 saves with a 1.21 ERA and 98 strikeouts in 67 innings last year. He earned one save in 2010 as his introduction to his run of three straight All-Star seasons in 2011-13.
Kimbrel has a 1.39 ERA with 381 strikeouts in 227 1-3 career innings. The hard-throwing right-hander has been successful in 139 of 154 career saves opportunities.
Kimbrel, from Huntsville, Ala., said he wanted to remain close to home.
"I'm very excited," Kimbrel told the Atlanta Journal-Constitution. "If I didn't want to be here, this wouldn't be going on. We're playing to win. This is where I want to be."
Kimbrel can add value to his contract through a points system.
He would earn five points each time he's an All-Star, 10 for winning a Cy Young Award, five for finishing second or third in Cy Young, three for finishing fourth or fifth in Cy Young, five for being the top Cy Young voter-getter among pitchers with fewer than five starts; 10 for winning an MVP award, five for finishing second or third in MVP, third for finishing fourth or fifth in MVP, and three for each season with 57 or more games finished.
Kimbrel would be paid $1 million for 20 points and $500,000 for each additional five points through 45.