Official Manual / Troubleshooting

Shadowrocket
FAQ

Identify where the issue occurs, then check each step in order. Purchase history, subscription updates, and connection status are separate issues; you don't need to reset everything at once.

These steps assume you already have your own subscription or server details. Expand a question to read the answer. Keep real URLs, passwords, and authentication details on your own device.

App Store & purchase history

Purchases & App Store

Check the product page and purchasing account before trying to download the app again. App Store search results alone aren't enough to verify a listing.

How can you make sure you're buying the right Shadowrocket app?

Check three details on the App Store product page: the app name is Shadowrocket, the developer is Shadow Launch Technology Limited, and the page URL contains id932747118. Compare the listing with the official app icon shown on this site. Don't rely on a nickname or a similar-looking icon when making a purchase. App Store is the only place to get the app. Check the product page for the current price, system requirements, and compatible devices before buying.

What does the one-time purchase include, and can you connect right after buying?

The one-time purchase gives you the right to use the Shadowrocket client. The US storefront lists it for $2.99; prices in other storefronts are shown in local currency. A one-time client purchase is not a service plan, and a client purchase does not include a service plan. A connection still requires your own subscription or server details. This site does not provide, sell, or recommend servers or subscriptions. Have the required connection details ready before importing them, and check your app purchase status separately from your server service status.

Do you need to buy Shadowrocket again after changing or restoring a device?

Sign in to the App Store with the Apple Account used for the original purchase. Find Shadowrocket in your purchase history, then open its product page to download it again. If the page still shows a price, check your purchase history, current App Store account, and app ID before paying again. Downloading the app again does not restore all servers or Config settings, so save your existing configuration and subscription details before changing devices. Check the App Store page for Family Sharing and universal purchase availability.

Can you install Shadowrocket on iPad, and how do you check an iPhone purchase?

Open the same Shadowrocket product page in the iPad App Store and check compatibility and purchase status. If you're using the original purchasing account, look for an option to download the app again. Check the App Store page for universal purchase availability across iPhone and iPad, as well as system requirements. The two devices may have different screen layouts, but interface labels such as Home, Config, and Settings can help you find your way. Being able to get the app doesn't mean your subscription allows connections from multiple devices at once.

Home / system authorization

Installation & first launch

Complete a manual connection before considering automatic connection conditions. Check the system VPN indicator separately from actual access.

Why does a VPN configuration request appear the first time you connect?

This is a system prompt asking you to authorize adding a VPN configuration. First, make sure the request was triggered by Shadowrocket, which you just opened. Then approve it as prompted and complete any required device authentication. Return to Home to check the connection status. If you previously canceled, try connecting again and see whether the prompt reappears. Adding a VPN configuration allows the client to handle traffic; it does not add server details or confirm that a remote server is available.

What if the connection switch on Home won't turn on or turns off right away?

First, check that SERVER contains an entry and that the server you want to use is selected. Then make sure system authorization for the VPN configuration is complete. Note any error message, pause other connections that are using a VPN configuration, and try again. If device management restrictions apply, check the management policy. If the switch still turns off immediately, check the server details and current network, then try reopening the app. Don't delete all configurations right away; keeping the original details can help identify whether the failure is during authorization or connection.

The interface is in English. What do Home, Config, Data, and Settings mean?

Learn interface labels as you need them; you don't have to memorize every setting at once. Home shows the connection status, Global Routing, and SERVER. Config manages configurations, Data shows traffic-related records, and Settings controls app preferences. Subscribe and Add Server are different ways to add connection details: the former handles subscriptions, while the latter lets you enter server parameters. This guide keeps interface labels in English so you can match them to the app. The layout may change, so follow the interface on your device.

If the system says VPN is connected, does that mean the server is working?

The VPN indicator alone isn't enough to tell. It mainly shows that a local VPN configuration has been established. Actual access also depends on Global Routing, the selected server, DNS, and your current network. Check the selected entry on Home, use Connectivity Test to check reachability, then try the page you need to access. A status change without a successful access test doesn't confirm that the entire connection path is working. One successful test also doesn't guarantee a stable connection over time.

Should you turn on On Demand right after first opening the app?

First, complete a manual connection and verify that you can access the pages you need. Then consider On Demand. It triggers connections under specified conditions; it won't fix subscription or server errors. Before enabling it, read the current conditions, check which network environments will trigger a connection, and observe what happens when switching from Wi-Fi to cellular. If the connection keeps restarting automatically, review the On Demand conditions and other automatic connection settings. Change one setting at a time while testing so you can identify what caused the change.

Subscribe / Add Server

Subscriptions & server import

First distinguish between a subscription URL, individual server details, and shared connection details, then choose the matching import option. Verify the connection even after saving successfully.

Subscribe import failed. What should you check, and in what order?

