The rupee recovered from its all-time low, closing 4 paise higher at 88.72 against the US dollar. A weaker dollar overseas and falling global crude prices aided the rebound. However, persistent foreign outflows and weak equity sentiment capped gains, while hopes around India-US trade talks offered some support, forex traders said.