In Shadowrocket, Home, Config, Data, and Settings are navigation tabs, while Config, Proxy, and Direct under Global Routing are connection-handling modes. For users who already have their own server or subscription but are new to the English interface, this guide explains common labels in the order you’ll use them: find the right section, take action, and check the result. It clarifies the difference between the Config tab and Config mode, the connection toggle, and On Demand—so importing servers, applying rules, and reviewing logs don’t get mistaken for the same task.
First, distinguish navigation tabs from routing modes
On iPhone, the bottom navigation usually switches between tabs. Once you’re on Home, Global Routing lets you choose how traffic is handled. On iPad, the navigation layout may change with the window width, so look for the English label rather than a fixed spot at the bottom of the screen. The layout may also change between app versions; the descriptions below explain what each section does.
| Label | Typical location | Purpose and scope |
|---|---|---|
| Home | Main navigation tab | Manage existing servers and subscriptions, select a server, set Global Routing, and control the connection. |
| Config | Main navigation tab | Manage and select configuration files, and review their rules and other settings. |
| Data | Main navigation tab | View connections, traffic, and related logs to help check network activity. |
| Settings | Main navigation tab | Change app behavior, including On Demand and subscription settings. |
| Proxy | Home → Global Routing | Routes traffic through a proxy overall; this does not specify a particular protocol. |
| Direct | Home → Global Routing | Routes traffic directly overall; this does not turn off the connection toggle. |
When following a guide, read the full navigation path. For example, “open Config” usually means the configuration-file tab, while “set Global Routing to Config” changes the routing mode. Remembering only the last label can lead you to the wrong screen—or make you think that opening a configuration file has already enabled its rules.
Home: servers, subscriptions, and the connection toggle
Home is where you handle everyday connection tasks. A server entry stores details such as its address, port, protocol, and credentials. A subscription retrieves and refreshes a set of server entries. The steps below assume you already have a valid subscription URL. Buying Shadowrocket gives you a license to use the app; purchasing the app does not include a server plan.
-
Open Home
Open Home and check the existing server list and current Global Routing mode. Don’t delete entries you still use just to import a subscription.
-
Add a subscription
Home → “+” in the top-right corner → Type → Subscribe. Enter your own subscription URL in the URL field, then save. The example
https://example.com/sub?token=xxxxis fictitious and cannot be used to connect. -
Check the server entries
Return to Home and confirm that the subscription added server entries, then select one. If the list is empty, check the subscription fetch result before trying different routing modes.
-
Choose a mode
Go to Home → Global Routing and choose Config, Proxy, or Direct for your needs. Before using rules in everyday browsing, check which configuration is selected on the Config tab.
-
Turn on the connection
Return to Home and switch on the connection toggle at the top. The first time, follow the system prompt to allow a VPN configuration to be added. Then make a new request and check the corresponding entry in Data.
Type in a server entry and Global Routing address different questions. Shadowsocks, VMess, VLESS, Trojan, Hysteria2, and WireGuard are protocol names; their settings must match the details for your existing server. Proxy, Direct, and Config describe how connections are handled. Setting the mode to Proxy won’t fix an incorrect port or authentication details.
Global Routing: Config, Proxy, Direct, and Scene
Global Routing is on Home and determines the overall way connections are handled. Config follows the current configuration, Proxy sends traffic through a proxy overall, and Direct connects directly overall. These are not speed settings or connection-quality ratings. The same destination can produce different results in different modes.
If the interface offers Scene, treat it as a way to route traffic according to configured scenes, not as a fourth fixed routing mode. Before using it, check each scene’s trigger conditions and actions. Don’t use it as a troubleshooting baseline until you’ve reviewed its settings. To reproduce an issue, note the current value, temporarily select a clearly defined mode, then restore the original setting when you’re done.
Everyday use and temporary troubleshooting
Use rules for everyday traffic
- Check the selected configuration file on the Config tab.
- On Home, go to Global Routing and choose Config.
- Check which rule matches the destination and which policy the rule selects.
Temporarily compare routing behavior
- Note the current mode, server, and test destination.
- Temporarily switch to Proxy or Direct, then establish a new connection.
- Compare the results for the same destination, then restore the original setting.
Change one variable at a time. If you change the server, mode, and configuration together, you won’t know which one caused the difference.
After changing modes, existing long-lived connections may not reconnect immediately. For a valid test, close the existing session and make a new request. If a destination works under Direct, that only shows it can connect directly on your current network; it doesn’t confirm that your proxy server settings are correct.
Config: don’t confuse the tab with the routing mode
The Config tab manages configuration files. Config under Global Routing means using the current configuration to handle connections. The tab answers “Which configuration file?” while the mode answers “Should connections follow the configuration?” Having a configuration file doesn’t mean its rules are in effect: make sure the right file is selected and check the current routing mode.
Config tab
- Location
- Main navigation → Config
- What it manages
- Configuration files, including their rules and policies
- What to check
- Whether the file currently in use is the same one you want to inspect
Opening a file to review its contents and selecting it for use with connections are two separate actions to verify.
Config mode
- Location
- Home → Global Routing → Config
- What determines handling
- The rules and policies in the current configuration
- What to check
- Which rule matches the destination and which policy that rule selects
Config does not mean that everything goes through a proxy; rules can still send some connections to DIRECT.
The snippets below illustrate rule keywords; they are not a complete configuration. example.com and 192.0.2.0/24 are documentation examples. The destination or policy referenced by PROXY must also be valid in your actual configuration.
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.0.2.0/24,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
DOMAIN-SUFFIXmatches domain suffixes. For example, a rule can matchexample.comand its subdomains.IP-CIDRchecks whether the destination IP falls within a specified network range. In the example,no-resolvemeans not to trigger an additional domain lookup for this IP rule.GEOIPmatches against an IP geolocation database; it is not simply based on a website’s language or domain suffix.FINALhandles connections that did not match any preceding rules. Read it together with the order of the rules above it.
Data: find the relevant connection before interpreting traffic totals
Data shows traffic and related connection logs. It isn’t where you edit servers or refresh subscriptions. To troubleshoot, note when you made the request and which destination you accessed, then check for a matching entry. Available fields vary by interface; use the destination, policy, traffic, timestamp, and other details actually shown.
- An entry appears: This means matching traffic was observed, not necessarily that the destination page loaded completely. Check whether the connection finished, whether an error appeared, and what happened when you opened the page.
- Byte count increases: Data was transferred, but it could be from a background request, a retry, or another app. It is not a speed-test result.
- No matching entry: First check the connection toggle, test time, and log range, then make another request. Don’t assume the server is unavailable.
- Results still look the same after changing modes: Make sure you’re checking a new connection, not a session established before the change.
For example, note that Global Routing is set to Config on Home, open a destination page, then check Data for a connection around the same time. If the handling policy differs from what you expected, return to Config and check the rules rather than looking for an “change exit” switch in Data. Before sharing logs, hide server addresses, authentication details, and subscription URLs containing credentials.
Settings: what On Demand and Subscribe do
Settings controls app behavior. Settings → On Demand configures connection behavior triggered by specified conditions, while Settings → Subscribe manages subscription options. Neither selects a server on Home nor replaces the routing mode under Global Routing.
| Path | What it controls | How to check the result |
|---|---|---|
| Settings → On Demand | Automatically trigger connections or disconnections based on the conditions you set | Switch to the relevant network environment and check the connection status. Review the rule conditions and actions. |
| Settings → Subscribe | Change subscription update behavior | Return to Home and manually refresh the existing subscription, then check whether valid entries were retrieved. |
| Home → Global Routing | Choose how connections are handled | Make a new request and check the result against the available entries in Data. |
On Demand mainly answers “When should a connection start?” Config rules mainly answer “Where should the connection go?” If the connection comes back after you disconnect manually, first check Settings → On Demand and the corresponding VPN configuration in the system for any trigger conditions. Don’t delete servers or clear configuration files just to keep the connection off.
Refreshing a subscription retrieves server information again. It doesn’t guarantee that a usable server will be selected automatically, and it doesn’t update rule files. After refreshing, return to Home to check the list and current selection, then review Global Routing. If the response isn’t subscription data the app can recognize, switching routing modes repeatedly won’t help; check the URL itself.
Common points of confusion: check each interface section
I opened Config. Why is all traffic still going through a proxy?
Return to Home → Global Routing and check whether the mode is still Proxy. Then check which file is selected on the Config tab. Opening the Config tab doesn’t change the routing mode. After changing it, make a new request rather than judging by an existing connection.
I selected Direct. Why is the connection toggle still on?
Direct sets how traffic is handled; the connection toggle controls the connection state. They are separate settings. To end the connection, use the toggle at the top of Home. If it reconnects automatically, check Settings → On Demand.
Data shows traffic. Does that mean the server is working?
Not necessarily. Note the destination and request time, then look for the corresponding new connection. Check whether the page loaded and whether any errors appeared. Background traffic or failed retries can also add bytes, so don’t judge by the total alone.
Where do I go to refresh an existing subscription: Config or Settings?
To manually refresh an existing subscription, use its subscription action on Home. Subscription update options are under Settings → Subscribe. Config manages configuration files; don’t confuse configuration updates with server subscription updates.