The migrant, who police did not name, was walking home in Wismar, a town on the Baltic Sea, when the attackers stopped him and began insulting him in German using xenophobic language. Two then punched him in the face and the third hit his shoulder and ribs with an iron chain, police said.
They then kicked him on the ground. The migrant suffered a broken nose and bruising to the face and upper body. Police, who gave no details about the victim's ethnicity, appealed for witnesses to come forward.
The incident occurred days after the violent protests in the eastern city of Chemnitz that were triggered by the fatal stabbing of a German man there. An Iraqi and a Syrian have been arrested in connection with that crime.
The Chemnitz stabbing and subsequent protests have exposed deep divisions in German society over Chancellor Angela Merkel's 2015 decision to open the door to more than one million migrants, mostly Muslims fleeing conflicts in the Middle East.
Both Chemnitz and Wismar are in the formerly Communist eastern part of Germany, where anti-immigrant pressure groups including PEGIDA and the Alternative for Germany (AfD) political party have their heartlands.
More about: Germany