App Store purchase · One-time purchase

Shadowrocket User Guide

From App Store purchase to rules and connections

A rule-based proxy client for iPhone / iPad, with rule-based routing. The app is a one-time purchase on the App Store; you’ll need your own existing subscription or server details to connect.

VLESS Hysteria2 WireGuard Global Routing

Get Shadowrocket for iPhone and iPad:Verify the App Store listing before you buy and install

iPad

Check your purchase history using the Apple ID used for the purchase, then download according to the status shown in the App Store. iPhone and iPad may share a purchase; check the App Store listing for purchase eligibility. App settings still need to be checked on each device.

See iPad installation and setup instructions →

Shadowrocket is also available on Mac and Apple TV through the same App Store. Check the App Store listing for compatibility, system requirements, and purchase eligibility.

Rules, servers, and connection settings:Check each feature where it appears in the app

↗

Routing rules and Config files

Routing rules choose how requests are handled based on their characteristics. Before using them, select a Config in Global Routing and confirm which configuration file is active. Rules are usually matched in order, so more specific entries should be distinguished from fallback rules. Keep a recoverable copy before editing. The syntax below illustrates matching behavior; example.com is a sample domain, and actual connections for PROXY depend on your existing server. After making changes, check request logs to confirm which rules matched rather than relying only on the connection toggle.

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

Global Routing

Config handles requests according to the rules in the current configuration. Proxy sends eligible traffic through the selected proxy; Direct uses a direct connection. Scene switches behavior based on configured scenarios and is not another protocol. Before your first test, decide what you want to check and choose the relevant option. When troubleshooting rules, keep the server unchanged; when troubleshooting the server, keep the test target consistent. This makes it easier to identify the cause instead of changing several settings at once.

↗

On Demand

On Demand starts connections when specified conditions are met. Set it up only after confirming that a manual connection works. Find the relevant option in Settings, check its trigger conditions, and observe what happens when the network changes. If the connection starts again after you turn off the toggle, check the On Demand settings too instead of repeatedly deleting the configuration. On Demand controls when a connection is attempted; it does not handle server authentication or fix an incorrect address, port, or password. To narrow down a problem, temporarily disable the relevant conditions.

↗

Protocols and fields

To add an existing server, first choose the matching protocol under Type in Add Server, then enter the corresponding details. Shadowsocks, VMess, VLESS, Trojan, Hysteria2, and WireGuard use different fields; changing only the address does not make a configuration interchangeable. Check transport and TLS options against the original details as well. The protocol name specifies the connection method, but does not confirm that the server is currently available. After saving, select the server and test the connection.

ShadowsocksVMessVLESSTrojanHysteria2WireGuard
↗

Subscribe and import management

Use your own existing subscription or server details. Import and save them through Subscribe or Add Server. After updating a subscription, check the group name, entry changes, and current selection; a successful download does not mean the connection works. QR codes, the clipboard, and manual entry are simply different ways to add details. After importing, verify the protocol and key fields. Subscription URLs may contain access credentials, so hide them in screenshots or notes before sharing. Before organizing multiple subscriptions, distinguish subscription entries from manually added ones.

↗

Connectivity Test and Data

For your first connection, select the default server, turn on the connection toggle, and allow the VPN configuration when prompted by the system. Then run Connectivity Test. Results reflect the selected method and network conditions at that time; they do not verify access from every app. Data can help show traffic activity, but traffic records do not mean every request succeeded. If something goes wrong, check the local network, server details, Global Routing, and configuration rules in order. Change one thing at a time and test again.

App Store purchase and listing details:Use the store listing and in-app settings as your reference

  • App ID 932747118
  • One-time purchase
  • Closed-source commercial app

Developer, official icon, and App ID

After finding the app, open its product page rather than relying on similar names in search results. Verify that the developer is Shadow Launch Technology Limited, that the icon matches the official icon shown on this site, and that the product URL contains App ID 932747118. Check all three together; a name, screenshot, or description alone is not enough to verify the listing.

Shadowrocket is a closed-source commercial app. Check the App Store product page for purchase options, compatibility, the app description, and update history. As the official website and manual, this site explains what to check and in what order. If the store listing differs from this guide, follow the current listing to confirm what applies before purchasing.

See the three App Store verification checks →

App Store availability, region, and price

Whether the product page is available for purchase, which currency it displays, and which payment methods are available depend on your Apple ID’s App Store region and account status. If you can’t find the app or complete a payment, check the App Store message and your account’s store region first. An empty search result does not necessarily mean there’s a problem with your device settings, and it is not a reason to change saved server details.

The US storefront lists the app for about $2.99 as a one-time purchase. Other storefronts display local currency; the amount on the payment confirmation screen is final. Check the App Store listing for system requirements. Before purchasing, confirm that your device meets the requirements and remember that the app is a client tool; connecting still requires your own valid service details.

Read about pricing and one-time purchases →

Restore purchases, devices, and settings

When switching devices or reinstalling, use the Apple ID from the original purchase and check the download status under Purchased or on the product page in the App Store. If the price still appears, check your account and purchase history before proceeding. Refer to the App Store listing for purchase eligibility on iPhone and iPad, compatibility with other devices, and Family Sharing.

Restoring the app and restoring its configuration are separate tasks. After downloading it again, check that your servers, subscriptions, and Config are all present; don’t assume all data has been restored. If you use iCloud-related sync features, check the actual settings and device account in Settings. Sync status is not a substitute for a separate backup. Before deleting anything from the old device, verify the needed settings on the new device and test the connection.

See how to restore a purchase →

What the purchase covers, service details, and updates

The app purchase does not include a service plan. Buying Shadowrocket gives you the app; it does not create a connectable server or extend an existing subscription. This site does not provide, sell, or recommend servers or subscriptions. The import, update, and testing steps in this guide assume you already have your own subscription or server details.

App updates are delivered through the App Store, where you can read the release notes. Subscription updates refresh server details for an existing service; Config updates change configuration content. They affect different things. If a connection fails, first determine whether the issue involves app installation, entering server details, or the connection itself. Then consult the relevant section rather than treating repurchasing the app as a general troubleshooting step.

Read the server management guide →

Common settings questions: identify what you’re changing first

Why select a server after importing one?

Importing adds details to the list; you still need to select which server to use for the connection. Check the selection indicator in Home, then confirm the connection toggle and Global Routing. If a subscription update changes the entries, check that the current selection is still the one you want. See the glossary for in-app terms.

When should I choose Config or Proxy?

Choose Config to route traffic according to configuration rules. To check the selected proxy’s connection behavior, choose Proxy if it suits your test. Neither is a protocol or fills in missing server details. Decide what you’re testing, then keep other conditions consistent. For detailed steps, see the Global Routing guide.

Does a latency test result mean every connection is working?

No. Results depend on the test method, target, and network conditions at the time. Run Connectivity Test as well, and verify the requests you actually need to use. If some requests fail, check which rules matched and review the related settings. See connection and diagnostics terms for explanations of test metrics.

What should I keep before organizing subscriptions?

First identify your subscription groups, manually added servers, current Config, and recovery method. Don’t delete entries in bulk until you’ve verified your backup. Store URLs and configurations containing credentials securely, and hide sensitive fields when sharing troubleshooting details. See the server management guide for the recommended order.

Shadowrocket guides:More on purchases, setup, and troubleshooting