The market opened on a firm note, but came off higher levels and moved in a tight band right till the end amid lackluster trades.
Lack of fresh triggers and subdued European markets rendered price movements sluggish.
The Sensex ended at 20,003.47 (provisional) with a gain of 12.57 points or 0.06%.
The Nifty closed at 6055.35, up 5.45 points or 0.09%.
Realty stocks rebounded after previous session's losses.
Consumer durables stocks too traded firm.
Select oil, metal, pharma and bank stocks edged higher.
IT stocks mostly traded flat.
Automobile, power and capital goods stocks saw some selling.
Midcap and smallcap stocks were mostly subdued.
The market breadth was slightly weak.