Baden-Baden would be a big detour. Sticking closer to your intended Heidelberg-Rothenburg route, you might look into Bad Mergentheim and the Solymar Therme, which gets 4.5 stars on Tripadvisor after 29 reviews (reviews are mostly in German but include a couple in English) -
https://www.tripadvisor.com/Attraction_Review-g198542-d7728488-Reviews-Solymar_Therme-Bad_Mergentheim_Baden_Wurttemberg.html
I don't know the Friedrichsbad or the Solymar and have no personal opinion on whether this one is "just as good."
Like Rothenburg, Bad Mergentheim is a town on the Romantic Road, and it's so close to R'burg that you could do your spa time either on the way or as a day trip from R'burg. 2 birds, 1 stone...
http://www.romanticroadgermany.com/bad-mergentheim.php
"Also if you were to pick either Heidelberg or Rothenburg ODT to spend two nights which would it be?"
Heidelberg is bigger and probably takes more time.
But I would probably skip both in favor of the more interesting (IME) city of Wuerzburg, north of Bad Mergentheim on the Romantic Road. H'berg's palace is a set of ruins, Wuerzburg's quite intact and with a [UNESCO World Heritage set of credentials.][1] Wuerzburg has a fetching river setting as well - and [Marienberg Fortress][2], and a nice old town zone.
Wuerzburg sights: http://www.wuerzburg.de/en/visitors/must-sees/index.html
Wuerzburg is within spitting distance of the Main River wine villages of Ochsenfurt and [Marktbreit,][3] and also of [Iphofen.][4] In fact, if you stayed the whole time in Wuerzburg, where there's more to see and do in the evenings than in the small towns at that time of year, you could easily day trip to all these places and to Rothenburg and Bad Mergentheim as well.
Nice restaurants and wine bars in W'burg too: https://www.tripadvisor.com/Restaurant_Review-g187321-d1344305-Reviews-Restaurant_Weinhaus_Stachel-Wurzburg_Lower_Franconia_Franconia_Bavaria.html