The highly-rated left-back moves to Upton Park on a five-year contract for an undisclosed fee.
Liverpool-born Cresswell began his career with Tranmere Rovers as a schoolboy and made his debut at 18 in 2008.
The 24-year-old moved to Portman Road in 2011 for a fee of just over £200,000 and made 138 appearances in three seasons for Town, earning the Player of the Year award in his first season.
“He’s been fantastic for us and we wish him well,” Town manager Mick McCarthy told the club’s website.
“It is the right time for Cressy to move on though and test himself in the Premier League.
“There comes a time when a deal has to be done. That has to be fair for everyone though. It needs to be the right deal for the Club and the player and if it is the right deal for Cressy then he was always going to want to move on.
“He served his apprenticeship at Tranmere and then extended that here and became one of the best players in the Championship.”
Cresswell, who will travel to France to join the West Ham squad for pre-season training, is likely to return to Portman Road when West Ham visit for a friendly on July 16.