I Measured 30 Hotel Websites in St. Moritz

St. Moritz sells altitude and glamour. I wanted to see whether the websites behind that image actually load as fast as the marketing promises.

St. Moritz is Switzerland’s most famous alpine resort town, and I wanted to see whether its hotel websites hold up to the reputation. I measured 30 qualifying hotels using the same process I use across every city in this series (full methodology and metric definitions are here: methodology and metrics glossary). Data was pulled on July 18, 2026.

Key findings

  • Every one of the 30 qualifying hotels runs some kind of online booking system. Not a single one falls back on a plain contact form, a genuinely strong showing for a market this size.
  • Structured data is the clear gap: 13 of 30 hotels have none at all, and only one site reaches a “good” grade.
  • Photography is where St. Moritz shines. 16 of 30 hotels earn a “very good” from me, more than half the list.
  • Core Web Vitals tell a rougher story. Only 9 of 30 pass, and 12 don’t have enough real-user traffic to be measured at all.
  • Reputation and speed don’t always travel together. Badrutt’s Palace, the most famous name on this list, posts the lowest mobile PageSpeed score in the group (36) and fails Core Web Vitals.

How St. Moritz hotels are rated

Ratings sit high across the board here, but the three platforms don’t fully agree on how high.

  • Google: mean 4.50, range 4.0 to 5.0, total reviews 18,024
  • Tripadvisor: mean 4.28, range 3.2 to 5.0, total reviews 11,351
  • Booking.com: mean 8.74, range 7.0 to 9.6, total reviews 23,528

Tripadvisor is consistently the harshest of the three, and Booking.com carries by far the most review volume, which tracks with how many of these stays actually get booked.

The platforms

WordPress dominates, but nearly a third of the list runs on something I couldn’t identify from the outside, which usually means a custom or agency-built site. That undetected group leans heavily toward the luxury end: Kulm, Suvretta House and Badrutt’s Palace all fall into it.

  1. WordPress: 18 hotels (60%)
  2. Undetected: 9 hotels (30%)
  3. Typo3: 2 hotels (7%)
  4. Contao: 1 hotel (3%)

Performance and Core Web Vitals

Mobile is where guests actually book, so it’s the number that matters most. The average PageSpeed score across the 30 sites is 57.9, with a median of 60.5. Nobody in this group reaches the 90+ “good” bracket. 4 hotels (13%) fall into poor territory under 50, and the remaining 26 (87%) sit in the needs-work middle.

Core Web Vitals split three ways: 9 hotels (30%) pass, 9 (30%) fail, and 12 (40%) don’t have enough real-user data for Google to score them. That last group isn’t a failure on the hotel’s part, it just means traffic is too low for Chrome to report a verdict, so treat it as a blind spot rather than a red flag.

Desktop tells a friendlier story, as it usually does. Average score is 76.7, median 81.5, and 10 hotels (33%) reach the good 90+ bracket. Worth having, but almost nobody is browsing hotels on a desktop from the slopes, so I’d weight mobile heavier when deciding what to fix first.

Photography

  • Very good: 16
  • Good: 11
  • Normal: 3

Two hotels stood out to me here. Kulm Hotel and Suvretta House Hotel both put together galleries that actually show what a stay feels like, room types, views, the whole picture. This grade is my subjective call as a photographer as much as a technical one, and it judges how the photos are used as much as how good they are (full criteria are in my methodology). When more than half the list earns “very good,” that’s a genuinely strong showing for a destination this size.

Booking systems

This is the strongest category in the whole audit. Every single qualifying hotel, 30 of 30, runs some kind of booking system beyond a plain form. Nobody makes a guest email in to check availability.

  • SimpleBooking: 8 hotels
  • SynXis: 6 hotels
  • HotelPartner: 4 hotels
  • Hotel-Spider: 3 hotels
  • Generic booking engine (unspecified vendor): 3 hotels
  • VerticalBooking: 1 hotel
  • BookOnlineNow: 1 hotel
  • Protel: 1 hotel
  • Seekda: 1 hotel
  • Kross Booking: 1 hotel
  • SIHOT: 1 hotel

