Shadowrocket can display Connected while ChatGPT still fails to open, sign in, or load a conversation. A connected VPN only confirms that a tunnel is active; it does not confirm that the selected route, DNS response, server, or every service request is working. Use the checks in this guide to separate a routing-rule problem from a DNS, server, or iPhone network issue. Keep your existing configuration unchanged until you have recorded it, and test one variable at a time.
Connected does not mean ChatGPT is reachable
When Shadowrocket says Connected, the iPhone has established a VPN connection with the selected configuration. That is useful information, but it does not confirm that a request from ChatGPT is using the intended policy or reaching every service endpoint it needs. The app may load a sign-in page but fail when opening a conversation, or it may show a blank screen while other websites continue to work. Those different symptoms can point to different stages of the connection.
Start by noting what fails and when. Does ChatGPT fail to open at all, remain on a loading screen, reject a sign-in, or load the main interface but not send messages? Record the time, whether you are using the ChatGPT app or its website, the selected server, the Global Routing mode, and whether the iPhone is on Wi-Fi or cellular data. A clear symptom is more useful than changing several settings and then trying again.
ChatGPT may make requests to more than one domain for sign-in, conversations, and other resources, and the exact set of requests can change. A rule that sends one hostname through a proxy does not necessarily cover every request made during a session. For that reason, do not treat a single hostname or a successful latency check as proof that all ChatGPT traffic has the right route.
For a quick first comparison, check whether another ordinary website loads through the same Shadowrocket connection. If other sites work but ChatGPT does not, focus on the ChatGPT request’s matching rules, DNS result, or service availability. If nothing loads, begin with the selected server, the active configuration, and the iPhone’s VPN status instead of editing a ChatGPT-specific rule.
Check Global Routing and Config rules
In Shadowrocket, open Home and note the current Global Routing selection before changing anything. Config uses the active configuration’s rules and policies; Proxy sends traffic through the selected proxy for a comparison; Direct bypasses the proxy. These modes are diagnostic choices, not interchangeable fixes. In particular, testing with Proxy can help identify a routing-rule issue, but it does not establish that the configuration is correct for everyday use.
If Home is set to Config, go to Config and confirm which configuration is selected. Inspect the rules in that active file, not a saved file that is currently inactive. Look for rules covering the relevant hostnames and check which policy each rule selects. Rules are evaluated in order: an earlier, broader match can take effect before a later, more specific rule. Also check the final fallback, such as FINAL, because a request that matches no earlier rule may be sent somewhere different from what you expect.
Do not assume that adding one guessed domain will fix the issue. ChatGPT’s website and app can depend on multiple service domains, and a list copied from an old post may be incomplete or out of date. If you maintain your own configuration, use the information provided with it and the request details available in your own troubleshooting logs, where supported. If the configuration is managed through your existing subscription, check whether its rules are current with the provider before making manual edits.
Routing checks
- Home
- Record Global Routing and selected server
- Config
- Confirm the active configuration
- Rule order
- Check earlier matches before later rules
- Fallback
- Inspect the final policy, such as
FINAL
A rule must match the request and select the intended policy.
Short comparison
- Config
- Uses the active rules and policies
- Proxy
- Useful for a brief routing comparison
- Direct
- Bypasses the proxy for a brief comparison
- Restore
- Return to the original mode after testing
Change only the routing mode during this comparison.
If you briefly switch from Config to Proxy and ChatGPT begins working, that is evidence that the original rules or policies may be involved; it is not a reason to leave every request in Proxy permanently. Return to the original mode, review the active rules, and make only a change you understand and can reverse. If the result is identical in Config and Proxy, continue to DNS and server checks rather than repeatedly rearranging rules.
Run a controlled iPhone test
Use the sequence below to isolate the cause without losing the settings that were working before the test. Menu labels can vary slightly with the iOS version, but the Shadowrocket labels below refer to the English interface. Do not change DNS, the selected server, and Global Routing at the same time: if the result changes, you would not know which adjustment mattered.
- Record the starting state. In Shadowrocket Home, note the selected server and the Global Routing mode. Confirm which Config is active if the mode is Config. If you are unsure about an existing rule or DNS value, make a safe copy or record the original value before editing.
- Check the iPhone VPN state. Open iPhone Settings → General → VPN & Device Management → VPN, or open Settings → VPN if that shortcut is shown. Confirm that the Shadowrocket VPN connection is active. If it disconnects or reconnects repeatedly, first address that stability problem rather than troubleshooting a ChatGPT rule.
- Compare routing modes briefly. With the same selected server and network, try Proxy for a short test if your configuration allows it. Open ChatGPT again, then restore the original Global Routing mode. If Proxy works but Config does not, review the rules and policies in the active Config. If neither works, do not conclude that DNS is the cause yet.
- Test the other network. Keep the same server and routing mode, then compare Wi-Fi with cellular data. Allow the page or app to finish loading before deciding the test failed. Record whether the behavior changes; a result that differs by network can point to a local Wi-Fi restriction, DNS behavior, or a network-specific connection problem.
- Change one DNS setting only if indicated. If the failure is consistent with a resolution problem, review the DNS settings in Shadowrocket Settings and the DNS options in the active configuration, if present. Record the original values, adjust only the relevant setting, and repeat the same test on the same network. Restore the original value if the change makes no difference.
- Return to a known state. Restore the original routing mode and any temporary DNS changes. Test ChatGPT once more and verify that other apps and websites still behave as expected. Keep a short note of the outcome so a later configuration update does not erase the evidence you collected.
For a useful comparison, keep the test conditions consistent: use the same ChatGPT app or website, the same server, and the same routing mode while changing only Wi-Fi or cellular data. Then, if necessary, keep the network fixed and compare Config with Proxy. A single controlled comparison usually tells you more than repeatedly reconnecting with several settings changed.
Check DNS, server availability, and iPhone network state
DNS translates a hostname into an address that a connection can use. A DNS failure can prevent a page or service request from starting even when the VPN tunnel itself is connected. But an error after a hostname has resolved can also come from a rule, an unreachable server, a connection timeout, or a problem with the service. Do not treat every ChatGPT loading failure as a DNS issue, and do not replace working DNS values with random addresses.
Review the DNS settings that actually apply to the active configuration. If Shadowrocket Settings contains a DNS option, check its current value and whether the configuration has its own DNS directives. Make one documented test change only when you have a reason to do so, then repeat the same request. If a DNS setting uses an encrypted DNS service, that service must itself be reachable through the current network and route; an unavailable upstream can create a new resolution failure rather than solve one.
Next, check the selected server using a simple comparison. In Home, confirm the intended server is selected and that the connection remains active while you make the test. If the connection is unstable or several unrelated sites fail, try another server from your own existing configuration, keeping the routing mode and network unchanged. A successful latency result is only a limited signal: it does not prove that the server can reach the destination or that every ChatGPT request follows the expected policy.
Error: Shadowrocket shows Connected, but ChatGPT keeps loading
Cause and fix: The VPN tunnel may be active while a matching rule or selected policy is wrong. Record Global Routing in Home, briefly compare Proxy with Config, and inspect the active Config’s rule order if the result changes.
Error: The page cannot be opened or a hostname will not resolve
Cause and fix: DNS may be unavailable, but the selected route or server may also be at fault. Check the active DNS settings and compare Wi-Fi with cellular data while holding the server and routing mode constant.
Error: ChatGPT fails on Wi-Fi but works on cellular data
Cause and fix: The difference points toward the Wi-Fi network or its DNS and filtering behavior. Reconnect to the same server, check whether other sites fail on that Wi-Fi network, and avoid editing several Shadowrocket settings before repeating the comparison.
Error: The VPN turns off or reconnects during a test
Cause and fix: This is a connection-state problem, so ChatGPT rules are not the first place to look. Check Settings → General → VPN & Device Management → VPN and Shadowrocket Home, then repeat the test only after the connection remains stable.
Bottom line: use the result to choose the next check
If Proxy works while Config fails, investigate rule matching and policy selection. If Wi-Fi fails while cellular data works with otherwise identical settings, investigate the Wi-Fi network. If both networks fail across routing modes, check DNS, the selected server, and whether the service itself is available before making broader configuration changes.
Also check whether another VPN connection or network filtering feature is active on the iPhone. Two connection tools competing to manage network traffic can make tests inconsistent. Review the VPN state in iOS Settings, disconnect any connection you do not intend to use, and then reconnect Shadowrocket. If you use iCloud Private Relay or a network-specific filtering setting, note its state and test consistently rather than changing it alongside DNS or routing.
If only the ChatGPT app fails but its website works under the same iPhone network and Shadowrocket settings, the issue may be specific to the app session or its local state. Close and reopen the app, check whether the problem persists, and avoid repeatedly signing out if you cannot confirm your account access. If both app and website fail while other sites work, return to routing, DNS, and server checks. If ChatGPT fails even when Shadowrocket is disconnected, the proxy configuration may not be the cause.
Frequently asked questions
Why does Shadowrocket say Connected if ChatGPT will not load?
Connected confirms that a VPN connection is active, not that ChatGPT’s requests all resolve and use a working route. Check Home → Global Routing, the selected server, and whether the active Config has a matching rule. Then compare the result with Proxy for a short test and restore your original mode.
Should I leave Global Routing set to Proxy?
Not just because a brief Proxy test works. That result can help identify a rule or policy issue in Config, but Proxy changes how traffic is handled more broadly. Return to your original mode, inspect the relevant rules, and keep the setting that matches your intended configuration.
How can I tell whether this is DNS or a server problem?
Look at the pattern rather than relying on one latency reading. A hostname resolution failure suggests checking DNS, while a resolved destination that times out may point to the route or server. Compare Wi-Fi with cellular data using the same server and Global Routing mode, and change only one DNS value at a time.
What if ChatGPT works on cellular data but not Wi-Fi?
Keep the Shadowrocket server and routing mode unchanged and repeat the Wi-Fi test. Check whether other sites also fail on that network and review its DNS or filtering behavior. If the same configuration works over cellular data, avoid replacing the entire configuration before investigating the Wi-Fi-specific difference.