The 30-share barometer had opened lower and fell to a low of 31,551.85 points as investors adopted a cautious approach ahead of the GDP data for the June quarter to be released later in the day.
Covering up of pending short positions by speculators on the expiry of the August derivatives contracts helped the index recover in the last hour of trade, brokers said.
The Sensex finally settled higher by 84.03 points, or 0.27 per cent, at 31,730.49. Intra-day, it hit a high of 31,757.18. The gauge had rallied 258.07 points in the previous trading sessions
Gains were led by realty, power, oil&gas, consumer durables and capital goods stocks.
In the Sensex kitty, Wipro topped the gainers list by surging 2.54 per cent followed by Bajaj Auto which rose 2.24 per cent.
Meanwhile, DIIs bought shares worth Rs 15,695.51 crore, while foreign portfolio investors sold shares of Rs 16,073.21 crore on the domestic bourses as on August 30.