Aug 4, 2026 · Protocols · About 10 min read

Fix ChatGPT Not Working With Shadowrocket on Your iPhone

ChatGPT won't load even though Shadowrocket says it's connected? Check whether your rules send ChatGPT traffic direct, test DNS resolution and your proxy nod…

At a glance

If ChatGPT keeps loading while Shadowrocket is connected, do not assume the app, your server, or its routing rules are automatically at fault. This guide helps you isolate the cause by checking the selected server, Global Routing, DNS, and the difference between Wi-Fi and cellular data. It is for people who already have their own connection details. You will use short, controlled tests to distinguish a routing problem from a network-specific failure or an account, service, or IP-access restriction.

1. Start with the symptom, not the connection switch

A connected Shadowrocket tunnel does not prove that ChatGPT can reach every service it needs. The connection switch tells you that a VPN connection is active; it does not confirm that the selected server is reachable, that the active rules send the relevant requests through the intended route, or that ChatGPT’s services accept the resulting connection. Treat those as separate checks.

First describe what is failing. Does ChatGPT remain on a loading screen, fail to sign in, show a network error, or load the conversation list but fail when you send a message? Try opening a normal website in Safari as a comparison. If Safari also fails, investigate the connection and routing before focusing on ChatGPT. If other websites work but ChatGPT does not, the problem may involve a ChatGPT-specific route, DNS resolution, an app session, or service-side access conditions.

3 layers
Check tunnel and server, routing and DNS, then ChatGPT access
2 networks
Compare Wi-Fi with cellular data, changing one variable at a time
1 change
Make one diagnostic change before testing again

Record the basic conditions before editing anything: whether the failure occurs on Wi-Fi, cellular data, or both; whether Safari can load pages; which server is selected on Home; and which option is active under Home → Global Routing. Note whether the failure began after a subscription refresh, a Config change, a network change, or an app sign-in. These details help prevent repeated toggling from obscuring the original cause.

Also distinguish a local connection error from an access decision made by ChatGPT or its service provider. A working tunnel can use an exit address that is unavailable, restricted, or temporarily unsuitable for a particular service. Shadowrocket cannot make a service accept a connection, restore an account, or override a service’s access requirements. If the app reports an account or availability issue, check the service’s own status and guidance rather than repeatedly changing unrelated proxy fields.

2. Check the active route, rules, and DNS

On Home, confirm that the intended server is selected and that its entry belongs to your own imported server or subscription details. If your configuration uses a policy group, verify which option that group currently selects; the visible server selection may not be the route used by a particular rule. A server entry appearing in the list is not proof that it is reachable, so use Shadowrocket’s available connection diagnostics and compare results with a browser test.

Next, open Home → Global Routing. In Config mode, the active Config file and its rules determine how requests are handled. A rule can send a destination to PROXY, DIRECT, or a policy group. In Proxy mode, traffic is handled according to proxy mode rather than the domain-specific routing behavior of your Config rules. In Direct mode, traffic bypasses the proxy. For troubleshooting, note the current mode first; changing it without recording the original value makes it harder to identify the cause.

Routing checks

Global Routing
Home → Global Routing
Config
Uses the active configuration’s matching rules
Proxy
Useful as a temporary comparison with Config rules
Direct
Bypasses the proxy for a direct-connection comparison

Return to the original mode after a controlled test, unless you intentionally choose a different setup.

DNS checks

Resolver
Check the DNS option currently used by your setup
Config rules
Confirm relevant domain rules precede the final rule
Refresh
Reconnect after changing one DNS setting
Compare
Retest on the same network and with the same server

Do not paste a DNS address from an unrelated setup; use values appropriate to your own configuration.

When Global Routing is set to Config, inspect the active file rather than an inactive copy. Check whether the rules that could match ChatGPT-related requests appear before a broad rule or the final fallback. A rule that sends a matching destination to DIRECT can cause a different result from one that sends it to PROXY. Do not assume that one app connects to only one hostname: sign-in, API requests, and other supporting services can involve separate destinations. Avoid adding a guessed list of domains as a quick fix; first use the rules and diagnostics available in your own configuration to identify what is actually being matched.

DNS can also affect the result. A hostname must resolve before the app can connect to the intended service. If your configuration has a DNS option or DNS-related rules, record the current value and change only one setting per test. Reconnect the tunnel after making a change, then repeat the same action in ChatGPT. If changing DNS makes no difference, restore the previous setting rather than layering several unverified changes.

3. Run controlled tests on iPhone

