Under the current constitution, the president has been unable to seek re-election because he is over the age of 70 and has already served two terms.
The opposition say turnout was low and the vote should be annulled.
However, official results put the turnout in Sunday’s referendum at 72%.
More than 1.2 million people voted in favour of the change – 92.3% of voters – while nearly 102,000 rejected it, the electoral commission said.
The opposition called for a boycott of the poll and one of its leaders described the official results as a “fraud”.
“From what we could see on the day of the vote, the announcement that turnout was more than 72% is extremely scandalous,” Clement Mierassa told the AFP news agency.
President Sassou Nguesso, 71, is one of Africa’s longest-serving rulers, first coming to power in 1979 and ruling until 1992 when he lost elections. He returned as president in 1997 after a brief civil war and has since won two elections.
He is now coming to the end of his second seven-year term.
Tens of thousands of people took part in a peaceful demonstration against the referendum in September.
Four people died last week, when security forces dispersed angry protesters in the capital, Brazzaville, and the economic hub of Pointe-Noire.
The election is due to take place in 2016.