Substitute Batt controlled a harmless looking long ball from goalkeeper Joe Lewis to stun the home fans by sending a dipping right-foot volley past Phil Smith to earn his side a point.
Swindon edged themselves into a surprise lead when Jon-Paul McGovern's cross was well finished by full-back Jack Smith in the 10th minute.
In-form Peterborough soon drew level in the 20th minute as George Boyd found space on the left-hand side before his teasing cross was deflected into his own net by McGovern.
In the second half Peterborough could have snatched the lead when Aaron MacLean raced clear to round Smith but the angle proved too tight as the Swindon goalkeeper retreated to save.
Swindon thought they had sealed a first victory in five when top scorer Simon Cox claimed his 16th goal of the season nine minutes from time with a close-range finish only for Batt to stun the home crowd.