The 29-year-old has signed a two-year contract after completing a medical and ends a four-year stint at UAE champions Al Ain.
According to the Daily Mirror, the deal will see him earn ??227,000 per week – a substantial pay increase after earning a weekly salary of ??160,000 in UAE.
The new deal would would make him one of the highest-paid footballers in the world.
The Ghana captain confirmed the news of his arrival in Shanghai, who are coached by former England boss Sven-Goran Eriksson, on his website.
Gyan after signing the contract said: “I thank God for this special day, to my family, former playmates at Al Ain and to my fans.
“I reserve the rest of my comments for the official unveiling next week.”
Gyan was a big hit in the UAE, scoring 95 goals in 83 matches after joining from Sunderland 2011 and he thanked the club via a message on his website.??
“I want to really thank the entire Al Ain club and its fans for the support they have me in my time here,” Gyan said
“At Al Ain, we were able to achieve a lot of things and I tell you this club will remain in my heart forever.
“It is however time to embrace a new challenge and hopefully this new challenge will be as successful or even better than my time here at Al Ain.”
Gyan joins former Premier League players Paulinho, who joined Shanghai Shenhua for ??9.6m, and recent Shanghai Shenhua acquisition Demba Ba in the Chinese top flight.