Make sure you pasted your complete subscription URL, not a product information or login page URL. Check for leading or trailing spaces, line breaks, or missing characters. Then confirm that your current network can reach the subscription URL and that the subscription is still active. If the format isn't recognized, check that the content is a subscription format Shadowrocket can read, rather than a webpage. Don't post your actual URL publicly; its credentials may allow others to access your server details.

How can you add a server if you only have its connection details, not a subscription URL?

Use Add Server, choose a Type based on the server details you already have, then enter the Address, Port, and authentication fields required for that type. The Type must match the remote protocol; don't guess based on the port alone. Whether you need to enter fields such as Password, UUID, or TLS depends on the selected type. Check each value before saving, especially for extra spaces in the address or an incorrect port. Saving confirms that the entry was created; you still need to select the server and test the connection and access.

What if no server appears after importing with Scan QR Code or from the clipboard?

Check that the QR code or clipboard content actually contains server sharing details Shadowrocket can recognize, rather than a regular webpage URL, an image caption, or truncated text. When using Scan QR Code, check camera permission and make sure the image is clear. When importing from the clipboard, allow access when prompted, then look for an import confirmation. After importing, check SERVER and your existing groups so you don't mistake an entry saved elsewhere for a failed import. Shared details may contain credentials, so don't display them publicly.

If a subscription update fails, can you still use the existing servers?

A failed update and the ability to connect to an existing server are separate issues. Check whether the existing entry is still in SERVER, then test it separately. Don't delete the subscription just to retry the update. Troubleshoot by checking your network first, then whether the URL has expired or changed, and finally whether the response matches a supported subscription format. If the current settings include automatic updates on launch, make sure a manual update works before enabling that option. Updates may replace the server list, so save any personal notes and organization details beforehand.

How should you organize duplicate servers from multiple subscriptions?

Add notes to existing subscriptions so you can tell where each one came from. Then compare the Address, Port, and Type of servers with the same name; identical names don't necessarily mean they're the same entry. Once you've confirmed a duplicate, keep the subscription that will continue to be maintained and save any configuration you need before deleting entries. A later update may restore a server manually deleted from a subscription, so consider which subscription it came from. Subscription updates don't sync personal selections and sorting across all devices; check each device after organizing.

Global Routing / Connectivity Test

Routing rules & troubleshooting

Compare the same destination on the same network. First determine whether the connection works, then check whether the rules match as expected.

How do you choose between Config, Proxy, and Direct in Global Routing?

Config uses rules in the selected configuration to determine how traffic is handled. Proxy routes traffic mainly through the selected server, while Direct accesses destinations directly over the current network. For everyday use, make sure Config has the right configuration selected. To troubleshoot, compare Proxy and Direct with the same destination to distinguish rule issues from connection issues. Switching modes won't fix incorrect server details. If the interface also shows Scene, check its settings separately; it isn't one of these three modes.

Connected but can't access the internet? What should you check first?

Temporarily disconnect and confirm that your current Wi-Fi or cellular network can access the internet on its own. Reconnect, then check the selected server, Global Routing, and the destination you're trying to reach. If Proxy also fails, focus on server reachability and authentication details. If Proxy works but Config doesn't, check the rules and policy names. Check DNS and matching records only if some domains fail. Change one thing at a time and note the result; don't reset the network, replace the configuration, and change servers all at once.

Connectivity Test shows very low latency. Why is real-world access still slow?

Connectivity Test reports one measurement using the selected test method; it doesn't measure download speed or the full time it takes to load a webpage. Real-world performance can also be affected by packet loss, remote server load, the destination site, DNS, and your current network. Compare existing servers on the same network using the same test method, then test the same page. Don't keep switching servers based only on the lowest number, and don't assume a brief timeout means a server is permanently unavailable. Test again later to see whether the results are consistent.

A website is using the wrong policy. How do you check rule order?

Make sure Global Routing is set to Config and that the selected configuration is the one you just edited. Rules are generally matched in order. Start by checking the DOMAIN or DOMAIN-SUFFIX condition for the destination, then review the GEOIP and FINAL rules that follow. Also confirm that the policy name exists and is spelled correctly. A broad rule placed too early may prevent a later, more specific rule from matching. After editing, test the same destination again; saving the configuration doesn't by itself confirm that the rule is working.

Battery use increases after connecting. How can you find the cause?

Compare battery usage over similar time periods in system settings. Distinguish screen use, background traffic, and repeated reconnections rather than judging from a single battery change. An unstable server, frequent network switching, continuous testing, or detailed logging can all increase processing. Stop repeated tests first, check the On Demand conditions, and see whether the connection is repeatedly restarting. Then compare behavior on the same network. After making an adjustment, observe the app under similar usage conditions. If the issue persists, save any error messages and troubleshoot one factor at a time.