Structured data

This is the one place I’d tell every hotel on this list to spend an afternoon. 13 of 30 hotels (43%) carry no structured data at all, and only 1 reaches a “good” grade.

  • Good: 1
  • Limited: 14
  • Minimal: 2
  • None: 13

I want to be straight about what this actually does. Adding JSON-LD schema doesn’t hand you rich results or a ranking boost on its own, there isn’t strong evidence for that. What it does is make it easier for machines, search engines and increasingly AI assistants and answer engines, to understand what a page is actually saying. It’s low-effort technical hygiene, and it matters more, not less, as more bookings start with someone asking an AI where to stay rather than typing into Google. If I had to pick one item on this list that’s pure upside with almost no downside, this is it.

What the ratings reveal

Every hotel on this list has a Google rating between 4.0 and 5.0. Reputation in St. Moritz is uniformly strong, which isn’t a surprise given the market. But a strong reputation does not always match a technically strong or fast website.

Badrutt’s Palace carries a 4.7 on Google alongside the lowest mobile score in the whole group, 36. Hauser rates 4.5 with 2,040 Google reviews, the most of any hotel here, and still fails Core Web Vitals.

Guests keep coming back and keep leaving good reviews regardless of what happens on the technical side.

Who does it best

Villa Beaulieu St. Moritz Homepage

Villa Beaulieu takes my top spot. It’s fast, clean, and feels complete in a way a lot of bigger sites on this list don’t manage. The one thing worth a look is color contrast in a few spots, small fix, real payoff.

Hotel Reine Victoria St. Moritz Homepage

Hotel Reine Victoria earns the second spot for the overall feel of the site. Big, confident type on the headings paired with smaller body copy gives it a calm, considered rhythm. What I’d tighten is readability: the text currently runs the full 1140px width of the page, and the main menu sits at 12px, both worth revisiting against modern accessibility standards.

Crystal Hotel St. Moritz Homepage

Crystal Hotel makes the list for being simply clean. Nothing fights for attention, and the site gets out of the way and lets the hotel speak for itself.

Hotel Grace La Margna St. Moritz Homepage

Hotel Grace La Margna rounds out my picks. Clean and informative, it does the basics well and does them consistently across the site.

A cautionary example

One hotel further down this list has a website that currently reads as unfinished: a partially boxed layout, side navigation that adds friction instead of removing it, and calls to action that don’t stand out enough to notice. It’s not a technical failure, its underlying performance is about average for this group. It’s a design and hierarchy problem, and worth a fresh look. I’m keeping this one anonymous since the note is a design opinion rather than a hard measurement.

The full list, hotel by hotel

The order below follows Google rating, highest to lowest, with review count as the tiebreaker. It’s not a verdict on the website itself, reputation and web quality don’t always line up, as I covered above. Star class is the official rating; every metric is defined in the glossary.

1. Villa Beaulieu (n/a)

Ratings: Google 5.0 (11) · Booking 9.5 (6)

  • Platform: Undetected
  • Core Web Vitals: No data
  • Booking: Kross Booking
  • Structured data: Minimal

2. The View Penthouses (n/a)

Ratings: Google 5.0 (3) · Booking 7.0 (2)

  • Platform: WordPress
  • Core Web Vitals: No data
  • Booking: HotelPartner
  • Structured data: Limited

3. Hotel Grace La Margna (5-star)

Ratings: Google 4.8 (421) · Tripadvisor 4.5 (63) · Booking 9.6 (469)

  • Platform: Undetected
  • Core Web Vitals: Pass
  • Booking: HotelPartner
  • Structured data: Limited

4. Badrutt’s Palace Hotel (5-star)

Ratings: Google 4.7 (1,345) · Tripadvisor 4.8 (1,128) · Booking 9.1 (117)

  • Platform: Undetected
  • Core Web Vitals: Fail
  • Booking: Generic booking engine
  • Structured data: None

5. Kulm Hotel (5-star)

