The 25-year-old striker, who joined the Scottish champions in August 2010 and has gone on to score 36 league goals for the Bhoys, will remain at Parkhead until 2016
The Celtic Park outfit brought Stokes to the club for a reported fee of £1.3 million from fellow Scottish Premiership side Hibernian in August 2010.
Stokes was reportedly considering his options after talks on a new deal reached an impasse earlier in October, but the two parties have reached an agreement and Stokes will remain at the club until at least 2016.
The 25-year-old has enjoyed a trophy-laden spell at the Glasgow outfit, winning two league titles and the Scottish Cup twice.
Stokes has been under extra pressure to score goals for Celtic this term after the exit of Gary Hooper to Premier League side Norwich City, and he has responded with five goals in eight league matches this season.
The Republic of Ireland international had spells at Arsenal, Sunderland and Sheffield United earlier in his career.