Official Manual · FAQ

Shadowrocket FAQ

Check four stages: purchase, installation, import, and routing. First identify where the problem occurs, then check one thing at a time and keep the results for comparison.

APP STORE

App Store verification & purchase

Verify the listing first, then check your purchase history and account region. App access and connection services are managed separately.

How can you verify the official Shadowrocket app?

Check all three details on the App Store product page: the developer is Shadow Launch Technology Limited, the app icon matches the official icon used on this site, and the product URL contains id932747118. A similar name or icon alone isn’t enough—open the product details and verify the listing. Once confirmed, purchase, install, and update the app through the App Store. The app page on this site lists the verification steps so you can check each one before paying.

Does buying Shadowrocket include a connection service?

A one-time app purchase is not a connection plan. Buying Shadowrocket gives you a license to use the app; connecting also requires your own subscription or server details, which you get from your service provider. The app’s purchase price and the connection service’s term, data usage, and server status are managed separately and don’t replace one another. This is the official Shadowrocket website and manual. It does not provide, sell, or recommend servers or subscriptions. This page explains how to verify, import, and troubleshoot configurations you already have.

Do you need to buy Shadowrocket again after getting a new iPhone or reinstalling it?

First, make sure you’re signed in to the App Store account used for the original purchase. Then look for Shadowrocket in that account’s Purchased items or app list. If your current store permits it, tap the cloud button to download it again. If the app still shows a price, check the account, purchase history, and storefront before paying again. Restoring the app doesn’t restore all its data; back up existing subscriptions, server details, and Config separately. Eligibility for purchases across devices is determined by the App Store listing.

Where can you check Shadowrocket’s price and Family Sharing eligibility?

Shadowrocket is a paid app with a one-time purchase. The US storefront price is approximately $2.99; the actual price is shown on the App Store page, and other storefronts display local currencies. Check the listed price and your account’s payment method before purchasing. Family Sharing eligibility, which family members can use the app, and Universal Purchase availability are determined by the App Store listing and may depend on family purchase settings. Redownloading, Family Sharing, and syncing configuration data are separate features: they cover access to the app and its in-app data, respectively.

FIRST CONNECTION

Installation & first launch

Check device compatibility on the App Store. Review first-time permission, the connection switch, and automatic connection settings separately.

Can you install Shadowrocket on iPad? Where can you check compatibility with other Apple devices?

Shadowrocket is primarily for iPhone and iPad, and is available from the same App Store product page on both. Check the listing’s compatibility section for Mac, Apple TV, and Apple Vision details. System requirements and Universal Purchase eligibility for all devices are as stated on the App Store page. The iPad layout may vary with screen size, but you should still check configuration imports, Global Routing selection, and connection controls separately. Don’t assume your device is compatible just because the app installs on another device.

What does the system prompt to add a VPN configuration mean when connecting for the first time?

When you first enable a connection, the system may ask you to allow Shadowrocket to add a VPN configuration. This permission is required to establish a system network tunnel. Confirm the prompt is part of the action you just initiated, follow the system instructions to authenticate, then return to the app and check the connection status. This permission won’t enter server details for you or confirm that an existing server works. If your device is managed by an organization or has content restrictions, management policies may control this permission. Check the reason for the restriction first; don’t remove a management configuration unless you know what it does.

The connection switch won’t turn on, or turns off right away. What should you check?

First, check that Home contains a valid server and that the intended entry is selected. Then confirm you’ve granted permission to add a VPN configuration. Turn off other connections using the system VPN tunnel and try again. In Settings, check the VPN management screen for Shadowrocket’s configuration status. If the device has management restrictions, confirm that connections are allowed. Next, check the app’s error message to distinguish a permission issue from incorrect server details. If needed, back up your configuration before fixing confirmed problems; don’t erase all data.

How do you follow the manual when the app interface is in English?

This manual keeps the app’s English interface labels so you can match them directly: Home is where you view servers and connection controls; Config manages configuration files; Settings contains app settings; and Data shows traffic usage. Under Global Routing, Config, Proxy, and Direct mean rule-based routing, proxy routing, and direct connections. To change the display language, check whether Shadowrocket’s app language option is available in Settings. Available languages depend on the app and system options; changing the language doesn’t change what server settings mean.

Battery use increases after connecting. What should you check?

In the system battery usage view, distinguish screen use, background activity, and network activity. Then check Data for changes that may indicate ongoing transfers. Large file syncs, frequent reconnects, and extended detailed logging can all increase activity; an app appearing in the background alone doesn’t indicate a problem. Check whether On Demand is triggering as expected, and avoid repeated connections on an unstable network. Restore normal logging after troubleshooting. For a useful battery comparison, keep the network, screen-on time, and usage similar; a single short-term reading isn’t enough to identify the cause.

SUBSCRIBE & ADD SERVER

Subscription & server import

Import only content you already have. Check its format and completeness first, then verify the list, selected entry, and connection results.

How do you import an existing subscription into Shadowrocket?

