ChatGPT Not Working With Shadowrocket? Troubleshoot Access
Shadowrocket shows a VPN connection, but ChatGPT still fails to open or sign in. Follow a practical iPhone checklist covering routing, DNS, proxy nodes, and network differences to identify and fix the problem.
ChatGPT can fail even when Shadowrocket shows a VPN badge and the switch appears to be on. That badge confirms that iOS has attached the VPN configuration to Shadowrocket; it does not prove that the selected node can reach ChatGPT, that the request is using the node, or that DNS and the current rules are behaving as expected. A failed page, an endless loading screen, a login loop, and an error after sign-in can therefore have different causes.
Use a controlled checklist instead of changing everything at once. First separate the iPhone’s ordinary network from Shadowrocket, then verify the selected node, Global Routing, DNS behavior, and the specific network where the problem occurs. The goal is not to find a magical setting. It is to identify which layer fails and make one useful change at a time.
Start with the exact ChatGPT symptom
Before editing a config or reinstalling the app, describe what happens in one sentence. “ChatGPT does not work” is too broad because the app, browser, login service, and API endpoints may fail at different stages. Note whether the problem appears in the ChatGPT app, a browser, or both.
- The ChatGPT website does not open at all, or the page stays blank.
- The page opens, but the login button keeps loading or returns to the same page.
- Login succeeds, but conversations do not load or messages remain stuck on sending.
- The ChatGPT app opens on Wi-Fi but not on cellular data, or the reverse.
- ChatGPT works with one Shadowrocket node but fails with another.
- ChatGPT fails only when Global Routing is set to Config, while Proxy works.
- Every website fails while Shadowrocket is on, including sites that normally work directly.
These observations point in different directions. A blank page can involve DNS, filtering, or a browser cache. A login loop can involve cookies, authentication domains, or a route that changes during the session. A conversation that never sends may indicate that the initial page loaded through one path while a later request was sent through another. Record the symptom, the selected node, the routing mode, and whether you are on Wi-Fi or cellular before making a change.
Also test the same account without repeatedly attempting to sign in. Many failed login attempts can trigger additional verification or temporary limits. Troubleshooting the network is separate from recovering an account. If the service itself reports an account, billing, or verification problem, follow the service’s own support instructions rather than changing Shadowrocket settings.
Check the ordinary network before Shadowrocket
Turn Shadowrocket off briefly and open two or three ordinary websites that normally work on your current connection. This is not a test of ChatGPT access; it is a test of whether the iPhone has a usable Wi-Fi or cellular path. If ordinary sites fail with Shadowrocket off, changing nodes will not repair the local network.
Try the opposite network when possible. Move from Wi-Fi to cellular data, or from cellular data to a trusted Wi-Fi connection. A school, office, hotel, carrier, or public hotspot may apply its own DNS policy, firewall, captive portal, or traffic restriction. If ChatGPT works on cellular but not on Wi-Fi, the difference is valuable evidence. It suggests that the Wi-Fi network, its DNS response, or its upstream policy deserves attention.
Complete any captive-portal sign-in first. Public Wi-Fi can show a connected icon while blocking normal traffic until you accept terms or enter a room code. In that situation, Shadowrocket may create a VPN tunnel that cannot reach the portal correctly. Turn the switch off, complete the Wi-Fi login in Safari, confirm ordinary browsing, and then test Shadowrocket again.
Check iOS settings that can change the path independently of Shadowrocket. Low Data Mode, a device-wide content filter, another VPN, a work profile, or a managed DNS profile can interfere with testing. Do not remove a work or school profile casually; ask the administrator if the device is managed. Likewise, do not assume that a private relay or a different DNS profile is harmless just because the Shadowrocket switch is on. For a basic installation and system-permission review, see Install Shadowrocket.
Keep the comparison simple: ordinary network with Shadowrocket off, then the same network with Shadowrocket on. If ordinary sites work in both states but only ChatGPT fails with Shadowrocket on, continue with routing and node checks. If all traffic fails only when the switch is on, prioritize the selected node, tunnel state, and configuration rather than ChatGPT itself.
Verify the node and Global Routing
A VPN status indicator is not a reachability test. Shadowrocket can have permission to create a tunnel while the selected remote server is offline, overloaded, expired, incorrectly entered, or unable to reach the destination. Start on Home and identify the actual selected row in SERVER. A long list can make an old name look selected even after a subscription update has replaced it.
Run Connectivity Test for the selected node. A latency number shows that the probe received a response; it does not guarantee that every website or login endpoint will work. No result, a repeated timeout, or a result that appears only after a very long delay is a reason to test another node. Try two or three nodes from the material you already have. This site does not provide nodes or subscriptions, so ask your provider about expiry, traffic limits, and server status if the whole list fails.
Next, inspect Global Routing. Its value controls where traffic goes; it does not create a node or repair a subscription.
- Config uses the active rule file. A ChatGPT hostname may be sent through a node, sent Direct, or affected by a rule that does not match your expectation.
- Proxy sends the traffic Shadowrocket can take over through the selected node with much less dependence on the rule decision. It is useful as a comparison, not necessarily as a permanent daily mode.
- Direct bypasses the proxy. ChatGPT may fail in Direct if the current network cannot reach it, but Direct is useful for checking whether ordinary local sites and the iPhone network still work.
If ChatGPT fails in Config but opens in Proxy, the node is probably usable and the active rules, DNS handling, or rule matching deserve inspection. If it fails in both Config and Proxy but ordinary sites work, try another node and review Diagnostics. If it works in Direct, the issue may not be ChatGPT at all; it may be a node or a rule that is breaking the request.
For a fuller explanation of the three modes, see Compare routing modes. After the comparison, return to Config if that is the mode your rule file is designed to use. Leaving Proxy enabled can send more traffic through the node, increase latency, and make local services behave differently.
Test DNS and routing with one change
DNS is the step that turns a hostname into an address. ChatGPT access can fail before an HTTPS connection begins if the selected DNS path returns an unusable answer, is blocked, is slow, or differs between Wi-Fi and cellular. A working Connectivity Test does not completely rule out a DNS problem because the test may use a different hostname and request path.
First decide whether the failure is DNS-specific. In Config, compare ChatGPT with another ordinary hostname that should use the same general route. Then switch to Proxy for one comparison. If the page begins loading only after the routing change, inspect how the active Config handles DNS and the relevant domain rules. Do not edit every DNS, IPv6, and rule option simultaneously; that removes the evidence you need.
Check whether your active config includes a DNS setting or a rule that sends DNS Direct while web traffic uses a node. A mismatch can produce an address that is unreachable from the current network, or it can expose a route that your rules were meant to avoid. The exact available fields depend on the config and Shadowrocket version, so use the labels shown on your device rather than copying a random online profile.
IPv6 can also produce a misleading result. A network may return an IPv6 address that is technically valid but not usable through the current route. If ChatGPT works on one network and fails on another, especially where one network has stronger IPv6 support, compare the behavior without changing multiple advanced options. If you test an IPv6-related setting, note the original value and change only that item. Restore it if the comparison does not improve the symptom.
After each DNS or routing change, close the failed page and open it again. A browser can retain a failed lookup, redirect, cookie, or partially loaded session. Test both the ChatGPT website and the app only after the network path has been stable for a moment. A successful page load does not prove that the app’s later API requests use the same domains or rules, so continue to the next check if conversations still do not send.
Follow a repeatable iPhone checklist
Use the following order when ChatGPT is unavailable. The order matters because each step answers a different question and avoids unnecessary data loss.
- Turn Shadowrocket off and confirm that ordinary websites work on the current Wi-Fi or cellular connection.
- Turn it on and check that the system VPN status and the Shadowrocket switch agree. A badge alone is not enough.
- On Home, confirm that a real node is selected in SERVER. Do not test with only Add Server visible or with an empty selection.
- Run Connectivity Test. If it fails, try another existing node before changing DNS or reinstalling.
- Confirm that Global Routing is not Direct. Use Proxy briefly to compare the selected node with Config.
- Open ChatGPT in a private browser tab or another browser session to separate cached cookies and extensions from the network test. Do not treat a private session as a permanent account workaround.
- Compare Wi-Fi and cellular data. Record which combination works: network, node, routing mode, and client.
- Open Diagnostics and inspect requests around the current time. Look for whether the relevant request is Direct, proxied, rejected, or unable to resolve.
- Change one DNS or rule-related item only if the evidence points there, then repeat the same test.
- Update an existing subscription only when the node list may be outdated or several nodes fail. Select a node that still exists after the update.
Do not use a different browser, a different node, a new routing mode, and a subscription refresh in the same minute. That can make the page work but leaves you unable to explain why. A short note such as “cellular + node B + Proxy works; Wi-Fi + Config fails” is more useful than a screenshot of a VPN badge.
When you finish, switch back to your normal mode and selected node. If Proxy was used only for diagnosis, return to Config. If the subscription was refreshed, remove or ignore duplicate entries rather than repeatedly importing the same material. For broader connection checks, see Open troubleshooting steps.
Read Diagnostics and know when to stop
Diagnostics is useful when the visible symptom does not reveal the failing layer. Use it to compare a request made while Config is active with the same request made while Proxy is active. You are looking for a pattern, not trying to interpret every field. A request marked Direct when you expected a proxy points toward Global Routing or rule matching. A request that cannot resolve a hostname points toward DNS. A request that reaches the node but times out points more toward the node or remote destination.
Some requests belong to login, content delivery, telemetry, or account services rather than the main page. Do not blindly force every unfamiliar hostname through a node. Broad rules can slow ordinary apps, break local services, increase data use, and create new login problems. Make a narrow change based on the failing request, then test again. If you do not know what a rule means, preserve the original config and ask its author or provider instead of deleting entries at random.
Stop changing Shadowrocket when the evidence points outside it. If ChatGPT fails with Shadowrocket off on several networks, the service may be experiencing an outage or the account may need attention. If only one browser session fails while the app and another browser work, clear that session’s site data or follow the browser’s support guidance. If a managed iPhone blocks the service, the administrator may be the only person who can change the policy.
Reinstalling is a last resort, not a connectivity test. It removes a useful comparison and may require VPN permission, node material, and config files to be added again. Reinstalling cannot revive an expired subscription, repair a remote node, or replace a rule that was never configured correctly. Preserve the material you are allowed to use and export or record your config according to your own backup practice before removing the app.
ChatGPT and Shadowrocket FAQ
Why does ChatGPT fail when the VPN badge is visible?
The badge means iOS has an active VPN configuration associated with Shadowrocket. It does not confirm that a node is selected, that the node is responding, or that ChatGPT traffic is using that node. Check SERVER, run Connectivity Test, and inspect Global Routing before changing advanced settings.
Why does ChatGPT work in Proxy but not in Config?
Proxy reduces the effect of rule selection, while Config relies on the active rule file. This difference often points to a rule match, DNS path, or config issue rather than a completely dead node. Use Proxy as a short comparison, then review Diagnostics and return to Config after testing.
Why does ChatGPT work on cellular but fail on Wi-Fi?
The two networks may use different DNS resolvers, IPv6 behavior, captive-portal rules, firewalls, or upstream restrictions. Confirm ordinary browsing on both networks, then compare the same node and routing mode. If only one Wi-Fi network fails, investigate that network instead of repeatedly reinstalling Shadowrocket.
Should I update the subscription when ChatGPT stops working?
Update it when the node list is stale, several nodes fail, or your provider says the subscription changed. An update does not guarantee that a node is alive and may remove the previously selected row. After refreshing, select a node that still exists and test it before changing other settings.