Kranjcar, 30, represented QPR 31 times in the Championship last season, helping the Loftus Road outfit back into the Premier League.
The Croatia international, who has worked under Harry Redknapp previously at Portsmouth and Tottenham, said QPR was a club close to his heart after signing up for another campaign on Monday's deadline day.
"It's a great feeling to be back, it feels like home. I felt a special emotion with the club and the fans," Kranjcar said in a press release.
"The fans were phenomenal last season. I had a great relationship with them and hopefully it's only going to get better.
"I really feel happy here, at a club where I really want to play, and I play with all my heart. I can't wait for my season to start with QPR.
"I believe I still have something to prove, for myself and for all the fans.
"The Premier League is a lot more physical than it was in the past but I'm looking forward to it.
"I have no doubt this club is going to be in the Premier League for a long time."
It will be Kranjcar's first season back in the English top flight since playing with Spurs in 2011-12.
Manager Redknapp said he believes Kranjcar will benefit from more support in midfield, with the Zagreb-born man only scoring two league goals last season.
"Niko is a class player. I'm a huge, huge fan of his and really pleased to have him back here," Redknapp said.
"He showed QPR fans last season what he can do and I actually believe he will be even better this year for us in the Premier League.
"He will have better players around him now, and the better players he plays with, the better player he is himself.
"Niko's a real talent, and I am really pleased with the business we have done throughout the summer window.
"Getting Niko and Sandro in tonight is the icing on the cake for us."
Brazilian Sandro joined QPR from London rivals Tottenham.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.