Skip to content

How to Transfer Shadowrocket to a New iPhone: iCloud Sync, Config Export, and Restore

Back up before switching to a new iPhone or iPad. Learn what iCloud sync includes, how to export a Config file, and what to check after restoring it on your new device.

At a glance

This guide is for people already using Shadowrocket on an old device and preparing to move to a new iPhone or iPad. Follow this order: note your Home and Settings, save your Config, check iCloud, then restore items one by one on the new device. Verify the result by checking file contents, subscription updates, and actual connection behavior—not just whether the app is installed.

Identify the four types of data to transfer

Home, Config, and Settings in Shadowrocket store different kinds of information. Seeing a server or subscription group in Home does not mean the rules file has been restored; seeing a file with the same name in Config does not mean Global Routing is using it. Before migrating, record what is working on the old device so you do not have to reconstruct it from memory.

This guide assumes you already have your own service provider and subscription. Get subscription details from your provider; the app purchase and connection service are managed separately. Subscription URLs may contain access credentials. Store them securely like passwords, and do not put them in public notes, shared albums, or public feedback.

Connections and configuration

Home
Note your subscription names, groups, and currently selected server.
Subscription source
Keep the original subscription URL; a screenshot of the list is not a substitute.
Config
Note the name of the currently enabled file and export its contents.
External references
Check the rule resources referenced by the configuration and the conditions required to access them.

Server lists and rules files are different types of data; check each separately.

Operation and authorization

Global Routing
Note whether the current mode is Config, Proxy, Direct, or Scene.
On Demand
Go to Settings → On Demand and record the existing trigger conditions.
VPN permission
When connecting for the first time on the new device, follow the system prompt to confirm.
Custom settings
Record any items you changed manually, such as DNS.

Verify file restoration, operating mode, and system authorization separately.

Keep the old device until the new one passes the full check. For now, avoid editing the same configuration file on both devices at once. If a sync carries an incorrect change to the other device, an independently exported file gives you a clear restore point.

What iCloud sync covers and how to check it

iCloud sync and saving an exported file to iCloud Drive are not the same thing. Sync depends on the features the app provides and the options actually enabled; saving to iCloud Drive keeps a file you can import manually. Signing in to the same Apple Account on both devices does not mean Home, Config, Settings, and system VPN authorization are all in sync.

First, go to Settings → Apple Account → iCloud and check iCloud Drive and the app's iCloud access. System labels may vary by OS version. Then open Settings in Shadowrocket and check the iCloud-related options shown there. Use the items listed in the app and the data that actually appears on the new device to determine what synced. Do not assume a full-device restore also syncs every item in the app.

Divide the migration tasks: sync to carry data across, export to provide a fallback

Old iPhone
  • Check the iCloud account, available storage, and network connection.
  • Note which sync options are actually enabled in the app.
  • Export the Config currently in use and save a separate copy that you will not edit.
  • Keep the information needed to restore subscription sources and manually added items in Home.
New iPhone or iPad
  • Check that the iCloud account used for sync is the same.
  • After syncing, check Home and Config separately.
  • Open each file and verify key rules, not just the filename.
  • Restore missing items manually and confirm connection authorization again.

Sync is successful when the data and behavior match—not merely when the iCloud switch is on.

Sync is not a separate, versioned backup: deletions and overwrites may sync too. If two files with the same name have different contents, export both before comparing them. Do not immediately overwrite the older file with an empty one. After restoring a system backup, run the same checks—especially which Config is enabled and what Global Routing is set to.

Export a Config file from the old device

Open Config and find the configuration file that is actually enabled. Export that file, not a backup with a similar name. File actions may be in the file's action menu or available by swiping. Open the actions and choose Share, then save the file using the system share sheet. A screenshot of text in the configuration editor is not a restorable file.

  1. Identify the source file

    Open Config and note the currently selected filename. Open the file and check whether [Rule], custom rules, and the trailing FINAL match the old device's setup.

  2. Export a copy

    In the file actions, choose Share, then select “Save to Files” in the system share sheet. If you save to iCloud Drive, wait for the upload to finish before leaving the old device.

  3. Check the file

    In Files, make sure the exported item opens, is not empty, and retains the .conf extension. You could name it before-move.conf to distinguish it from any file you edit later.

  4. Keep the source details

    Save the original subscription URL and any necessary manual server settings separately. Exporting a Config does not prove that all connection details in Home have been backed up.

  5. Keep a fallback

    Keep the exported copy as an untouched restore baseline. If you need to make changes later, work on another copy and leave the old device in its current working state for now.

If the file references remote rule resources, saving the main configuration does not also save the remote content locally. When restoring, make sure those references are still accessible; any required authentication must also be valid. Do not delete rules or change the fallback policy at random to fix a failed reference.

Restore on a new iPhone or iPad

Shadowrocket is a closed-source commercial app for Apple platforms, primarily used on iPhone and iPad. It is available exclusively through the App Store. Install it on your new device from the App Store and verify the developer, Shadow Launch Technology Limited, and app ID 932747118. Check the App Store listing for system requirements and purchase eligibility.

