West Ham had two previous bids rejected for the 28-year-old, but Stoke have decided to cash in after the Austrian expressed a desire to leave the Midlands club.
Arnautovic only signed a new four-year deal at Stoke 12 months ago, but handed in a transfer request last week to force through a move.
He joined the Potters four years ago from German side Werder Bremen for just £2 million ($2.6 million, 2.3 million euros), and has become an integral part of their side, scoring 26 goals in over 100 appearances.
Arnautovic is poised to become Hammers boss Slaven Bilic’s third summer signing following the captures of Pablo Zabaleta and Joe Hart.
Download our app and read this and other great stories on the move. Available for Android and iOS.