McCann, a 23-year-old in just his second full season in the major leagues, could earn as much as $29.8 million if all incentives in the deal are met, his agent said. The deal runs through the 2012 season and there is an option for 2013.
McCann led the Braves in hitting last year and established himself as one of the game's best catchers and was selected for the National League All-Star team.
He hit .333 and added 24 home runs and 93 RBI in 130 games. Over 189 games in the major leagues -- 130 last season -- he has a batting average of .317 with 29 home runs and 116 runs batted in.
"We are delighted to have reached this agreement with Brian McCann," said Braves Executive Vice President and General Manager John Schuerholz. "This is a significant and meaningful development for the Atlanta Braves. It demonstrates the extremely high regard we have for Brian's ability, character and leadership."