You've checked in. You're tired. The Wi-Fi has Marriott in the name. Gmail spins forever, WhatsApp is grey, your ExpressVPN connects for ten seconds and dies. There are specific technical reasons hotel Wi-Fi in China is harder than airport Wi-Fi or apartment Wi-Fi. Most of them have one fix.
Three layers of filtering stack up here that aren't all present elsewhere.
Most foreign-brand hotels in mainland China configure their guest Wi-Fi to block UDP traffic, or to throttle it so heavily that VPN handshakes time out. UDP is what WireGuard, NordLynx, and ExpressVPN's Lightway use by default for performance. The block is usually about preventing guests from saturating the network with peer-to-peer streaming, but VPNs are collateral damage. IT CRP runs over TCP, which the hotel can't tell apart from someone loading a regular website.
You connect to "Marriott_Guest" or "Pullman_Wi-Fi". Your phone says it's connected. You open Gmail and nothing happens. That's because hotel Wi-Fi forces you through a login page first — usually asking for your room number and last name, sometimes a Chinese phone number. Until you complete that form in a browser, no traffic actually leaves the network. VPN clients that auto-connect on Wi-Fi join sometimes start trying to connect before you've completed the captive portal, fail silently, and never retry properly. The fix is to disable auto-connect, log into the hotel portal first, then start your VPN.
Foreign-brand chains often have nicer Wi-Fi hardware and more bandwidth than budget hotels, but the upstream is still a Chinese ISP — usually China Telecom or China Unicom, depending on the city. The Great Firewall sits between the hotel and the international internet. The hotel's brand doesn't bypass that. Bulgari, Aman, and Park Hyatt have the same upstream as the local Atour or Jin Jiang.
Hotel Wi-Fi has its own peak hour problem layered on top of the national 7–11 PM peak. Everyone's checked in, everyone's in their rooms, half of them are on Netflix or work calls home. Bandwidth gets crunched and the filter has more reason to inspect connections. This is why VPNs that "worked at lunch" die at dinner. Our routes are tuned for that window — we don't promise miracles on a 1 Mbps shared connection, but the connection itself stays up.
If you only discover your VPN is broken after you've checked in, the standard advice ("download a VPN before you fly") is useless. ExpressVPN.com is blocked. Astrill.com is blocked. NordVPN.com is blocked. The IT CRP website, dashboard, and checkout all load from Chinese hotel Wi-Fi. You can pay $9 from bed at 11 PM and have a working subscription URL by the time you've brushed your teeth.
Real workloads from a hotel room — work calls home, late-night browsing, the occasional movie.
| Scenario | Without a working VPN | On IT CRP |
|---|---|---|
| Gmail · Outlook · Slack | Times out, disconnects mid-thread | Loads instantly, holds through evening |
| 9 PM Zoom call to home office | Drops at 9–10 minutes consistently | Stays connected for the full call |
| WhatsApp video to family | Voice degraded, video frozen | Real-time, both directions |
| Netflix in bed | Doesn't load | Loads at hotel Wi-Fi bandwidth (subject to your room's speed) |
| Banking · Revolut · Wise | Login times out | Loads as if you were home |
| Old VPN with auto-connect | Fights with the captive portal | Manual connect after portal — clean |
Order matters. The captive portal goes first, then the VPN.
Open a browser, the captive portal appears, enter your room number / last name / whatever the hotel asks for. Don't start any VPN yet.
The website loads — you've already proved it can. Click Sign up, email and password, no card needed. Your 1 GB Happ key arrives by email under 30 seconds. Upgrade to Solo at $9/mo only after you've confirmed it works on this hotel's Wi-Fi.
Recommended client. Available in App Store on international Apple ID, Google Play Store, macOS, and Windows. The right route auto-selects.
So future hotels don't fight their captive portals. You'll connect to Wi-Fi, complete the portal, then tap Connect in Happ. 5 seconds extra, no more failed handshakes.