Protesters have clashed with police in Fortaleza in Brazil ahead of a football match between Spain and Italy.
Around 5000 marched, angry that their government is spending billions of euros on hosting the 2013 Confederations Cup and 2014 World Cup instead of improving public services.
Around 90 people were arrested and several demonstrators and police officers injured.
In Rio de Janeiro, thousands marched in a mainly peaceful demonstration.
The protests come despite moves from the government to listen to activists’ demands. They include approving a measure to cut taxes on public transport, voting to give royalties from oil production to education and health programmes, and approving a bill with tougher sentences for corruption.