I have been before and getting ready to go again. It is very expensive to stay in Moab. If you are visiting the Needles area of Canyonlands, you can get there in under an hour from the town of Monticello, which is smaller and cheaper than Moab, though the accommodations tend to be more plain. The drive from Moab to Needles is about 1 hour 20 minutes, so Monticello is closer as well as more affordable. Moab is closer to the Island in the Sky area of Canyonlands, and to Arches. If money is not a limiting factor, staying in Moab would be more convenient for these two areas. On one trip though, I stayed in the town of Green River about an hour to the north, also much more affordable than Moab. Depends on whether the extra drive time is worth it to you for the lower cost of lodging.
Capital Reef and Grand Staircase Escalante National Monument are both very large areas. I have driven through Capital Reef, and it seemed like more of an area to drive through than an area to stay. Maybe others have a different take on that. There are a few towns within the Escalante National Monument area, including Kanab, Escalante, etc. Kanab has a lot more options for places to stay than the other towns, which are smaller. Escalante National Monument is so large, that you aren't likely to see much of it in just one trip. Also, you can see a small portion of it from the paved roads, but you would need a 4WD vehicle to get to most of the areas. If you don't have one, there are a lot of tour companies offering daytime or overnight tours. Most of these companies are based in Kanab, but a few are scattered through the smaller towns.
What month are you going?