The former Germany U21 international has signed a three-year deal at Loftus Road and joins for an undisclosed fee.
Rangers, who were relegated as the Premier League’s bottom club last season, have been hunting for a new forward after the release of Bobby Zamora and the return of loanee Mauro Zarate to parent clubs West Ham.
Polter, 24, joined Mainz two years ago but made just 13 Bundesliga appearances for the club and never scored a league goal.
He featured more regularly on loan at German second-tier outfit Union Berlin last season after falling out of favour at Mainz and spending time in their second string team Mainz II.
Polter was on Werder Bremen’s books as a youngster and has played 12 times for their senior side, scoring twice.
He becomes their seventh signing of the transfer window so far after Rangers brought in Jamie Mackie, Jay Emmanuel-Thomas, Swindon pair Massimo Luongo and Ben Gladwin, as well as France youth international Axel Prohouly and former Stevenage forward Joseph N’Guessan.
Alejandro Faurlin and youngster Michael Harriman have both signed new contracts at the West London club.