This guide is for people just getting started with Shadowrocket who already have a provider and subscription. It covers where to get the app, what Home / Config / Settings do, importing subscriptions, connecting and disconnecting, Global Routing, verifying rules, updating, troubleshooting, On Demand, and moving to a new device. Steps use the iPhone / iPad interface; menu locations may differ on other platforms, so don’t assume they’re identical.
1. Where can I get Shadowrocket, and does the purchase include proxy access?
Shadowrocket is a closed-source commercial app. The app and proxy service are separate: iPhone / iPad costs $2.99 as a one-time App Store purchase, while the Mac (Apple Silicon and Intel), Windows, Android, and Linux versions are free. Buying the app does not include a service subscription; get subscriptions and nodes from your provider.
- iPhone / iPad: Check that the App Store product page lists Shadow Launch Technology Limited as the developer. See the App Store page for system requirements.
- Mac: Check your chip in About This Mac, then choose the Apple Silicon or Intel version.
- Windows, Android, Linux: See the relevant installation instructions on this site’s download page. Installers are provided at
/dl/shadowrocket/.
Choose your device from the all-platform downloads page. A successful installation means the app is ready; without a usable configuration, turning on the connection won’t provide proxy access automatically.
2. What are Home, Config, and Settings for?
These sections manage connections, routing configurations, and app preferences, respectively. A common beginner mistake is to assume that selecting a node also enables rules. They’re separate layers: the node determines where the connection goes, while the rules determine which policy applies to each request.
| Section | Main purpose | What to check afterward |
|---|---|---|
Home | Manage subscriptions and nodes, choose a node, and connect or disconnect | Is the selected node the one you intended? |
Config | Manage and select configuration files; review rules and policies | Is the correct configuration in use? |
Settings | Adjust app behavior, including On Demand and subscription settings | Are any automatic connection or update conditions enabled? |
When troubleshooting, note the current state of all three sections before making changes. If you change the node, configuration, and DNS all at once, you won’t know which change fixed the issue.
3. Where do I import an existing subscription link?
Get your subscription link from your provider. Importing a subscription loads a list of nodes; it doesn’t enable a complete routing configuration or guarantee that every listed node will connect. Don’t paste the subscription URL into a single node’s server address field.
-
Open the add screen
Go to Home, tap “+” in the upper-right corner, and open the screen for adding an item.
-
Choose the subscription type
Under Type, select Subscribe rather than choosing a node protocol manually.
-
Enter the link
Paste the complete subscription link into URL. Check the beginning, query parameters, and final characters, and make sure there are no extra spaces or line breaks.
-
Save and load
After saving, return to Home and check whether the subscription group lists nodes. If it hasn’t loaded yet, pull down to refresh the list.
-
Choose a node
Select a node from the subscription group, then test the connection. If the group appears but contains no nodes, troubleshoot subscription loading first.
Subscription URLs often contain account tokens, so treat them like credentials. Before sharing a screenshot, hide the full URL, passwords, and QR codes. Leave only the error message and relevant settings visible.
4. How do I connect and disconnect? Does quitting the app disconnect it?
Select a node on Home, then turn on the connection. The first time you connect, the system may ask to add a VPN configuration. Allow it after verifying the app’s source. This permission creates a system network tunnel; it doesn’t verify that your provider’s service is working.
- Before connecting, make sure your Wi-Fi or cellular connection can load ordinary webpages.
- On Home, select a node, choose the required Global Routing mode, and turn on the connection.
- Wait for the connection status to change, then open the target page to test it. Don’t rely on the system VPN indicator alone.
- To disconnect, return to Home and turn off the connection. If it reconnects automatically, check Settings → On Demand.
Switching to the Home Screen, locking the device, or closing the app interface doesn’t actively stop the tunnel. The system VPN indicator only shows tunnel status; it doesn’t confirm that the destination server is reachable, authentication succeeded, or the right rules are being applied.
5. Should I set Global Routing to Config or Proxy?
Global Routing determines how traffic is routed. Config applies the rules in the active configuration; the outcome depends on the actual rules and FINAL, so it doesn’t mean that a particular category of sites will always connect directly. Proxy can help temporarily rule out rule-related issues, but it remains subject to system networking and the scope of tunnel processing.
Config
RecommendedUses the policies specified by the current configuration’s rules. Check the configuration source, rule order, and fallback policy before using it.
Best for: everyday rule-based routing with a configuration you understand
Proxy
Sends requests within its routing scope through the proxy. Useful for comparison with Config when checking whether a rule is causing an issue.
Best for: briefly testing a node or troubleshooting routing
Direct
Uses a direct connection without routing through the selected proxy node. This isn’t a mode for choosing a faster node.
Best for: checking direct access on your local network
Scene
Uses the routing behavior set for the configured scenes. Review those scenes first; this isn’t an automatic speed test or node selection feature.
Best for: users who have configured routing conditions for different networks
To start troubleshooting, keep the same node and open the same destination in both Config and Proxy. If it fails only in Config, check the rules and policies first. If both fail, check the node, server, and local network. For more, see Proxy modes.
6. Why aren’t my imported rules taking effect?
Saving a configuration file, selecting it for use, and setting Global Routing to Config are three different steps. First, confirm the active file in Config, then check Global Routing. Rules are usually evaluated in order, so an earlier broad rule can prevent a later, more specific rule from matching.
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
This is an example of rule syntax, not an app screenshot or a complete configuration for every network. DOMAIN-SUFFIX matches domain suffixes; IP-CIDR matches IP address ranges; GEOIP relies on an IP geolocation database; FINAL handles requests that didn’t match an earlier rule. In this example, unmatched requests use PROXY rather than going direct automatically.
- Confirm the actual domain used by the request. Images and API calls on a page may come from different domains.
- Check whether an earlier rule matches before the target rule, and whether the target policy still exists.
- Check the policy shown in the connection log. After making a change, send the request again so an existing connection doesn’t affect the result.
no-resolveprevents a domain lookup solely for matching that IP rule. It doesn’t disable DNS for the entire app.
7. When should I update a subscription, and what if it fails?
Updating a subscription reloads the node list returned by your provider and may add or remove nodes or change their parameters. It doesn’t update the app or automatically fix local rules. If your provider announces a service change or the node list looks outdated, first pull down to refresh on Home. After updating, confirm that your selected node is still listed.
Refresh keeps timing out. What should I check first?
First, make sure your local network is working, then try pulling down to refresh on Home. If the subscription URL is only reachable through a proxy, establish a working connection first, then check Settings → Subscribe → Update via Proxy. Enabling this option alone won’t create a working connection if no usable node is available.
I’m seeing a 401 or 403. Did I choose the wrong protocol?
These HTTP status codes usually indicate an authentication or access restriction issue. Check that the URL is complete and the token hasn’t been reset, then ask your provider to confirm your subscription access. Changing node protocols repeatedly won’t fix errors with a subscription request.
My update succeeded, but some nodes disappeared. Can I restore them?
First, check the current list returned by your subscription. Your provider may have removed old nodes; refreshing won’t restore nodes that are no longer available. Ask your provider about the change rather than copying old parameters by hand and assuming they still work.
For automatic updates, check the update-on-open options under Settings → Subscribe. They still depend on network access, authentication, and the server’s response, so check the update result rather than assuming it worked.
The app says connected, but webpages won’t load. What should I do?
Check in this order: local network → node → routing → DNS. Change one thing at a time. A latency test response doesn’t guarantee that a webpage request will succeed; the page also requires DNS resolution, proxy authentication, a TLS handshake, and content transfer.
- Disconnect and check whether your local network can reach a page that normally works without a proxy. If it can’t, troubleshoot Wi-Fi, cellular service, or the network sign-in page first.
- Reconnect and test the same destination in Proxy. Then compare results using another existing node from your subscription.
- If Proxy works but Config doesn’t, return to Config and check the matching rule and policy. Don’t reinstall the app as your first step.
- If you see a DNS resolution error, note your current DNS settings and make a backup before changing them. Adjust one setting at a time, then send the request again.
For troubleshooting, record the same node, destination, network, Global Routing mode, and exact error. This is more useful than simply saying “it doesn’t work.” For the full checklist, see the troubleshooting guide.
9. Why does it reconnect after I turn it off? Should I enable On Demand?
On Demand triggers connections based on conditions; it doesn’t select nodes or control rule-based routing. To troubleshoot unexpected reconnects, go to Settings → On Demand and check whether automatic connection conditions are enabled. Also check for other VPN auto-connect configurations in the system.
- During initial setup: connect manually first, then confirm the node, Global Routing, and rules behave as expected.
- To connect based on network conditions: configure On Demand afterward, then test the behavior on the target Wi-Fi, other Wi-Fi networks, and cellular.
- To disable it completely: temporarily turn off On Demand, return to Home, and turn off the connection. Check whether it reconnects.
Don’t assume that connecting automatically means every destination is reachable. Even with the right trigger conditions, an unavailable node, expired subscription, or mismatched rule can affect requests. Set up automation only after you’ve verified things manually.
10. Will my configuration carry over when I change devices or platforms?
Treat app eligibility, configuration data, and your provider’s device limits separately. An app purchased for iPhone / iPad can be downloaded again on devices that meet the App Store account requirements. That doesn’t automatically transfer your subscription or mean your provider allows unlimited simultaneous connections.
Moving to a new device: prepare credentials, then test the connection
Between iPhone and iPad
- Make sure you’re signed in to an App Store account eligible for the purchase.
- Import your subscription again, or check which backups and sync results are actually available.
- Confirm the configuration in Config, then check Global Routing and On Demand.
Moving to another platform
- Choose Mac, Windows, Android, or Linux from this site’s download page.
- Check whether the target platform supports your subscription format and configuration fields.
- Test one node first, then restore rules and automatic connection settings one at a time.
After moving, keep any necessary backups and confirm the new device works before removing sensitive subscription details from the old one.
Whether one subscription can be used on multiple devices, and whether they can connect simultaneously, depends on your provider’s account rules. Copying a configuration doesn’t grant additional access. Menu locations, system permissions, and automatic connection behavior may also differ between platforms.