All-platform client · Official Guide

ShadowrocketGet connected

Cross-platform rule-based proxy client for rule-based routing. iPhone / iPad: $2.99 one-time on the App Store; Mac, Windows, Android and Linux versions are free.

Current version · iPhone / iPad: $2.99 one-time; Mac, Windows, Android and Linux versions are free.

Already have a subscription or server details? See the Quick Start →

Global Routing Config On Demand
PLATFORMS · 2 ways to get it
Configuration workflow

From existing details to rule-based routing

First distinguish server details, subscriptions and configuration files. Server details describe where and how to connect; subscriptions import and update those details in bulk; configuration files determine how connections match rules. Each serves a different purpose: a successful import does not mean a routing mode has been selected. The sections below explain where to find each operation. Rule snippets are syntax examples only and do not include usable connection details.

Choose a policy by matching conditions

Rule-based routing lets different connections use different policies. In Home, open Global Routing and select Config. The client then processes requests according to the rule order in the active configuration. Check the domain or address range first, then make sure the PROXY, DIRECT or REJECT action at the end of each rule matches your intent. Put specific rules before broad ones; FINAL handles connections not matched earlier. After editing, verify the result against actual access and connection records. Do not rely on the connection toggle alone to confirm routing.

  • Global RoutingConfig
  • ConfigCurrent configuration
Rule · Policy
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
DOMAIN-KEYWORD,ads,REJECT
FINAL,DIRECT

Three Global Routing modes

Config applies the rules in the active configuration; Proxy routes connections through the selected proxy; Direct accesses the destination directly. Temporarily switching modes can help narrow down an issue, but restore your original choice when testing is complete. For site-specific routing, check that Config is selected, rules are in the right order and the final policy handles unmatched requests as intended.

PROXY, DIRECT and REJECT in rules are policy keywords, not alternatives to the interface modes. For example, a domain rule ending in PROXY does not automatically switch Global Routing to Config. Editing a file and selecting a running mode are separate operations, so verify each one during troubleshooting. See feature and settings instructions →

Verify first, then expand the configuration

For the first setup, complete a minimal end-to-end check: import your own server details, verify the protocol fields, select an entry, allow the system to create a VPN configuration and try accessing a destination. Once the connection works, add rules and On Demand one at a time. This makes it easier to identify the most recent change if a problem occurs, rather than checking subscriptions, DNS, rules and On Demand conditions all at once.

Data traffic statistics show traffic handled by the client; they are not a measure of remaining subscription quota. iCloud sync is not a substitute for a backup before editing. Review protocol field definitions in the protocol manual, or follow the Quick Start for an initial setup.

Platforms and access

Shadowrocket across platforms

There are two ways to get Shadowrocket: iPhone / iPad costs $2.99 as a one-time App Store purchase; Mac, Windows, Android and Linux versions are free. The device links below lead to the site download page, where you can choose the right file for your processor or operating system. Desktop and Android installers are provided through the site's /dl/shadowrocket/ path; there is no need to identify a filename from the homepage.

iPhone / iPad

App Store $2.99 one-time · Other platforms free

Both devices share the purchase. Check the App Store page for system requirements. On the product page, verify the app ID and developer before completing the purchase as shown by the store. When changing or reinstalling a device, look for the app in Purchased under the original account; confirm the account before paying again.

Mac

Free · Apple Silicon / Intel

Check About This Mac for the chip or processor, then choose the Apple Silicon or Intel version. These installers are built for different architectures, so do not choose based on the device's appearance. If a developer verification prompt appears on first launch, confirm the source and follow the download page's Privacy & Security instructions.

Windows

Free · 64-bit

Get the Windows installer from the download page, save it, then run it. If SmartScreen blocks it, first confirm the file came from this site, then select “More info → Run anyway” to continue. On a managed device, follow your administrator's policies; do not repeatedly disable system protection to resolve an installation issue.

Android

Free · arm64

The Android version of Shadowrocket is available from this site's download page. After saving the installer, if the system reports insufficient permission, use the system settings to allow your browser or file manager to install unknown apps. This permission applies to the app that starts the installation; after installation, you can restore the setting based on your device management preferences.

Linux

Free · deb / rpm / AppImage

Choose a file based on your distribution's package management: use deb for Debian and Ubuntu-based systems, rpm for Fedora-based systems, or add execute permission when using AppImage. The download page has instructions for each format. If launch fails, keep the original terminal message and check architecture, dependencies and permissions before downloading again.

See all platforms →

Access facts and usage boundaries

Verify the genuine Shadowrocket app

