Captive Portal Not Showing on Mac - Fix the Missing WiFi Login Screen
You walk into Starbucks, connect to their WiFi, and wait. But the login screen never appears. Your Mac shows full WiFi signal bars but nothing loads. This is one of the most reported Mac WiFi issues, and in almost every case the fix takes under two minutes.
What Is a Captive Portal?
A captive portal is the login or terms-acceptance screen that public WiFi networks show before granting full internet access. Hotels, cafes, airports, and hospitals all use them. On Mac, the system automatically detects captive portals and opens a special mini-browser called Captive Network Assistant to handle the login.
When the captive portal works correctly, it appears within 5 seconds of joining the network. When it fails, you are left with a WiFi connection that shows no internet access and no prompt to log in.
Why the Popup Isn't Appearing
| Cause | How Common | Fix |
|---|---|---|
| VPN is active and encrypting traffic | Very common | Disconnect VPN, rejoin network |
| Safari content blocker interfering | Common | Disable content blockers in Safari settings |
| Stale network cache | Common | Flush DNS cache, renew DHCP |
| Network was previously joined (trusted) | Common | Forget the network, rejoin fresh |
| macOS bug with Captive Network Assistant | Occasional | Open Safari manually, visit any http:// URL |
| Portal uses HTTPS redirect (HSTS issue) | Rare | Try a different browser or use private window |
Try to Trigger the Captive Portal Right Now
There is no button on this page that can force the Mac popup to appear - That popup is controlled by the OS, not by websites. However, the single most effective thing you can do is open one of these plain HTTP URLs in Safari. If a captive portal is active, it will intercept the request and redirect you to the login page.
Important: use Safari, not Chrome. And use http:// not https:// - HTTPS traffic cannot be intercepted by the portal redirect.
Fix 1 - Disconnect Your VPN First (Most Common Fix)
If your VPN is running when you join a public WiFi network, the VPN tunnel encrypts all outgoing traffic before the router can redirect you to the captive portal. The portal never gets a chance to intercept your connection. Mac then assumes the network is working normally because the VPN server responds to its probe request.
- Disconnect your VPN - Open your VPN app and hit Disconnect or turn off the toggle.
- Forget the WiFi network - Go to System Settings → Wi-Fi → click the network name → Forget This Network.
- Rejoin the network - Click the network name again and connect. Wait 5-10 seconds.
- If no popup appears - Open Safari and type any
http://address (example:http://neverssl.com) - this forces the captive portal redirect. - Complete the login - Accept terms or log in through the portal window.
- Reconnect your VPN - Once internet is working, turn your VPN back on.
Fix 2 - Trigger the Popup Manually
If disconnecting the VPN is not an option, you can try to trigger the captive portal manually without changing your VPN settings.
- Open Safari (not Chrome - Safari is what Mac uses for the captive portal mini-browser).
- In the address bar, type
http://captive.apple.comand press Return. - If the portal intercepts this request, the login page will load directly in Safari.
- Complete the login as normal.
- Alternatively, navigate to
http://neverssl.com- a site that intentionally stays HTTP only to help with exactly this problem.
Fix 3 - Flush DNS and Renew DHCP Lease
A stale DNS cache can prevent the captive portal redirect from working even after you have disconnected your VPN.
- Open Terminal (Applications → Utilities → Terminal).
- Type:
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponderand press Return. - Enter your Mac password when prompted.
- Go to System Settings → Network → your WiFi → Details → TCP/IP → click Renew DHCP Lease.
- Rejoin the WiFi network.
Fix 4 - Forget and Rejoin the Network
- System Settings → Wi-Fi.
- Click the name of the network you want to join.
- Click Forget This Network and confirm.
- Click the network again to rejoin.
- This forces Mac to treat it as a new network and re-run captive portal detection.