Shadowrocket
FAQs and Troubleshooting
First identify where the issue occurs, then open the relevant answer. Save a copy before changing configuration. Change one setting at a time so you can confirm the result.
Select a question to expand the answer. For the full walkthrough, see the setup guide. To get the app, visit Downloads.
Genuine App and Purchases
Check your platform, store listing, and purchase account before troubleshooting downloads or restoring the app.
Can I use Shadowrocket on a computer or Android? What does it cost?
Yes. The iPhone and iPad version costs $2.99 as a one-time App Store purchase. The Mac (Apple Silicon and Intel), Windows, Android, and Linux versions are free. Get desktop and Android installers from this site’s download page; the files are served from /dl/shadowrocket/. Buying the app is a one-time purchase, not a service plan. You’ll need to provide your own subscription or server details to connect; this site does not provide, sell, or recommend servers or subscriptions.
How can I verify the genuine Shadowrocket listing on the App Store?
Open the App Store product page linked here and check the name, Shadowrocket; the developer, Shadow Launch Technology Limited; and the app ID, 932747118. Compare the listing with the official icon in this site’s header. Don’t rely on a search result’s name or a similar-looking icon alone. The iPhone and iPad version costs $2.99 as a one-time App Store purchase. The Mac, Windows, Android, and Linux versions are free; download installers for other platforms from this site.
What should I check if Shadowrocket doesn’t appear in App Store search?
First, open the product page linked here and check the store message. Then check the country or region set for the Apple ID used with the App Store. The app isn’t available in the mainland China storefront. Your device language and physical location don’t determine your account’s storefront. If you need to change the region, follow Apple’s process in Settings: Apple Account → Media & Purchases → View Account → Country/Region. Check any requirements for account balance, active subscriptions, and payment methods first. Don’t keep changing your device’s region to try to resolve this.
Do I have to buy Shadowrocket again after changing devices or reinstalling it?
On iPhone or iPad, sign in with the Apple ID used for the original purchase, find Shadowrocket in App Store purchases, and download it again. You usually won’t need to buy it again. The iPhone and iPad version costs $2.99 as a one-time App Store purchase; the Mac, Windows, Android, and Linux versions are free. Your purchase history and in-app configuration are separate: reinstalling won’t automatically restore all servers and rules. Back up your configuration before changing devices. After restoring it, check the current Config and any existing subscriptions before connecting.
Can I install Shadowrocket on iPad? How does it share purchases and settings with iPhone?
Yes. The iPhone and iPad version costs $2.99 as a one-time App Store purchase and works on both devices. The Mac, Windows, Android, and Linux versions are free. On iPad, sign in with the Apple ID used for the purchase and download Shadowrocket from your App Store purchases. Check the App Store listing for system requirements. Check separately whether your configuration has been restored; a completed download doesn’t mean your settings have migrated. On first use, follow the system prompt to allow a VPN configuration and make sure the imported server details are complete.
Installation and First Launch
Check the file’s source and your device’s architecture first. If the system reports a specific risk, review the reason instead of broadly allowing the file.
Which Shadowrocket download should I choose for my Mac: Apple Silicon or Intel?
Open About This Mac from the Apple menu. If it shows Chip and an Apple chip model, choose the Apple Silicon version. If it shows an Intel processor, choose the Intel version. Don’t guess based on the Mac’s appearance or purchase year. Both DMG files are available on this site’s download page. If you see a developer verification warning the first time you open the app, confirm it came from this site, then choose Open Anyway under Privacy & Security in System Settings. If device management restrictions apply, contact your administrator.
How should I handle a Windows SmartScreen warning?
First, make sure you got the installer from this site’s download page and that it’s a Windows installer. If SmartScreen says “Windows protected your PC,” select More info, verify the file, then choose Run anyway. If that option isn’t available or security software reports a specific threat, stop and review the blocking details. Don’t disable system-wide protection to force the installation. Computers managed by an organization may block unapproved software; ask an administrator for permission.
What should I do if my Mac says the developer can’t be verified or the app is damaged?
Confirm that you downloaded Shadowrocket from this site and chose the right version for your Mac’s chip. Move Shadowrocket to Applications before opening it. If macOS can’t verify the developer, find the corresponding block notice under Privacy & Security in System Settings and choose Open Anyway. If macOS says the app is damaged, download it again to rule out an incomplete file. After confirming the source and path, you can run xattr -cr /Applications/Shadowrocket.app in Terminal to remove the app’s quarantine attribute, then try again. This command applies only to that path; don’t run it on an entire folder or disk.
What should I do if Android won’t install the app or a download won’t start in WeChat?
If the download won’t start in WeChat, use the page menu to open this site’s download page in your system browser, then download the Android arm64 APK. If installation is blocked, open System Settings and allow the browser or file manager that started the installation to install unknown apps. You can turn this permission off afterward. If the app is incompatible, check your device architecture and make sure the download is complete. If the system reports a specific security risk, find out why before proceeding; don’t keep dismissing warnings or broaden system permissions.
Which Linux package should I choose: deb, rpm, or AppImage?
For Debian- and Ubuntu-based distributions, choose deb. For Fedora and other distributions that use rpm package management, choose rpm. For other environments, check whether AppImage is suitable. Download all installers from this site. Install a local deb file with apt and a local rpm file with dnf. For AppImage, first make the downloaded file executable with chmod +x, then run it. Use the actual downloaded filename in commands. If you see a dependency or architecture error, address that message first; don’t mix packages from different distributions.
Subscriptions and Server Imports
The steps below assume you already have your own subscription or server details. When reporting an issue, redact credentials in URLs and any personal information.
What should I check first if importing an existing subscription fails?
Make sure you copied the subscription URL provided by a service you already use—not an account dashboard or instruction page. Check for leading or trailing spaces, line breaks, and a complete URL. Try again on your current network and note whether the issue is a timeout, authentication failure, or unrecognized format. For an authentication error, check that the URL is valid. If the request succeeds but the response can’t be parsed, check the returned content and whether it uses a supported format. Don’t post a full URL containing access credentials publicly. When reporting the issue, include only the error type and redact sensitive details.
When should I use Scan QR Code or Add Server?
If you have a QR code for a server, use Scan QR Code and grant camera access when prompted. If you only have a list of parameters, use Add Server to enter the protocol, address, port, and authentication details. Scanning is just an input method; it doesn’t guarantee that every field is correct. Before saving, make sure the QR code contains compatible server details. After saving, compare the transport, TLS, server name, and other parameters with the original information. Don’t mistake a service’s login-page QR code for a server QR code or share an image that contains connection credentials.
How do I update Subscribe, and what should I save first?
Update the existing Subscribe entry, then check that the server list refreshed and the previously selected server is still there. Note your current selection before updating and save a copy of any important configuration. Avoid layering extensive manual changes onto entries that a subscription update may overwrite. If an update fails, keep the existing content and check your network, subscription URL, and the service’s response. There’s no need to delete the entire entry right away. Updating a subscription and updating the app are separate: refreshing the server list doesn’t update Shadowrocket.
What if a subscription update succeeds but shows no servers or removes existing entries?
Make sure you’re viewing the right subscription group and check whether search or filters are enabled. Then check whether the service’s response actually contains server entries. A success message may only mean the request completed; it doesn’t guarantee the returned content is as expected. If an update removed entries, don’t recreate them from memory using old names. Compare them with your existing information or a backup. Note the update time, any errors, and which entries changed. When contacting the service, redact passwords, access credentials, and personal information; don’t forward the full configuration.
After importing a server, do I also need to select a Config?
Server details and Config serve different purposes: server details describe how to connect, while Config determines how connections are handled by different policies. Importing a server alone doesn’t enable the traffic rules you expect. Before using Config with Global Routing, check the active configuration, rule order, and policy names, and make sure each rule’s policy points to an available target. Save a copy before editing. Don’t add rules from an unknown source just to make a configuration look complete, and don’t confuse subscription updates with switching rule configurations.
Rules and Troubleshooting
Check the underlying network, server connection, and rule handling separately. Avoid changing several things at once, so you can identify the cause.
What should I check if the connection switch won’t turn on or turns off right away?
Make sure you’ve selected a working server and granted the VPN configuration permission required by your system. On iPhone or iPad, check the VPN-related settings in System Settings to confirm permission is in place, then try again in Shadowrocket. Also check for conflicts with another VPN connection or a device management policy. If the connection still drops immediately, review the app logs to distinguish permission issues from configuration parsing or connection parameter errors. Back up your configuration before deleting it or reinstalling the app. Don’t keep clearing all data to troubleshoot; ask an administrator about restrictions on a managed device.
How can I narrow down the cause if Shadowrocket says connected but I can’t access the internet?
Disconnect first and confirm that your Wi-Fi or mobile network can load ordinary web pages. Reconnect and run Connectivity Test for the selected server. If the test passes but web pages don’t load, check Global Routing, the current Config, policy target, and DNS. If only some domains fail, check which rule matches those domains. If the test also fails, check the server address, port, authentication details, and system time. Change one thing at a time and test again, noting what’s affected. Don’t change the server, DNS, and entire configuration all at once.
How do I choose Config, Proxy, or Direct in Global Routing?
Config handles connections according to the rules in the current configuration, making it suitable when you’ve checked your rules and policies. Proxy sends connections through the selected proxy target and can help with comparisons during troubleshooting. Direct connects straight to the destination and can help check the underlying network. These are connection-handling modes, not speed settings, and none will fix incorrect server parameters. Choose based on your needs. When troubleshooting, note the original mode and restore it after comparing. In Config mode, check the first matching rule and FINAL so you don’t mistake a rule outcome for a server problem.
Where should I start if Shadowrocket’s interface is in English?
Start by matching the interface labels to their functions: Home shows servers and connection status; Add Server is for entering server details; Config manages rule configurations; Settings contains app settings; and Global Routing selects how connections are handled. The displayed language may depend on your system’s per-app language settings and the languages supported by your current version. Check the app’s language options in System Settings; if there isn’t a relevant option, use the interface as displayed. This guide keeps interface labels in English so you can match them directly. You don’t need to rewrite rule keywords in your configuration to follow the steps.
How can I tell why battery use increases when I’m connected?
Compare similar usage periods in your system’s battery statistics. Downloads, video, weak signal, and frequent network changes can all increase battery use. VPN traffic may be attributed to the app, so a single percentage doesn’t prove something is wrong. Check whether Connectivity Test or detailed logging is running continuously, or whether the connection is repeatedly retrying. Also check whether On Demand keeps triggering. Change one factor at a time and note foreground and background use. If the device keeps heating up after high-traffic tasks stop, use the logs to investigate connection loops and server availability.
After an update causes problems, should I reinstall first or check the configuration?
Keep your existing data and check the configuration first; don’t make reinstalling your first step. Note whether the issue occurs on launch, during connection, or with specific domains. Check whether the selected server, Global Routing, Config, or system permissions changed, then test again on the same network. Check for app updates through the App Store on iPhone or iPad. For desktop and Android, check the current installer on this site’s download page. If you need to reinstall, export the necessary configuration first and make sure it can be restored. After reinstalling, test with a minimal configuration, then restore other settings gradually so the original problem doesn’t come back with them.