St Louis Hotels

Find the best St Louis hotel for your dates, by price or preference

Compare hotel deals across hundreds of providers, all in one place

Look out for St Louis hotels with free cancellation or excellent ratings

Trusted St Louis hotel providers

See all hotels in St Louis

View more hotels
Prices may change – pop in your dates for the best estimate. Note that prices are based on previous traveller searches and partner prices.
Prices may change – pop in your dates for the best estimate. Note that prices are based on previous traveller searches and partner prices.
All taxes and fees included
View more hotels

Find a St Louis hotel in the heart of the action

Beat the queues at the top St Louis attractions by staying close to them.

Fast facts

Sleep easy, armed with the stuff that's good to know before you go.
Highest rated hotelBreese Inn – 5.0
Cheapest month to bookDecember
Average 4 star hotel price$304 per night
Average 5 star hotel price$798 per night

Your guide to finding the best hotels in St Louis, Missouri

Make the most of your time in St Louis by staying at a hotel that fits your needs. We’ve picked some of the city’s best hotels, from luxurious to modest.

Best time to visit St Louis

St Louis is an interesting place to visit, but while planning your vacation, be sure to consider what you're looking for (or hoping to avoid) when it comes to things like weather and price.

Low and high season in St Louis

Busiest month(s): October sees the most visitors to St Louis, causing the average price per night to rise to $422. Keep in mind that prices tend to be higher compared to the less busy seasons when average nightly rates decrease to $260.

Quietest month(s): The cheapest time of year to book is September, when the average cost per night is $260, which will save you more money than the busy times of the year.

The most expensive month to stay in St Louis is October, when you should be prepared to spend an average of $422 on hotels. Throughout the year, weekend rates average around $281 per night, and peak on Friday. On weekdays, you’ll spend on average $286 for a night’s stay, while Sunday is typically the cheapest day of the week to reserve a room.

Where to stay in St Louis, Missouri

With Skyscanner, it's easy to find the best St Louis hotels at a price you want.

Things to do in St Louis

In the city center, enjoy well-known attractions and things to do like Campbell House Museum and the Central Public Library. Food lovers will find authentic local cuisine, creative twists on classics, and flavors from around the world at spots like Sugarfire Smoke House, Bogart's Smokehouse, Broadway Oyster Bar, Pappy's Smokehouse, and Ted Drewes Frozen Custard.

Finding cheap hotels in St Louis: FAQs

In St Louis, the expected average temperature in August is 25°C. The warmest month is typically July, which averages 31°C. The coolest month is January, with temperatures averaging -6°C. The rainiest month is May, and the driest month is January.
You can always cancel or amend your hotel reservation if you need to, but look out for hotels in St Louis with free cancellation or flexible booking options if you want to protect your money. Some hotels allow you to cancel and get your money back if your plans change.
Of course - the cheapest hotel deal we found within the next seven days is $93 per night. If you need somewhere in the next 24 hours, we've found you somewhere to stay for $93 per night.
The average price of a hotel during the week is $279 per night, and the average price on weekends is $292. Overall, it looks like the cheapest day to stay in St Louis could be Sunday.
The nearest airport to St Louis is St Louis Airport (STL), which is 19.6km from the city centre.

Other airports include:

Belleville Airport, which is 31.5km from the city centre.
Sparta Community Airport, which is 68.9km from the city centre.
We crunched some numbers on our calendar and found that Sunday is the cheapest day to stay in St Louis. And the most expensive day seems to be Saturday
The average price of a 3-star hotel in St Louis is currently around $254 per night. And the cheapest 3-star hotel we found is $100 per night.
The average price of a 4-star hotel in St Louis is currently around $352 per night. And the cheapest 4-star hotel we found is $187 per night.
The average price of a 5-star hotel in St Louis is currently around $823 per night. And the cheapest 5-star hotel we found is $729 per night.
The cheapest month to stay in a hotel in St Louis is April, with an average price of $241 per night. The most expensive month is February, when the average room rate can rise to $512 per night. These average prices are based on all the hotels we found – from hostels through to fancy 5-star hotels.
The average price of a hotel in August is $283 per night, which is around 1% lower than the rest of the year.