Throwing fish during Sechseläuten is a custom that dates back a century.
Members of the guild, dressed in traditional costumes, parade through the streets of Zurich and aim their fishy missiles at balconies and windows, with the debris raining down on spectators.
The fish used are generally species that are not eaten and are usually used to produce fish meal.
But the Zurich Association for the Protection of Animals officially objected to the custom in an open letter on Wednesday, reports news agency ATS.
The guild should find “an irreproachable ethical replacement” to the tradition, it said.
Treating animals – living or dead – in this manner is “unacceptable, undignified and disrespectful,” said the association.
The group also directed its anger at Zurich authorities for allowing “the throwing of corpses”.
It demanded that communal authorities forbid the practice from 2015.
City police said they would consider the request, said ATS.
Celebrated on the third Monday in April, Sechseläuten marks the arrival of spring.
Members of the city’s 25 guilds parade through the streets wearing costumes and accompanied by musicians.
At 6pm festivalgoers gather at Sechseläutenplatz where a giant snowman called the Böögg is set on fire in a tradition symbolising the end of winter.