Before switching devices, keep the old device and save the connection details in Home, subscription sources, and Config files separately. iCloud sync carries data between devices; a separate export gives you a recoverable copy. This guide is for users who already have their own service provider and subscription and are moving to a new iPhone or iPad. Follow five steps: inventory, sync, export, restore, and verify.
1. Understand the difference between connection details, Config, and system authorization
A Shadowrocket Config file is not a complete app backup. Servers and subscriptions in Home, rule files in Config, behavior settings in Settings, and the VPN authorization saved by the system are separate things. Copying a rule file alone does not confirm that server credentials, subscription sources, or automatic connection conditions have also been transferred.
Bottom line: verify each item on the new device before considering the transfer complete
Do not erase the old device just because a file appears in iCloud. First confirm that Home entries, the active Config, and the connection all work on the new device.
| Item | What to save on the old device | What to check on the new device |
|---|---|---|
| Servers | Protocol, address, port, and any credentials required by that protocol | The entry appears in Home and all fields are present on its edit screen |
| Subscriptions | Original subscription URL, group name, and notes on manual edits | The source is identifiable and can be updated on its own |
| Config | Active Config file, rules, and references to external resources | The file is imported and explicitly selected as the active configuration |
| Connection behavior | Global Routing and the conditions in Settings → On Demand | Review against the new device’s network; do not assume the old settings still apply |
| System authorization | Note the connection method used on the old device | Allow the VPN configuration when prompted during the first connection |
2. Inventory the old device before enabling iCloud sync
On the old device, check Home and note subscription group names, manually added entries, and the currently selected server. Then open Config and confirm which file is active. If you edited servers generated by a subscription, save those changes separately: a subscription refresh may recreate entries, and local edits are not saved by the provider.
- In system Settings, go to your Apple Account → iCloud and confirm which account is being used for sync. If the two devices use different iCloud accounts, do not expect app data to appear automatically on the other device.
- Make sure iCloud Drive is on, then check Shadowrocket’s access in the iCloud app list. Menu names may vary by system version; follow what appears on your device.
- Open Shadowrocket → Settings and look for iCloud options. If the app offers a sync switch, turn it on and review the listed sync scope. Do not assume syncing one category backs up the entire device.
- Keep the device connected to the internet and check that iCloud has enough available storage. Then enable the corresponding system permissions and app options on the new device, and verify sync by checking which entries actually appear.
- If you are prompted to import, restore, or overwrite data, read the message first and preserve the data on both devices. Avoid editing the same configuration on both devices at once; otherwise, it may be unclear which copy to keep.
3. Export Config and save a recoverable copy of your rules
In Config, first make sure you are saving the configuration currently in use, not an older file with a similar name. Open that file’s action menu and use the app’s share or export option. In the system share sheet, choose Save to Files. The location of these options depends on the current app interface. Copying a small section from the editor is not a complete export.
- Choose a filename that makes the copy easy to identify, such as
travel-backup.conf. The filename helps distinguish the copy; it does not mean the file includes all Home data. - Save it in a folder you can access. If you use iCloud Drive, wait for the upload to finish, then reopen the file in Files to confirm it is readable.
- Check the configuration for references to remote rules, scripts, or other resources. Saving the main file does not save the referenced content; make sure those resources are accessible after the transfer.
- If the configuration contains server definitions, authentication fields, or private resource URLs, treat the file as sensitive. Do not post it in public chats or share it publicly.
The example below illustrates rule structures to check; it is not a complete configuration and contains no server details. When transferring, preserve the original rule order, target policies, and other configuration sections. Do not replace your existing file with this example.
[Rule]
DOMAIN-SUFFIX,example.com,DIRECT
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
DOMAIN-SUFFIX matches domain suffixes, IP-CIDR matches address ranges, and GEOIP relies on the relevant IP geolocation data. FINAL handles requests that match none of the preceding rules. Changing rule order during a restore can change routing results, even if the filename stays the same.
4. Restore subscriptions and manually added servers separately
For subscriptions, confirm that the source is still available; for manually added servers, confirm that every field is present. This guide assumes you already have your own provider and subscription. This site does not provide, sell, or recommend servers or subscriptions. Subscription URLs often contain access credentials, so store them separately from ordinary notes and public screenshots.
- Existing subscriptions: First check whether the corresponding subscription group appears in Home after sync. If it does, verify the source and update it rather than importing it again. If the source was not restored, import it again from the original URL you saved.
- Manually added entries: Check the protocol, server address, and port. To add an entry through Home → Add Server, use the original parameters from your provider. Do not guess the protocol from an old entry’s name.
- Authentication fields: For Shadowsocks, check the encryption method and password. For VMess and VLESS, check the UUID and relevant transport settings. For Trojan, check the password and TLS settings. Do not reuse fields across different protocols.
- Additional parameters: The TLS server name, transport path, and other settings may affect whether a connection works, even if they are not visible in the Home list. Entries with the same name may still have different settings on their edit screens.
Keep the original port value. For example, if an old entry uses 443, restore that value first. The number alone does not confirm that TLS is enabled or indicate which protocol to use. If the number of entries changes after a subscription update, check what the provider currently returns before deciding whether entries are duplicated or missing.
5. Restore and verify everything on your new iPhone or iPad
Shadowrocket is a closed-source commercial app available as a one-time purchase through the App Store. Reinstalling the app and restoring its configuration are separate steps: purchase history does not replace a configuration backup, and buying the app does not include a service plan. Shadowrocket is primarily for iPhone and iPad. Check the App Store listing for compatibility with other Apple devices, system requirements, and purchase availability.
- Restore the app: Using the Apple ID used for the purchase, find Shadowrocket in your App Store purchase history. To confirm the listing, use the official listing verification page to check the official icon, developer Shadow Launch Technology Limited, and app ID 932747118.
- Check sync: Complete the iCloud setup above, then check Home and Config separately. If the data appears, verify it before making changes. If only some data appears, restore the missing categories separately.
- Import the file: Find the saved Config file in Files and share it with Shadowrocket using the system share sheet, or use the file import option in Config if available. After importing, return to Config and explicitly select the file you want to use.
- Select a server: In Home, select a server whose settings you have checked. Confirm Global Routing. Use Config when you need rule-based routing; the connection switch alone does not confirm that rules are active.
- Authorize the connection: Turn on the connection switch and allow Shadowrocket to add a VPN configuration when prompted by the system. Authorization on the old device does not replace confirmation on the new one.
- Verify in stages: Run Connectivity Test, then visit a service you normally use. The test checks connection status; it does not by itself confirm that all rules, DNS settings, and subscription updates are working.
In Global Routing, Proxy routes traffic through the proxy, Direct connects without a proxy, Config follows the active configuration, and Scene follows its configured conditions. After a transfer, start with a mode you can clearly verify. Do not assume Scene will behave as it did on the old device until you have checked its conditions.
6. Four common questions about restoring on a new device
iCloud is on. Why is the new device still empty?
Check iCloud Drive permissions, the iCloud account on each device, and the sync options actually available in Shadowrocket. Then check storage and network connectivity. Do not repeatedly delete data from the old device to try to “trigger sync.” If the data still does not appear, keep the old device and restore items individually using your exported Config and saved subscription sources.
I imported Config. Why are there no servers in Home?
Check the file contents first. If it contains only rules, DNS settings, and similar configuration, it cannot restore subscription sources in Home. Reimport from your saved subscription details, or add manual entries through Home → Add Server, then select the appropriate file in Config.
After restoring a subscription, the same server appears twice. What should I do?
First distinguish manually added entries from subscription-generated ones, and check whether the same source was imported twice. Keep the subscription group you have verified can be updated, then back up and remove the duplicate source. Do not delete entries in bulk by display name alone; you could remove a manually added entry with special settings.
The configuration looks the same, but connection behavior differs from the old device. Why?
Check the selected server in Home, Global Routing, the active file in Config, and then Settings → On Demand. If Connectivity Test fails, check the server fields and network first. If the test returns a result but the target service does not work, check rule order and whether remote resources have loaded.
7. Wipe or hand over the old device only after verification
The transfer is complete when the new device can handle everyday tasks on its own, not when filenames match. Run at least one subscription update, make one manual connection, and check the configuration. If you use On Demand, also verify its triggers on a network where they should apply. Keep the old device available for now so you can check any missing fields.
- You can identify all required subscription sources and manually added servers in Home, and you can update subscriptions without acting on a duplicate source by mistake.
- The correct file is selected in Config, key rules remain in the same order as on the old device, and referenced resources can be read.
- Connection authorization is complete on the new device. Global Routing matches the intended use, and both Connectivity Test and actual access have been checked.
- The separate export remains in a location you control and can be reopened. Copies containing passwords, UUIDs, or subscription credentials have not been shared publicly.
Once you have confirmed these items, handle the old device according to your own handover plan. Update the separate copy whenever you change rules or manually added server settings. Do not leave your only usable configuration on a device you are about to erase.
Get the app and learn how to connect
The App Store is the only place to get Shadowrocket. Check the official icon, developer, and app ID, then follow the guide to select a server and authorize the system connection. Restoring a configuration requires a separate check; it is not completed automatically through purchase history.