My friend and I are looking for an inexpensive hotel in St. Moritz for the night before taking the Glacier Express. This town is super expensive. I could follow Rick's suggestion about staying in an out-lying town, but we have an early train and don't want to be too fr away. Suggestions appreciated.
You might look at staying in Samedan. Hotels are a little more reasonable there, and the Glacier Express stops there shortly after it departs St Moritz, so you can board there.
Samedan is 7-9 minutes away from St. Moritz. It looks like there are numerous options in the morning. We stayed in Samedan at Laagers Garni and liked it a lot.
Pontresina is beautiful small town, very near St-Moritz with a dedicated train shuttle connecting them. Much nicer than concrete building filled St-Moritz.
Look at Hotel La Collina in Pontresina.
The trouble with Pontresina is that if you are on the early 7:02 Glacier Express, there is not a connection early enough. If on the 9:15 or 10:19, then it works.
In St Moritz u could stay at the hostel.
They have pvt rooms, and while I normally stay in Pontresina , i have stayed at many hostels in Switzerland. They have been very clean, well run, with gd breakfasts for a gd rate.
Asking for a cheap hotel in St Moritz is like asking for ice water in Hell.