Troubleshooting / FAQ
Shadowrocket FAQ
Start by verifying the App Store listing and the app’s current status, then troubleshoot the relevant step. The checks below assume you already have your own subscription or server details. Interface labels are kept in English so you can match them directly in the app.
01 / App Store
App verification and purchase
Check the app name, developer, and app ID together. Purchase status depends on the account record in the App Store.
What should I check if Shadowrocket doesn’t appear in App Store search?
Open the App Store product page linked from this site’s app page and check whether you can view the listing for app ID 932747118. If the page isn’t available under your current account, check the country or region in your App Store account settings. If you need to change it, follow Apple’s official process for changing your country or region. Availability and purchase requirements vary by storefront; check the details on the App Store page rather than relying on the search result name alone.
How can I verify that an App Store listing is the genuine Shadowrocket app?
Check the product page for the name Shadowrocket, the developer Shadow Launch Technology Limited, and app ID 932747118 in the link. Also compare the product page icon with the official icon in this site’s header. Search results with similar names are not a substitute for these details. Once verified, purchase the app or check its purchase status from that product page.
What else do I need after buying Shadowrocket?
Shadowrocket is a one-time purchase on the App Store. The US storefront lists it at about $2.99; the current price depends on the storefront. Buying the app does not include a connection plan: the purchase gives you the client, but connecting still requires your own existing subscription or server details. This site explains configuration and does not provide connection resources.
Do I need to buy Shadowrocket again when I get a new iPhone?
On your new device, first make sure the App Store is signed in with the Apple Account used for the original purchase. Then check the account’s purchased items or the Shadowrocket product page for its purchase status. Whether it appears as purchased depends on your account and the store’s records. If it doesn’t appear, verify the purchase account and storefront, then follow the App Store purchase history and support steps. App purchase history and server configurations in the app are separate; check both before switching devices.
See the full App Store authenticity checklist →
02 / First open
Installation and first launch
Get the app from the App Store. On your first connection, distinguish system authorization, server selection, and connection status.
Can I install and use Shadowrocket on an iPad?
Open the same Shadowrocket product page in the App Store on your iPad to check compatibility and the purchase status for your account. System requirements are as listed on the App Store page. If you bought it on an iPhone, check your purchased items using the original purchase account. After opening the app, confirm that your configuration is imported on the iPad; an app purchase does not mean configurations are synced.
What is the VPN configuration permission prompt on first launch?
When Shadowrocket connects, Apple’s system may ask you to approve a VPN configuration. First confirm that Shadowrocket initiated the request, then follow the on-screen steps to grant permission. Return to the app and check the connection status on Home. If you previously denied the prompt, check the relevant VPN configuration in system settings and try connecting again from the app. System screens and prompts may vary by device.
The connection switch on Home won’t turn on. How do I troubleshoot it?
Make sure you’ve imported your own server details and selected the server you want to use. Then check that you’ve completed the system authorization required for the first connection. If the switch turns off immediately, check the error message in the app and the VPN configuration status in system settings. Next, try a network you know is working, reopen the app, and try again. Don’t rely on the switch animation alone to confirm a successful connection.
The interface is in English. How do I follow a guide?
This site keeps the app’s English interface labels so you can find them on screen: Home shows connection status, Config manages configurations, Add Server is for entering server details manually, Subscribe adds an existing subscription, and Global Routing selects a routing mode. If the layout or wording on your device differs from the guide, use the entry shown in the app. Identify the relevant function before proceeding.
Follow the steps in the quick start guide →
03 / Config
Importing subscriptions and servers
First determine whether the issue is with the link request, parsing its contents, or entering server details manually. A successful save doesn’t necessarily mean the import is complete.
My existing subscription link won’t import. What should I check first?
In Config, open Subscribe and check that the pasted text is complete, especially that there are no spaces or line breaks around the link. Make sure you copied the full link for your own existing subscription, not its description. If the app reports a request or parsing error, check separately whether your current network can reach the link and whether the subscription is active with your provider. Note the error shown in the app, then narrow down the cause by checking the link, network, and content in turn.
Subscribe says the link was added, but the server list is empty. What should I do?
A successful save only means the link was stored in Subscribe; it doesn’t mean the link returned usable server entries. Manually update it once and check for a parsing message. Then verify that the link was copied in full, is still accessible, and returns a configuration Shadowrocket can read. If the list is still empty, ask the original provider to check the contents of your existing subscription. Don’t keep adding the same link and creating duplicate entries.
Which fields must match when I add a server manually in Add Server?
Select Type based on your own server details, then check Address, Port, and the authentication fields. Depending on the Type, you may also need settings such as UUID, Password, TLS, or SNI; use your server details and the fields currently shown in the app. Remark is only a label for identifying the entry and cannot replace connection parameters. Save the entry and select it. If the connection fails, compare Type and authentication fields first rather than repeatedly changing only the remark.
A subscription update didn’t change the list. What should I check?
In Config, find the relevant Subscribe entry and update it manually. Check the completion status or error message shown in the app. Make sure you’re viewing entries from this subscription, not servers in another configuration. If you have several subscriptions, identify each by name before comparing lists. If the update completed but nothing changed, check whether the original link actually returns different data; refreshing won’t create new entries on its own.
See the server management guide → for field details and tips on organizing multiple subscriptions.
04 / Routing
Routing rules and troubleshooting
Check the routing mode first, then test the network, server, and rules separately.
How should I choose Config, Proxy, or Direct in Global Routing?
The three modes correspond to configuration-based routing, proxying, and direct connections. Config uses the rules in the current configuration to decide how to handle each request, and is suitable for everyday use once you’ve checked the rules. Proxy and Direct let you compare what happens when traffic is routed through a proxy or connected directly. When troubleshooting, note the original selection, switch modes briefly for comparison, then restore the mode you need. Keywords such as PROXY and DIRECT depend on the actual configuration.
It says connected, but webpages won’t load. What should I check first?
First, check that your device can access commonly used sites on the current network. Then check the selected server and Global Routing mode in Shadowrocket. If only some sites fail, review the rules and DNS settings in the current Config. If all requests fail, run Connectivity Test in the app to check your existing server. Treat the results as clues and consider your own server details and network conditions when diagnosing the problem.
On Demand is using more battery. Should I keep it enabled?
Check Shadowrocket’s battery usage on your device and note when you use it and whether the network changes during those periods. On Demand attempts to connect when its conditions are met; frequently triggered rules may increase the number of connections and reconnections. Temporarily turn off On Demand and compare battery use under similar conditions, then decide whether automatic connections are worth enabling. One comparison isn’t enough to identify the cause, so also consider signal strength and other background activity.
Rules aren’t routing traffic as expected. How do I find the cause?
Make sure Global Routing is set to Config, then check that the active Config is the one you intend to use. Compare the destination domain or address against rules such as DOMAIN, DOMAIN-SUFFIX, GEOIP, and IP-CIDR, paying particular attention to rule order and earlier matches. Then use the app’s connection or diagnostic details to check how the traffic was actually handled. Keep a copy of the original configuration before editing rules so you can restore it after testing.