Get an existing subscription link for Shadowrocket from your service provider. In Home, open the add option, choose Subscribe if that’s what the current interface shows, and enter the link. Save it, then update the subscription. After importing, check that servers appear in the group and manually select the one you want to use; saving a subscription doesn’t establish a connection. Links may contain credentials, so copy them in full without chat text, spaces, or line breaks. Don’t include the complete link in a public screenshot. Field labels may vary by app version.

Subscription import fails or the list is empty after an update. How can you troubleshoot it?

Check that the link is complete and still valid, and that your current network can reach its address. Then confirm the response is subscription data the app can read—not a login page, error message, or regular webpage. A link opening in a browser doesn’t prove its format is correct. If the list is empty after importing, note the app’s message and ask your service provider to confirm the subscription format and account status. Keep existing working groups and avoid repeatedly deleting and recreating them before you identify the problem. Hide any credentials in the link when sharing an error report.

What changes when you update a subscription, and why did a server name change?

Updating a subscription fetches the server list returned by its link. Names, addresses, ports, and available entries may change with that response. Before updating, note the currently selected server. Afterwards, check that the intended entry is still there; select it again and test if needed. Don’t assume manual changes to subscription entries will persist—record important edits separately. Updating a subscription is different from updating the app through the App Store. Updating the server list also doesn’t update rules in Config; check both separately.

Scan QR Code can’t recognize existing server details. What should you do?

Make sure camera access is allowed and position the entire QR code clearly in the viewfinder. Avoid glare, cropped edges, and excessive zoom. Scan QR Code requires data in a supported server or subscription format; a QR code for a regular webpage isn’t a server configuration. If you only have a screenshot, check whether the app offers an option to scan from an image. If it still fails, get the original link or complete details from your service provider and enter them using the appropriate add option. Don’t guess missing protocol fields.

Which fields are easiest to get wrong when adding a server manually?

Check the protocol first, then enter the server address, port, and authentication details one by one. Fields for Shadowsocks, Trojan, Hysteria2, WireGuard, and other protocols aren’t interchangeable. The address field usually takes a hostname or IP, not a webpage URL with a path. Match TLS, SNI, and other transport settings to the original configuration; don’t bypass errors by disabling verification. Save and test one entry before checking routing rules. Use only complete details you already have, and ask your service provider about anything missing.

ROUTING & DIAGNOSTICS

Routing rules & troubleshooting

Distinguish the system tunnel, server reachability, and rule matching. Interpret test results in the context of the destination you’re trying to reach.

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

Config applies the rules in the currently active Config to decide how requests are handled, making it suitable for everyday use once you’ve checked the rules. Proxy sends requests on this route through the selected proxy and can help test a server connection. Direct lets you compare access over your current network without a proxy. When troubleshooting, change one setting at a time, test the same destination, and record the result. These modes change routing behavior; they won’t fix incorrect authentication details or replace a working server. Restore your preferred mode when testing is done.

It says connected, but webpages still won’t load. What should you check, and in what order?

Connected only means the system tunnel is established; it doesn’t mean every destination is reachable. First, confirm your current network works. Then check the server selected in Home and run a basic Connectivity Test. Compare the results under Proxy and Config in Global Routing: if both fail, check the server and authentication details first; if only Config fails, focus on rules and DNS. Test another destination so you don’t mistake one website’s outage for a general connection problem. Don’t change the protocol, DNS, and rules all at once, or you won’t know which change mattered.

The rules look right. Why aren’t requests being routed as expected?

Make sure Global Routing is set to Config and that the active configuration is the one you just edited. Rules in Rule are generally matched from top to bottom, so a broad condition near the top may match first. FINAL should be the fallback when no earlier rule matches. Check what DOMAIN, DOMAIN-SUFFIX, and IP-CIDR match; a domain suffix rule isn’t equivalent to an IP rule. Use request logs to check the actual domain, destination IP, and matched policy. After each change, save it, confirm it’s active, then repeat the same request for comparison.

Why does the connection come back after I disconnect with On Demand enabled?

On Demand triggers a system connection when its configured network conditions are met. If you disconnect manually and those conditions apply again, the system may reconnect. To pause automatic connections temporarily, check and disable the relevant On Demand setting before turning off the connection switch; switching it off once may not change the automatic trigger conditions. On Demand controls when to connect; Global Routing and the current Config control how requests are handled. Verify changes on both your usual Wi-Fi and cellular networks rather than assuming results will be the same everywhere.

Connectivity Test shows a result, but apps still can’t connect. Why?

Connectivity Test reports results for its current test method and destination; it doesn’t guarantee that every website, protocol, or request will work. Check that the test used the same server entry as your active connection, then look at the failing app’s destination, DNS resolution, and matched rule. If only one app has a problem, try opening the same destination in a browser on the same network and check the request logs. Data traffic readings show that data moved, but don’t prove that an app’s task succeeded. When reporting an error, include the relevant symptoms but hide server credentials and private browsing details.

Back to categories ↑