Use a short sequence that keeps the server, ChatGPT account, and test action consistent. For the first comparison, use the same conversation or sign-in action and change only the network. Then, if necessary, compare the routing mode while staying on that same network. This helps separate Wi-Fi restrictions from cellular restrictions and Config-rule behavior from the selected server’s general reachability.

  1. Record the baseline

    On Home, note the selected server and Global Routing mode. Confirm that the connection switch is on, then try the same ChatGPT action once. Record the exact error or whether the screen simply keeps loading.

  2. Check Safari

    While Shadowrocket remains connected, open Safari and load a familiar website. If it also fails, check the server and tunnel before editing ChatGPT-specific rules. If it works, continue to compare the app’s route and service access.

  3. Compare networks

    Keep the same server and routing mode, switch between Wi-Fi and cellular data, and repeat the same test. On iPhone, confirm that cellular data is available for the test and that the device has actually changed networks.

  4. Compare routing

    If your active Config uses rules, note its current selection, then make a temporary comparison using another suitable Global Routing mode. Test ChatGPT once and restore the original mode. Do not treat a temporary test mode as a replacement for a correctly configured ruleset.

  5. Test one change

    If evidence points to DNS or a rule, change only that item, reconnect, and repeat the baseline test. If the result is unchanged, restore it before testing a different item.

Interpret each comparison narrowly. If ChatGPT works on cellular data but not Wi-Fi, the difference points toward the Wi-Fi network, its DNS, filtering, or how that network reaches the selected server. It does not by itself prove that the server is broken. If it works on Wi-Fi but not cellular data, check cellular availability and any network-specific restrictions before changing the Config file.

If a temporary routing comparison works while the original Config mode does not, inspect the active rules and policy selection. That result suggests a routing difference, but it does not identify the exact rule by itself. If neither mode works on either network while ordinary websites load, verify that the selected server is currently reachable and consider whether ChatGPT or the account is reporting a separate access issue. Avoid repeatedly switching servers without recording each result; otherwise, the test no longer isolates one variable.

4. Interpret errors without guessing

Messages such as “Network error,” “Something went wrong,” or an endless loading indicator are symptoms, not reliable diagnoses. The same wording can appear when a connection times out, a request is rejected, the app session needs attention, or a service is temporarily unavailable. Compare the message with Safari, the other network, and the routing-mode test before deciding which layer to change.

Symptom: ChatGPT keeps spinning

Likely checks and next step: Compare Safari and cellular data first. If other sites work on both networks, check the selected server, Global Routing, and the active Config rules before changing DNS.

Message: “Network error”

Likely checks and next step: The message alone does not prove that Shadowrocket is the cause. Repeat the same request on Wi-Fi and cellular data, then note whether the failure follows one network or both.

Symptom: Safari and ChatGPT both fail

Likely checks and next step: Start with the tunnel, selected server, and routing mode. If Shadowrocket’s connection diagnostics also fail, verify your own server details and network reachability before editing app-specific rules.

Symptom: Other sites work, ChatGPT does not

Likely checks and next step: Check for a ChatGPT-specific rule or DNS difference, then confirm the app’s account and service status. A working route to other sites does not guarantee that ChatGPT accepts the same exit address.

When reviewing logs or preparing a support request, share the time of the test, the network type, Global Routing mode, and the non-sensitive error text. Hide subscription URLs, server addresses if they are private, passwords, keys, and account credentials. Do not post a complete configuration file publicly: it may contain information that can expose or compromise your connection.

Keep the fix proportional to the evidence. If only one network fails, investigate that network. If only Config mode fails, review the active rules and policy group. If both networks and routing comparisons behave the same while other sites load, check the ChatGPT app, account, and service guidance. Do not use Allow Insecure or disable certificate verification as a general remedy for a loading screen; that does not repair a wrong route, unreachable server, DNS failure, or service-side restriction.

5. Frequently asked questions

Shadowrocket says connected. Why does ChatGPT still fail?

The switch indicates an active VPN connection, not successful access to every destination. On Home, confirm the selected server and Global Routing mode, then compare ChatGPT with Safari and repeat the test on Wi-Fi and cellular data.

Should I switch Global Routing to Proxy?

Use it only as a controlled comparison if you understand the effect of changing modes. Record the original mode, test once with the same server and network, and restore the original selection. If the comparison changes the result, inspect the active Config rules rather than leaving a temporary mode in place without understanding the trade-off.

ChatGPT works on cellular but not on Wi-Fi. What now?

Keep the same server and routing mode while checking the Wi-Fi connection and its DNS or filtering behavior. If other apps and websites also fail on Wi-Fi, investigate that network. If only ChatGPT fails, inspect its route in your active configuration and compare again after one change.

Can changing DNS or a server guarantee access?

No. DNS may resolve a hostname, and a reachable server may establish a tunnel, but neither guarantees that ChatGPT will accept the connection or that an account is eligible. Use only your own connection details, follow the service’s access requirements, and check its official status and support information when the network tests do not identify a local routing problem.

The most useful outcome is a reproducible diagnosis: whether the failure follows a network, a routing mode, a specific rule, or ChatGPT itself. Preserve the original Config before editing, change one item at a time, and restore settings that did not help. If the connection works for other destinations but ChatGPT continues to report an access or account problem, treat that as a service-side question rather than an invitation to weaken security settings or make speculative changes to Shadowrocket.

App Store listing verification