Shadowrocket is a closed-source commercial application. This is the official Shadowrocket site and guide. Verify the app using its specific product information, not just search result titles or nicknames. App Store listings for mobile devices and the site's installers for desktop and Android have different access methods, so use the relevant checks for each.

Developer Shadow Launch Technology Limited App ID 932747118 2 ways to get it: iPhone / iPad $2.99 one-time · Other platforms free

01Developer, official icon and app ID

On the App Store product page, check the developer, Shadow Launch Technology Limited; the official white icon with a blue-purple outlined rocket; and app ID 932747118 in the product link. Check all three: a similar name cannot replace the app ID, and a similar icon cannot confirm the developer. The icon used in this site's navigation is a visual reference, but confirm the app on its store product page. Mac, Windows, Android and Linux users can go to this site's download page for their platform; installers use the site's download path.

02Store visibility and account region

Whether an app appears in the App Store depends on the Apple Account country or region, content restrictions and account status. This app is not offered in the mainland China store. If you cannot find it, open the product page to check the message, then review your account region and age restrictions in Screen Time. If you need to change your region, use the system account settings and review the conditions listed by the store; resolve account matters such as balances and subscriptions first. Do not assume a missing search result means your device is unsupported. Refer to the App Store page for compatibility and system requirements.

03Purchase, shared access and restoring purchases

The iPhone / iPad version is a one-time $2.99 App Store purchase, shared across both devices. Mac, Windows, Android and Linux versions are free. The store may show prices in local currency; check the product page before purchasing. After changing devices, sign in to the original account and look for the app in Purchased. If the page still shows a purchase price, confirm the account and store status before paying again. App purchase records and imported data are separate; after restoring the app, also check that your server details and configuration files are restored.

04Client purchase ≠ connection service

Getting the client provides the right to use the app; it does not automatically provide a connectable server. This site does not provide, sell or recommend nodes or subscriptions. Before setup, you should already have your own subscription or server details and confirm they are still valid. If a connection fails, check the client configuration, server status and current network separately. Purchasing the app does not mean a connection service is ready to use. Subscription content, validity and usage depend on the actual status of your existing service; Data statistics are not server-side billing records.

05Update the app and keep your configuration

Manage iPhone / iPad app updates through the App Store. For desktop and Android, get updated installers from this site's download page. The homepage version field is populated dynamically from the download manifest and is not a fixed value to enter manually. Before updating, save important configurations and note the current Global Routing mode and selected server. After the update, check those selections before testing the connection. If only one site has an issue, first inspect its matching rules and DNS rather than resetting everything at once, so you retain useful troubleshooting clues.

06Privacy of configuration and diagnostic records

Subscription URLs, server authentication fields and some diagnostic logs may contain personal access credentials. Before copying a configuration to another device, make sure you control the destination. When reporting an issue, keep only the fields needed to identify the problem and remove real subscription URLs and authentication details. To discuss rule syntax, use an example domain such as example.com instead of exposing connection details in use. Before enabling iCloud sync, review what will sync. On shared devices, check account access and who can access local files.

Common questions before getting started

Why do I still need to select Config after importing a subscription?

A subscription primarily manages the server list, while Config manages rules and related settings. After importing, select a server and confirm the active configuration and Global Routing mode. Select Config only when you intend to route traffic according to the configuration. To review protocol details first, see the concept reference and distinguish “server,” “subscription” and “configuration file.”

Does a successful Connectivity Test mean every website is reachable?

No. Results depend on Test Method, the test target and the network at the time. Actual access also depends on the destination service, DNS, protocol parameters and rule matching. Keep the same network and test method, record a reproducible target, and then change settings one at a time. See the concept reference for related interface terms.

Should I choose the Apple Silicon or Intel version for Mac?

Open About This Mac. Choose the corresponding version if it lists an Apple chip, or the Intel version if it lists an Intel processor. Mac, Windows, Android and Linux versions are free; iPhone / iPad costs $2.99 one-time on the App Store. See the Mac download instructions for access and first-launch steps. Do not guess the chip based on browser detection.

The connection toggle is on. Where should I start troubleshooting?

First confirm the system VPN permission and selected server, then check Global Routing, the active Config, rules and DNS. Change one condition at a time and keep the test results to determine whether the issue is establishing a connection or accessing a destination. For step-by-step interface instructions, continue with the verification steps in the Quick Start rather than deleting all configurations.

Topic guides

App verification, store access and routing rules

These articles cover specific questions about getting the app, finding it in the store and configuring routing rules. Verify the app before handling account or installation steps, and confirm the connection works before expanding your rules. Read the guide for the issue at hand; there is no need to change every setting first.

See all articles →