Ratings: Google 4.7 (890) · Tripadvisor 4.8 (1,165) · Booking 9.3 (112)

  • Platform: Undetected
  • Core Web Vitals: Pass
  • Booking: SynXis
  • Structured data: None

6. Suvretta House Hotel (5-star)

Ratings: Google 4.7 (639) · Tripadvisor 4.8 (594) · Booking 9.3 (214)

  • Platform: Undetected
  • Core Web Vitals: Pass
  • Booking: SynXis
  • Structured data: None

7. Hotel San Gian (4-star)

Ratings: Google 4.7 (617) · Tripadvisor 4.6 (808) · Booking 9.0 (753)

  • Platform: WordPress
  • Core Web Vitals: No data
  • Booking: SimpleBooking
  • Structured data: None

8. Art Boutique Hotel Monopol (4-star)

Ratings: Google 4.7 (370) · Tripadvisor 4.6 (538) · Booking 8.8 (259)

  • Platform: Typo3
  • Core Web Vitals: Pass
  • Booking: SynXis
  • Structured data: None

9. B&B River Inn (B&B)

Ratings: Google 4.7 (137) · Tripadvisor 4.7 (24) · Booking 9.0 (811)

  • Platform: Contao
  • Core Web Vitals: No data
  • Booking: Hotel-Spider
  • Structured data: None

10. Hotel Chesa Spuondas (n/a)

Ratings: Google 4.7 (128) · Tripadvisor 4.3 (51) · Booking 9.0 (586)

  • Platform: WordPress
  • Core Web Vitals: No data
  • Booking: Generic booking engine
  • Structured data: Minimal

11. Hotel Waldhaus am See (3-star)

Ratings: Google 4.6 (1,123) · Tripadvisor 4.3 (570) · Booking 8.8 (2,019)

  • Platform: WordPress
  • Core Web Vitals: Fail
  • Booking: SimpleBooking
  • Structured data: None

12. Hotel Cervus (3-star)

Ratings: Google 4.6 (147) · Tripadvisor 3.9 (79) · Booking 8.9 (185)

  • Platform: Undetected
  • Core Web Vitals: No data
  • Booking: Seekda
  • Structured data: Limited

13. Randolins Familienresort (3-star)

Ratings: Google 4.6 (120) · Tripadvisor 4.7 (73) · Booking 9.2 (160)

  • Platform: Undetected
  • Core Web Vitals: Pass
  • Booking: SimpleBooking
  • Structured data: Limited

14. Hotel Hauser (3-star)

Ratings: Google 4.5 (2,040) · Tripadvisor 4.5 (1,044) · Booking 8.9 (1,023)

  • Platform: WordPress
  • Core Web Vitals: Fail
  • Booking: VerticalBooking
  • Structured data: Limited

15. Berghotel Randolins (3-star)

Ratings: Google 4.5 (512) · Tripadvisor 5.0 (2) · Booking 8.8 (577)

  • Platform: Undetected
  • Core Web Vitals: No data
  • Booking: SimpleBooking
  • Structured data: Limited

16. Hotel Soldanella (3-star)

Ratings: Google 4.5 (457) · Tripadvisor 4.2 (319) · Booking 8.8 (2,004)

  • Platform: WordPress
  • Core Web Vitals: No data
  • Booking: SimpleBooking
  • Structured data: Limited

17. Crystal Hotel (4-star)

Ratings: Google 4.5 (452) · Tripadvisor 4.4 (506) · Booking 8.9 (622)

  • Platform: Undetected
  • Core Web Vitals: Pass
  • Booking: SynXis
  • Structured data: None

18. Hotel Sonne (3-star)

Ratings: Google 4.4 (1,225) · Tripadvisor 4.4 (392) · Booking 8.9 (213)

  • Platform: Typo3
  • Core Web Vitals: Pass
  • Booking: Protel
  • Structured data: None

19. Hotel Reine Victoria (4-star)

