After days of protests against rising public transport costs in Brazil, political leaders have agreed to reverse the hike in Rio de Janeiro and Sao Paulo.
Some of the worst of the latest clashes took place in the north-eastern city of Fortaleza.
Police there fired tear gas and rubber-coated bullets at demonstrators ahead of a Confederations Cup football game.
Al Jazeera's Gabriel Elizondo reports from Sao Paulo, where earlier, protesters blocked major highways and streets.