Official Manual · FAQ
Shadowrocket FAQ
Check each step from purchase status to actual traffic. Keep your current configuration and change one condition at a time. Expand a question to see the full steps.
If you haven’t installed the app, first read how to verify the genuine App Store listing and purchase Shadowrocket. For first-time setup, follow the complete guide.
01 / APP STORE
App Store & Purchase
Check the App Store listing and purchasing account first, then review availability, purchase restoration, and device compatibility.
Can’t find Shadowrocket in the App Store? What to check first
Open the product page from this site’s App Store guide to rule out search terms or ranking issues. If the store says the app isn’t available in your region, check the country or region for the Apple Account used for Media & Purchases; changing your device language alone won’t help. If you need to change your region, use the Media & Purchases, View Account, and Country/Region options in Settings. Review any restrictions on your balance, subscriptions, and payment method before following Apple’s process. Availability is determined by the current App Store listing.
How can I verify that the Shadowrocket App Store listing is genuine?
On the product page, check all three details: the app is named Shadowrocket, its icon matches the official icon shown on this site, and the developer is Shadow Launch Technology Limited. Also confirm that the product page URL contains app ID 932747118. Don’t rely on the name in search results alone or mistake the manual’s site name for the developer’s name. Then check the price, compatibility, and purchase confirmation details in the App Store. If anything doesn’t match, review this site’s guide to verifying the listing before proceeding.
Do I need to buy Shadowrocket again after getting a new iPhone or reinstalling it?
In most cases, you can get Shadowrocket again from your App Store purchase history using the original purchasing account; reinstalling doesn’t mean making a new purchase. First check which account is used for Media & Purchases, then search for the app under Apps or Purchased on the account page. Menu names may vary by system version. If a price is still shown, check your purchase history, store region, and the app’s current availability before proceeding. Getting the app again does not restore local configuration, so keep your subscriptions and server details and import them again as needed.
Does the one-time purchase include a connection service?
No. A one-time purchase of the app is not a service plan. It gives you the right to use Shadowrocket; you must provide your own subscription or server details for connections. The US price is about $2.99, but the actual price, currency, and purchase terms depend on the App Store listing. This is the official site and manual; it does not provide, sell, or recommend servers or subscriptions. Before purchasing, distinguish the app purchase from the status of any connection service you already use. Their restoration, validity periods, and payments must be checked separately.
Can I install Shadowrocket on iPad? Where can I check support for other Apple devices?
Shadowrocket is primarily for iPhone and iPad, and you can get it on iPad from the App Store as well. If you’re using the original purchasing account, check your purchase history and the product page’s availability before paying again. Check the App Store listing for details on whether the purchase applies across devices. The same listing’s compatibility section shows support for Mac, Apple TV, and Apple Vision. System requirements are as listed on the App Store page. App purchase status and configuration data are separate, so on iPad make sure you’ve imported your own configuration and completed the initial connection authorization.
02 / FIRST CONNECTION
Installation & First Launch
Keep app access, system authorization, and local configuration separate; they’re different steps.
What is the VPN configuration permission requested when I first open the app?
When you connect for the first time, the system may ask permission to add a VPN configuration. This authorization is needed to establish a system network connection; it does not mean you already have a usable server. First make sure you opened the verified Shadowrocket app, then read the system prompt and authorize with your device passcode or system authentication as requested. Return to the app and check the selected server and Global Routing. If you dismissed the prompt earlier, try connecting again. If a managed device prevents VPN configurations from being added, check with its administrator rather than repeatedly toggling the connection switch.
The connection switch on Home won’t turn on. What should I check, in order?
Make sure you’ve imported your own server details and selected a server, then try connecting and check for a pending system authorization prompt. If the switch immediately turns off again, note the error shown by the app or system. Check whether a VPN configuration exists, whether the device is managed, and whether another VPN connection is active. Disconnect other connections first, then try Shadowrocket again. Restart the app or device only as a later step. Before removing a system VPN configuration, keep a copy of your app configuration. Don’t start by reinstalling, and change one setting at a time.
The interface is in English. Which items should I learn first?
Start with the names and their functions: Home shows servers and controls the connection; Add Server adds existing server details; Config manages rule configurations; Settings contains app settings; and Global Routing determines how traffic is handled. This manual keeps these English names so you can match them to the interface. Check whether the system offers a language setting for the app; available options depend on your device and app. Device region, App Store region, and app display language are separate settings, so don’t change your purchase region just to change interface text.
Why don’t my iPhone configurations appear after installing Shadowrocket on iPad?
Using the same purchasing account confirms your eligibility to get the app, but it doesn’t guarantee that local server lists, Config, or connection authorization will automatically match across devices. On iPad, import your own saved subscription or configuration, then check the selected server, Global Routing, and system authorization. If you use an app-provided data transfer method, check whether the exported data contains sensitive information and store it somewhere only you control. In landscape orientation, some iPad content may appear in columns. Check which list item is selected before proceeding so you don’t mistake another configuration for the active one.
How do I update Shadowrocket, and what should I back up first?
Update the app through the App Store. Check the available options in your store account’s updates list or on the product page, or use the system’s automatic update setting. Before updating, keep the original URL for any subscription you use, essential server parameters, and a copy of any edited Config—especially rules and Host entries you maintain manually. Updating the app and updating a Subscribe item are different: the former updates the client; the latter refreshes the data returned by a subscription. If something goes wrong after an update, record what happened and your current settings. Don’t immediately delete the app and risk losing local data.
03 / SUBSCRIBE
Subscriptions & Server Imports
These steps assume you already have your own subscription or server details. Verify the source information first, then check the import results.
How do I import an existing subscription into Shadowrocket?
Get a subscription URL from your own provider and confirm it’s specifically compatible with Shadowrocket. Copy the entire address, making sure it contains no line breaks, leading or trailing spaces, or punctuation added by a messaging app. In Add Server, select Subscribe, enter the address in the URL field, and save it. Then update the subscription. Once imported, check that servers appear and that their names and protocols match your existing details, then select one to test. A subscription URL may contain credentials, so treat it like a password. Don’t post the full URL publicly or paste it into an unfamiliar online tool.
Subscription import failed. How can I tell whether the problem is the URL, network, or format?
Record the full error first. Then check whether the URL was copied in full, has expired, or is associated with an active service account. If you see a timeout or a domain lookup error, check your local network and whether the subscription domain is reachable. If the response is a login page, webpage text, or a parsing error, ask the original provider whether the URL and response format are compatible with Shadowrocket. A page opening in a browser does not prove it has a valid subscription format. Don’t repeatedly reset the app. Change one condition at a time; if needed, test on your own Wi-Fi and Cellular connections separately. Keep the original configuration so you can revert.
How do I update a subscription? What if the update succeeds but no new servers appear?
Find the existing Subscribe item and update it. When the process finishes, check its server list again. A successful update usually means the data was retrieved and processed; it doesn’t guarantee that the content changed. Check whether your provider actually changed the subscription and whether you’re viewing the same subscription group. After updating, make sure the previously selected server is still there. If its name changed, select an available server again. Use the app’s actual options to manage automatic updates and avoid refreshing repeatedly in a short period. Before relying on local edits, test on a copy to see whether an update overwrites them.
Manual Add Server setup still fails. Which fields should I check?
Compare the protocol, address, port, and authentication fields with your own server details. Then check the transport and TLS settings required by that protocol. For example, Trojan parameters such as the password and server name must match the server; entering only the address isn’t enough. Fill in other protocols according to their own details rather than reusing the same fields. Look for full-width characters, spaces introduced while copying, or explanatory link text pasted into a field by mistake. After saving, select the server and compare Connectivity Test results with actual access. Don’t share passwords, keys, or complete connection links while troubleshooting.
Scan QR Code didn’t work, or importing created duplicates. What should I do?
Make sure the QR code comes from your own server or subscription details and that the image is clear with all edges visible. Then use Scan QR Code. The result may be a single server or a subscription URL, so inspect the imported content rather than assuming a successful scan means the connection works. If repeated imports create multiple entries, compare their addresses, ports, protocols, and associated subscriptions before cleaning them up; keep a copy so you can revert. Don’t assume servers with the same name are duplicates if their authentication details differ. For subscription entries, check whether the next update will recreate them.
04 / ROUTING & DIAGNOSIS
Advanced Rules & Troubleshooting
Check your local network first, then the server, DNS, and rules. Match test conditions to those used for actual access.
How should I choose between Config, Proxy, and Direct in Global Routing?
Config applies the rules in the currently active configuration and is suitable for everyday rule-based routing. Proxy routes general traffic through the selected proxy and can serve as a temporary comparison when checking whether rules are causing an issue. Direct is useful for testing a direct connection. None of these modes replaces valid server details or guarantees that all app traffic will be handled the same way; system behavior and related settings also matter. Note the original mode before switching, test the same destination, then restore it. If Config fails but Proxy works, start by checking the matching rules in the active Config.
It says connected, but I can’t access the internet. Which layer should I check first?
A connected status means the system connection is established; it doesn’t confirm that the remote server, DNS, or destination website is working. Disconnect first and check whether your local network can access the internet. Then reconnect and check the selected server and Connectivity Test. Compare the same destination in Config, Proxy, and Direct without changing the protocol and DNS at the same time. If only domain names fail, check DNS resolution and Host overrides. If only certain sites fail, check the matching rules and the sites themselves. Record when the issue occurred, your network type, and the error. Remove credentials before asking your own provider to check server status.
I’ve added a rule. Why is the request still using the wrong policy?
First confirm that Global Routing is set to Config and that the edited configuration is the one currently in use. Rules are generally matched from top to bottom, so an earlier match can determine the result. Check whether an earlier DOMAIN, DOMAIN-SUFFIX, or other rule matches the destination, and keep FINAL as the last fallback. Also make sure the policy name is valid and that the server used by PROXY is working. Editing an inactive file won’t affect the current connection. Use the app’s available connection logs to check the actual destination and policy. Save a copy before editing, change one rule at a time, and make a new request to verify each change.
Connectivity Test returns a result, but actual browsing is still slow. Why?
Connectivity Test measures connectivity under specific test conditions; it isn’t the same as real download speed or the experience on every website. Keep the destination and server fixed while checking your local Wi-Fi, Cellular connection, remote server status, and protocol settings. Changing networks and rules at the same time makes results hard to compare. Check which policy actual traffic uses and make sure the test and your connection use the same server. If only one destination is slow, check that site and its DNS results separately. Recording test conditions is more useful than repeatedly refreshing; one number alone doesn’t tell you how good the connection is.
Increased background battery use: how should I troubleshoot On Demand?
Check app activity for the same period in the system’s battery usage view. Consider screen time, network switching, and large transfers too; the VPN indicator alone doesn’t identify what used the battery. Then check whether On Demand triggers repeatedly as you switch between Wi-Fi and Cellular, or whether an unavailable server is causing repeated reconnects. Keep your original settings and compare continuous and on-demand connections, changing one trigger condition at a time. On Demand controls when a connection is triggered; it does not guarantee a fixed battery saving. After testing, confirm that the expected scenarios still connect or disconnect correctly.