Your App Store purchase history and iCloud data sync are separate. If you have already purchased the app, first check your purchased items using the account associated with the store. Restoring the app does not verify your subscription's validity period or replace system authorization on the new device.

  1. Check for existing data first. Open Home and Config to see what came across through sync or a system restore. Do not import subscriptions that are already present and working, as this may create groups with duplicate names.
  2. Import any missing configuration. In Files, find the exported .conf file and use the share sheet to open it in Shadowrocket. Follow the import prompts, then return to Config and confirm that the file appears.
  3. Enable the file you need. In Config, select the restored file and check its key contents. Importing a file does not mean its rules are active; it may not be enabled yet.
  4. Restore Home items. If a subscription is missing, tap “+” in the top-right corner of Home to open Add Server. Set Type to Subscribe, enter the subscription URL from your provider, and save it. Then update the subscription.
  5. Complete the first connection. Select a server you have confirmed is working, then turn on the connection. When the system asks to add a VPN configuration, verify the app name and confirm. Return to Home to check the status.

Manually added servers need to be checked individually for Type, address, port, authentication details, and relevant transport settings. Restoring a note or server name alone is not enough. Keep the port from the original details: even if one item used 443, do not change the ports of other entries to 443. The same protocol does not mean the connection settings are identical.

Check Global Routing after the restore

If you can connect after migrating but traffic is routed differently, check Home → Global Routing first, then Config. The connection switch shows the tunnel state; it does not guarantee that a destination is handled by the same rules as before. Use the comparison below to choose a mode for restore testing, and do not leave temporary troubleshooting settings in place as your final configuration.

Config

Recommended

Use the currently enabled configuration to determine how connections are handled. Rules are evaluated from top to bottom, and the first match determines the action; unmatched traffic falls through to FINAL. This is the right choice for checking a migration if you previously used rule-based routing.

Best for: checking restored rules, policies, and everyday behavior

Proxy

Handle connections in proxy mode rather than routing each one according to the existing rules. You can use this temporarily to distinguish connection-setting issues from rule issues, but restore the original Global Routing setting after testing.

Best for: temporarily checking whether the selected server can connect

Direct

Handle connections in direct mode. If the old device used Config but the new device is set to Direct, the configuration file may be intact, but it will not produce the same proxy routing behavior.

Best for: checking whether the current network can reach a destination directly

If the old device used Scene, check the scene and its conditions too. Switching to Scene does not automatically restore the previous scene. During setup, keep variables controlled: first confirm the selected server and configuration work, then restore scenes and automatic connection conditions one at a time.

Check key rules to verify the files match

This is an example of how to read a configuration, not a replacement for your existing one. example.com is a sample domain. When comparing the old and new devices, check rule order, policy names, and the final fallback—not just the filenames.

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

On Demand and connection checks

After manual connections work, go to Settings → On Demand and restore the original conditions. On Demand triggers connection behavior based on conditions; it does not restore missing servers, subscriptions, or rules. Wi-Fi networks may differ on the new device, so recheck the old network conditions instead of copying them and assuming they work.

Change one thing at a time during verification. If you re-import a subscription, switch Global Routing, replace the Config, and change DNS all at once, even a successful restore will not tell you which step fixed the problem. Comparing the old and new devices on the same network makes it easier to separate missing migration data from differences in network conditions.

Common migration questions

Why is my subscription missing even though I signed in to the same account?

Check the system iCloud account, the app's sync options, and the Home list separately. A matching store account does not mean your data has synced. If the subscription is still missing from Home, restore it using the original URL via Add Server → Type → Subscribe, then update it.

Why are my connection results unchanged after importing Config?

Return to Config and confirm the imported file is enabled. Then go to Home → Global Routing and check that it is set to Config. Next, check whether an earlier rule is matching first; do not check FINAL alone.

I exported my configuration, but Home is empty. Do I need to buy the app again?

Missing connection details in Home are separate from your purchase history. First restore the subscription from your provider, or add the manual servers from your old device's notes. Do not treat a Config file as a complete backup of all connection details.

My new device asks to add a VPN configuration. Did the restore fail?

Importing a file does not mean the new device has completed system authorization. Confirm the prompt is from Shadowrocket and follow the system steps, then return to Home to test. If manual connections work but automatic connections do not behave as expected, check Settings → On Demand.

What should I do if the two devices have configuration files with the same name but different contents?

Stop editing them at the same time. Export both files separately and compare key rules, external references, and FINAL. Choose a verified working file as the restore baseline and test it on the new device before handling duplicates. Do not delete the only working copy on the old device.

Once the new device passes these checks—subscriptions update, Config is enabled, Global Routing is correct, and manual connections and On Demand both work—you can organize the old device. Keeping a separate configuration copy and the notes needed to restore it makes your next device switch easier than relying on ongoing sync alone.

Download Shadowrocket