The three Global Routing modes
Start by checking Global Routing in Home. Config routes requests according to the current configuration file; Proxy sends requests through the selected server; Direct connects without a proxy. For everyday routing, start with Config. When troubleshooting, briefly switch to another mode for comparison. Changing modes will not fix incorrect server details or add missing rules. If Proxy works but Config does not, check the matched rules and their policies. If both fail, check the server and local network first.
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY
Read the system guide to modes and rules →
Connect based on conditions with On Demand
On Demand is in Settings and determines whether to connect based on conditions such as the network. First verify a manual connection, then configure On Demand to avoid confusing an automatic trigger issue with an unavailable server. After setup, check the connection state on your usual Wi-Fi and cellular networks, and look for conflicting conditions. On Demand is not a scheduled toggle and does not guarantee lower battery use; consumption also depends on request volume, network stability, and reconnection frequency. If unexpected reconnections occur, check the trigger conditions before changing servers.
Settings
On Demand
See commonly used Settings →
Import and update subscriptions with Subscribe
If you already have a subscription, go to Add Server, choose Subscribe, enter the existing link, save it, and then update the contents. A subscription manages server entries; it is not a Config rule file or an app purchase. Before importing, check that the link is complete, especially for spaces or line breaks introduced when copying. If an update fails, first check whether the link is still valid, whether the current network can reach it, and whether the returned content is as expected. After updating, confirm the selected server again. Entries appearing in the list only show that the details were read; they do not verify the connection.
Add Server
Type: Subscribe
See how to import an existing subscription →
Manage Config rules and files
Config is for managing rule files. Requests are handled according to those rules only when Global Routing is set to Config. Rules are generally matched from top to bottom, so specific domain rules should go before broader rules. FINAL handles requests that have not matched earlier rules. Before editing, keep a working copy, change one type of rule at a time, save, and confirm which file is enabled. Domain matching, IP matching, and DNS results are related; do not infer the outcome from a rule name alone. If using iCloud sync, check both the sync status and the file currently enabled on each device.
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
Read the guide to maintaining configuration files →
Check protocols and connection fields
Shadowrocket supports multiple protocols. To add a server manually, choose the Type in Add Server that matches your existing details, then check Host, Port, and the authentication fields required by that protocol. Parameters for Shadowsocks, VMess, VLESS, Trojan, WireGuard, and other protocols are not interchangeable. Some connections also require TLS, a transport method, or additional parameters; enter each value according to the details you were given. Scan QR Code can import an existing QR code, but review the imported details afterward. Changing protocols is not a general fix; the remote server must support the selected protocol.
Add Server
Type / Host / Port
Scan QR Code
See how to add and import server details →
Connectivity Test and Data
Connectivity Test checks the response from the selected target using the current test method. Data shows traffic changes, while Diagnostics in Settings can help identify connection issues. A single test does not predict how every website will behave, and an increase in traffic does not mean every request followed the expected policy. When troubleshooting, note the current network, selected server, Global Routing mode, and the result of an actual request, then compare them one by one. Avoid changing DNS, rules, and server details at the same time. Keeping test conditions consistent helps distinguish remote connection failures, rule-handling differences, and local network issues.
Home → Connectivity Test
Data
Settings → Diagnostics
See how to verify connections and identify failure points →