Ratings: Google 4.4 (971) · Tripadvisor 4.1 (377) · Booking 8.5 (1,216)

  • Platform: WordPress
  • Core Web Vitals: Fail
  • Booking: Generic booking engine
  • Structured data: Limited

20. Hotel Schweizerhof (4-star)

Ratings: Google 4.4 (761) · Tripadvisor 4.4 (586) · Booking 8.8 (775)

  • Platform: WordPress
  • Core Web Vitals: Fail
  • Booking: SimpleBooking
  • Structured data: Limited

21. Hotel Chesa Languard (n/a)

Ratings: Google 4.4 (293) · Tripadvisor 4.2 (206) · Booking 8.7 (2,414)

  • Platform: WordPress
  • Core Web Vitals: No data
  • Booking: BookOnlineNow
  • Structured data: None

22. Hotel Bären (3-star)

Ratings: Google 4.4 (268) · Tripadvisor 3.8 (160) · Booking 8.4 (653)

  • Platform: WordPress
  • Core Web Vitals: Fail
  • Booking: SIHOT
  • Structured data: Good

23. Hotel Laudinella (4-star)

Ratings: Google 4.3 (1,867) · Tripadvisor 4.0 (912) · Booking 8.4 (970)

  • Platform: WordPress
  • Core Web Vitals: Pass
  • Booking: HotelPartner
  • Structured data: Limited

24. Hotel Steffani (4-star)

Ratings: Google 4.3 (1,086) · Tripadvisor 3.2 (14) · Booking 8.9 (744)

  • Platform: WordPress
  • Core Web Vitals: Fail
  • Booking: SynXis
  • Structured data: None

25. Hotel Nolda (3-star)

Ratings: Google 4.3 (361) · Tripadvisor 4.4 (671) · Booking 8.5 (1,310)

  • Platform: WordPress
  • Core Web Vitals: Fail
  • Booking: SimpleBooking
  • Structured data: Limited

26. Hotel Corvatsch (3-star)

Ratings: Google 4.3 (278) · Tripadvisor 4.1 (76) · Booking 8.0 (345)

  • Platform: WordPress
  • Core Web Vitals: No data
  • Booking: HotelPartner
  • Structured data: Limited

27. Hotel Arte (3-star)

Ratings: Google 4.2 (337) · Tripadvisor 4.2 (313) · Booking 8.5 (1,241)

  • Platform: WordPress
  • Core Web Vitals: Fail
  • Booking: SimpleBooking
  • Structured data: None

28. Hotel Piz (3-star)

Ratings: Google 4.1 (730) · Tripadvisor 3.9 (323) · Booking 8.1 (2,505)

  • Platform: WordPress
  • Core Web Vitals: No data
  • Booking: Hotel-Spider
  • Structured data: Limited

29. Hotel Stille (n/a)

Ratings: Google 4.1 (183) · Tripadvisor 3.2 (92) · Booking 9.0 (697)

  • Platform: WordPress
  • Core Web Vitals: No data
  • Booking: Hotel-Spider
  • Structured data: None

30. Hotel Europa (4-star)

Ratings: Google 4.0 (252) · Tripadvisor 3.7 (265) · Booking 7.6 (526)

  • Platform: WordPress
  • Core Web Vitals: Pass
  • Booking: SynXis
  • Structured data: Limited

The one fix for St. Moritz

Almost nine in ten sites in this group sit in PageSpeed’s needs-work zone on mobile, and none reach the good bracket. St. Moritz is the kind of destination people research and plan for well in advance, often across several sessions and devices before they commit, so a slow site doesn’t cost a snap decision the way it might elsewhere. It still adds friction at exactly the moments that matter: comparing room types, checking dates during a sold-out period, or coming back a second or third time before booking.

Structured data is worth pairing with that fix. It’s a low-effort item, it won’t hand you rich results or a ranking jump on its own, but it makes your pages easier for machines to read, and that matters more as more research starts with an AI assistant rather than a search box.

If you want a second pair of eyes on where your site stands, or on how your photography is presented, get in touch: let’s talk.

Leave a Reply

Your email address will not be published. Required fields are marked *