Stuck in Hotel Wi-Fi Captive Portal Loop? Here's the Fix

Network & Connectivity Beginner 👁 57 views 📅 Jun 15, 2026

Captive portal loop happens when your device can't fully load the login page. The fix: force a redirect by visiting a plain HTTP site or disabling captive portal detection.

Quick Answer

Open Safari (or any browser) and visit http://neverssl.com. If that doesn't work, turn off Private Wi-Fi Address (iOS) or Random MAC (Android), then reconnect.

Why the Loop Happens

Hotel Wi-Fi uses a captive portal — that login page that pops up when you connect. The problem is that modern devices try to detect the portal by sending HTTPS requests to a known server (like Apple's captive.apple.com or Google's connectivitycheck.gstatic.com). If that HTTPS request succeeds (maybe because of cached data or a flaky redirect), your device thinks it’s online and won’t show the login page. But you’re not actually online — hence the loop.

I saw this last week at a Marriott in Chicago. Guest’s iPhone kept saying “Connected without internet,” and the portal never popped. They’d been stuck for 20 minutes. Took me 30 seconds to fix.

Fix Steps (Works on Most Devices)

  1. Open your browser and manually type http://neverssl.com — note the http://, not https://. This forces the captive portal to intercept the request and show the login page.
  2. If that doesn’t load, try http://gstatic.com/generate_204 or http://1.1.1.1. These plain HTTP sites are almost never cached.
  3. Still stuck? Forget the network, turn off Wi-Fi, then reconnect. On the login page, make sure you’re not using a VPN or ad blocker — those can block the portal’s DNS redirect.
  4. On iOS (iPhone/iPad): Go to Settings > Wi-Fi, tap the (i) next to the network, toggle off Private Wi-Fi Address. Then reconnect. Hotels hate randomized MACs — it messes with their session tracking.
  5. On Android: Same deal — long-press the network, tap Modify Network, check Advanced options, set MAC type to Device MAC (not random).
  6. On Windows: Open Command Prompt as admin, type ipconfig /flushdns, then netsh winsock reset. Reboot. Then try step 1 again.
  7. On Mac: Go to System Settings > Network > Wi-Fi > Details, turn off Private Wi-Fi Address, and click Renew DHCP Lease.

Alternative Fixes (When Main One Fails)

  • Use a different device — sometimes the portal is tied to a specific MAC. My Android phone worked when my laptop wouldn’t.
  • Open the portal URL directly — look at another connected device’s browser address bar and copy the captive portal URL (often something like 10.0.0.1/login). Paste it into your device.
  • Disable captive portal detection (advanced): On Android, go to Settings > Developer Options (tap Build Number 7 times to unlock), then set Captive portal detection to 0 or 1 (depends on your version). This forces the portal to show every time you connect. On Windows, disable the Network Location Awareness service temporarily (not recommended long-term).
  • Reboot the router — if you’re the admin (like in a small hotel), physically unplug the router for 10 seconds. I’ve fixed entire lobbies with this.

Prevention Tips for Next Time

  • Bookmark http://neverssl.com on every device you travel with. It’s the most reliable portal trigger I’ve seen.
  • Turn off Private Wi-Fi Address / Random MAC before connecting to hotel networks. Turn it back on when you leave if you want privacy.
  • Disable VPN and ad blockers before attempting to connect. You can re-enable them after the login page loads.
  • If you travel often, consider a travel router like the GL.iNet GL-AR750. It handles the captive portal once, then shares the connection to all your devices — no more loops.

Most captive portal loops are caused by devices trying to be smart about HTTPS and randomized MACs. Strip that away, force a plain HTTP request, and you’re in. Took me years to learn what takes you five minutes. Don’t overthink it.

Was this solution helpful?