A cross-platform rule-based proxy client for routing traffic with rules. iPhone and iPad: $2.99 once on the App Store; Mac, Windows, Android and Linux: free.
Shadowsocks / VMess / VLESSConfigDOMAIN-SUFFIX / FINAL
iOS / macOS / Windows / Android / Linux2 ways to get itImport an existing subscriptionRoute traffic by rule
Feature Guides
From Configuration to Rule Matching
First, distinguish server details, configuration files and routing modes. Server details determine where to connect; a configuration file defines how requests are handled; Global Routing selects the current handling mode. Before editing, confirm which item is active so you can troubleshoot without making repeated changes.
Global Routing · Config
Rules: Order Determines the Result
Rules are checked from top to bottom, and processing stops at the first match. To route traffic according to a configuration, select Config under Global Routing, then check the active file in Config. DOMAIN-SUFFIX matches domain suffixes; IP-CIDR matches IP ranges; put FINAL last as a fallback. PROXY sends traffic to the proxy policy, DIRECT connects directly, and REJECT blocks the request. When troubleshooting a website, find the rule that actually matched. Avoid changing several rules at once, or it will be harder to identify the cause.
On Demand: Test the Connection Before Setting Triggers
On Demand starts connections when specified network conditions are met, which can reduce the need to toggle the connection manually. In Settings, open On Demand, review the current conditions, then adjust them one at a time. First use the manual switch to confirm that your existing server connects; otherwise, incorrect conditions and server issues can compound. Check the status separately on Wi-Fi and cellular networks. If the connection starts again after you turn it off manually, review the On Demand triggers instead of repeatedly deleting configurations.
Check in this order
Connect to an existing server manually.
Confirm the intended request succeeds.
Adjust On Demand, then switch networks and observe the result.
Triggers and connection results are separate; verify each independently.
Add Server · Type
Multiple Protocols: Match Type to the Server
Shadowrocket supports protocols including Shadowsocks, VMess, VLESS, Trojan, HTTP, SOCKS5, WireGuard and Hysteria2. To add a server manually, choose the matching Type in Add Server, then enter the corresponding details. Check Host, Port, authentication and transport parameters individually; similar names do not mean settings are interchangeable. A protocol alone does not guarantee faster speeds or lower battery use. Results also depend on the server, network path and transport settings, so use the parameters supplied for your server.
Subscribe imports and updates a group of server details, provided you already have your own subscription link. Choose Subscribe, Add Server, QR code or clipboard according to the format of your details. A regular webpage URL is not a subscription link. After importing, check the groups and entries, then test the connection. If an update fails, first check that the link is complete, whether authentication is required and whether the details have expired. Subscription links may contain access credentials. Hide the full link in screenshots or troubleshooting notes, and do not post personal details publicly.
Importing does not establish a connection. Select a server, check Global Routing and grant the system permission to connect.
Config manages configuration files, which can contain General, Rule, Hosts and other sections. Before editing, check which file is active and keep a recoverable copy. Saving a file without enabling it may not change current routing. The Config, Proxy and Direct options in Global Routing correspond to configuration, proxy and direct modes. Use Config to verify rules. Before using iCloud sync, check your system account and relevant permissions. After moving to another device, verify the file and its selected status; syncing alone does not confirm a successful connection.
Config
Routes traffic according to the active configuration’s rules.
Proxy
Uses proxy mode; useful for isolating routing issues.
Direct
Uses direct mode; results differ from rule-based routing.
Connectivity Test · Data
Diagnostics & Data: Check Results Using the Same Request
Connectivity Test checks connection performance; Data shows traffic. Neither replaces the other. When troubleshooting, note the current server, routing mode and test network, then make one specific request. When viewing statistics by server or app, check upload, download and the reporting scope. Existing totals do not prove that the latest request used the same route. If the connection is on but a page fails, check DNS, the matched rule and the destination site. Change one condition at a time and compare the results.
Current server → Global Routing → Test request → Data
Use the same test target to identify what caused a change. Traffic readings are not the same as a provider’s billing records.
iPhone and iPad: $2.99 once on the App Store; Mac (Apple Silicon and Intel), Windows, Android and Linux: free. The links below lead to the download page. Desktop and Android installers are provided by this site at /dl/shadowrocket/. Select your device and processor, then read the first-launch instructions for your platform.
App Store: $2.99 once for iPhone / iPad; Mac, Windows, Android and Linux: free.
One purchase covers both devices. Sign in with the Apple ID used for the purchase and find Shadowrocket in your purchased apps. Check the App Store page for system requirements. Before first use, import your existing details, then follow the system prompts to allow a VPN configuration. This system permission prepares the connection; it does not provide server details.
Free · Apple Silicon / Intel; iPhone / iPad: $2.99 once on the App Store.
Open About This Mac to check whether it shows Apple Silicon or Intel, then choose the matching DMG. If the first launch says the developer cannot be verified, confirm the file came from this site, then check Open Anyway under Privacy & Security. If macOS says the file is damaged, follow the complete steps on the download page; repeatedly downloading installers for different architectures will not help.
Free; iPhone / iPad: $2.99 once on the App Store. Other platforms are free.
The download page provides a 64-bit Windows installer. Check your system and confirm the file source first. If SmartScreen blocks it, verify the file, then select “More info → Run anyway” to continue. Devices managed by a company or school may also be restricted by organizational policies. Follow your device management requirements; installation instructions do not replace administrator approval.
Free; iPhone / iPad: $2.99 once on the App Store. Other platforms are free.
Choose the arm64 APK, then allow the current browser to install unknown apps in system settings. If tapping the download in WeChat does nothing, open the download page in your system browser and try again. After installation, you can turn off the browser’s installation permission if you wish. Before connecting, you still need your own subscription or server details; the installer does not include a service.
Free · deb / rpm / AppImage; iPhone / iPad: $2.99 once on the App Store.
Choose deb or rpm according to your distribution’s package manager. For AppImage, grant the file execute permission first. Make sure the filename, working directory and command arguments match; do not copy paths from instructions for a different file. The download page lists installation and permission steps. If you see a dependency warning, read the system output first to determine whether the issue is the package format or runtime environment.
Check the Product Before Preparing Connection Details
Shadowrocket Getting Started is Shadowrocket’s official website and handbook. Shadowrocket is closed-source commercial software. Verify the product using its store listing, official icon and the download link for the relevant platform on this site—not similar names or search ranking.
App Store Verification Checklist
On the iPhone / iPad product page, check the name, developer and app ID, and compare the official icon with the one shown at the top of this page. For desktop and Android, choose the installer from this site’s download page. Do not assume instructions for a similarly named listing apply to this product.
Developer & App ID
The developer should be Shadow Launch Technology Limited, and the app ID is 932747118. Verify the app ID at the end of the product page URL. The icon should match the official icon shown in this site’s header. The name “Shadowrocket” alone is not enough to identify the listing; check all of these details.
iPhone / iPad: $2.99 once on the App Store; Mac, Windows, Android and Linux: free. A free listing with the same name in a mobile app store is not necessarily this product. Likewise, the fact that the other platform versions are free does not identify a mobile store listing.
App Store search results depend on the region associated with your Apple ID. If the app is unavailable in the mainland China store, trying different search terms repeatedly is unlikely to make it appear. Check your account region, then review Apple’s instructions for changing your country or region. Consider requirements such as account balance, existing subscriptions and payment methods.
Check the App Store page for system requirements. Being able to open a store listing does not guarantee that your device meets the installation requirements. Before purchasing, check compatibility and the price shown in your local currency. Account region and current network location are different; verify each separately.
On iPhone / iPad, sign in with the Apple ID used for the purchase and find Shadowrocket again in the App Store’s purchased apps. One purchase covers both devices. After changing devices, check that you are signed in to the correct account and review your purchase history. If the product page still shows a price, check your account and region before paying again.
Update the iPhone / iPad app through the App Store. To update the Mac, Windows, Android or Linux version, download the relevant installer again from this site. Keep your existing configuration before updating. Afterwards, check the active file, selected server and routing mode so configuration changes are not mistaken for connection problems.
A one-time client purchase is not a service subscription. The iPhone / iPad App Store purchase costs $2.99 once; Mac, Windows, Android and Linux versions are free. Neither option includes server access. This site does not provide, sell or recommend servers or subscriptions; it explains how to import details you already have.
Before connecting, prepare your own subscription link or the complete server address, port, protocol and authentication details. If your existing details have expired, contact the original provider. Reinstalling the client cannot restore an expired server. When sharing troubleshooting information, hide passwords and credentials in links; include only the field names and error details needed to diagnose the issue.
Common Questions Before Connecting for the First Time
I imported a server. Why am I not connected yet?
Importing only saves the details. You must also select a server, check the Global Routing mode, turn on the connection and grant system permission. For your first test, make one specific request. If it fails, note whether the issue occurred during import, connection startup or access. Then check each step in the setup guide instead of treating different stages as one problem.
Should I choose Config, Proxy or Direct in Global Routing?
Choose Config for rule-based routing. Proxy uses proxy mode; Direct connects directly. Comparing modes can help isolate rule issues, but do not switch back and forth without noting the original setting. First confirm that the configuration file is active, then test a domain that should match a rule. See the connection and verification guide for details.
Can I use Shadowrocket on desktop and Android, and reuse my existing details?
Yes. Mac, Windows, Android and Linux versions are free; iPhone / iPad costs $2.99 once on the App Store. Check the supported settings and import format for each platform before reusing your existing details. Do not assume every setting syncs automatically between platforms. Choose the right version on the downloads for all platforms page, then check your server details.
How can I tell whether rules are working once connected?
The connection switch only indicates connection status; it does not prove that every request is routed as expected. Keep the same test target, check the current mode, active configuration and matched rule, then compare traffic in Data. Statistics may include earlier requests, so totals alone are not conclusive. Follow the verification steps in the setup guide.
Articles
More on Installation, Statistics & Rules
After establishing a basic connection, find the article that matches your issue. For installation problems, check the device architecture and system prompts. For routing problems, check the mode and rule order. For traffic questions, check how the statistics are reported. Change one setting at a time and keep your original configuration so you can compare results and revert if needed.
Use About This Mac to distinguish Apple Silicon from Intel and choose the matching Mac installer. Then follow the prompts shown by your system to check macOS launch restrictions and Windows SmartScreen steps. Confirm the file source before changing permissions.
Distinguish upload, download and cumulative readings, and understand the different scopes of the server and app views. Check a specific request to see what changed; do not treat historical traffic or the connection switch as proof that routing worked.
Start with what DOMAIN-SUFFIX and IP-CIDR match, then learn how processing stops at the first match and what PROXY, DIRECT and REJECT do. Keep a copy before editing, then check the policy set by the final FINAL rule.