Police were still securing the Benfica detention center and feared they could find more bodies, said Raphael Martins, a Rio police spokesman.
The revolt started Saturday and ended Monday night after police gave in to a demand by inmates to separate prisoners belonging to different gangs.
Rio state legislator Geraldo Moreira said he counted 28 bodies before giving up when he entered the prison with police.
"I saw severed heads. I saw body parts thrown on the ground and in the garbage," Moreira told the Jovem Pan radio station. "It turned my stomach and after a while I had to walk out."
A prison guard who had been held hostage was shot dead by inmates Sunday as he tried to escape the prison in the northern Rio district of Leopoldina.
Rescue workers were going from cell to cell in the sprawling facility to try to determine exactly how many inmates had been killed, said Claudia Moraes, a police spokeswoman.
"It could take all day to get a final body count," she said.
Investigators suspect the carnage happened when rival gangs used the rebellion as an opportunity to settle disputes.
The Rio revolt came slightly more than a month after prisoners at an overcrowded prison in the Amazon state of Rondonia killed 14 fellow prisoners.
The Rio prison uprising started early Saturday, when detainees attempting to escape broke through the main gate of the detention center. When police intervened, prisoners attacked officers, grabbed their guns and took 26 guards and prison staffers hostage.
At least 14 of the 900 inmates managed to escape; three were recaptured by police.
Inmates had freed some hostages during the negotiations — two on Saturday, two on Sunday and three on Monday.
But they shot at a 42-year-old prison guard as he tried to escape on Sunday, and he died on the way to the hospital.
Relatives of inmates camped outside the detention center claimed the guard had been killed by police who mistook him for a fleeing prisoner.
Four policemen and five inmates were wounded in an initial shootout on Saturday, officials said. The five injured prisoners were taken to a hospital. None of the injuries were considered life-threatening.
Rebellions and jailbreaks are common in Brazilian prisons, which are often criticized by human rights groups for overcrowding and abuses.
Amnesty International last week issued a report condemning "cruel, inhuman or degrading conditions" in Brazil's prisons and youth detention centers, where 285,000 inmates are held in a system built for 180,000.
"Overcrowding, poor sanitation, limited access to health services, persistent use of torture, riots and prisoner-on-prisoner violence were regularly reported" to human rights authorities in 2003, the report said.
Moreira said the uprisings in Rio and Rondonia are evidence that Brazil's prison system needs a complete overhaul.
"The system, as it is today, is nothing more than a machine to destroy human lives," he said.
On Monday, in Sao Paulo, 250 miles south of Rio de Janeiro, six heavily armed men marched into a detention center and ordered the five guards to release the center's 188 prisoners, police said in a statement.
Police said 145 prisoners escaped, but 43 chose to remain at the center. Police later recaptured 67 of the escapees.
By Harold Olmos