At a glance

When managing multiple subscriptions, identify each source first, organize the display order next, and remove duplicates only after checking them. This guide assumes you already have your own provider and subscriptions. It explains the difference between subscription groups and the servers within them in Home, what to save before deleting anything, and why manually removed entries may return after an update. Work on one group at a time to avoid deleting servers from different sources just because they share a name.

1. Understand the difference between subscription groups, servers, and Config

Subscription management in Shadowrocket centers on subscription groups in Home. A subscription URL is the source for a server list, and one subscription can return multiple servers. Each server entry contains the protocol, address, port, and authentication parameters needed to connect. Seeing the same name in two groups does not prove that the entries were imported twice.

Config manages configuration files and routing rules; it is not the server list for your subscriptions. Removing an old subscription does not also remove files in Config, and deleting a configuration file does not clean up duplicate servers. Update-related options in Settings affect how content is fetched, but they do not replace checking subscription sources in Home.

Subscriptions and servers

Where to check
Subscription groups and their entries in Home
How to identify the source
The URL on the subscription edit screen
What to check for a connection
Server protocol, address, port, and authentication parameters
What an update does
Fetches the server list returned by that source again

Use the group name to identify a subscription and its URL to verify the source; neither replaces the other.

Configuration and routing

Where to find the configuration
Config
Routing entry point
Home → Global Routing
Rule handling
Config handles connections according to the selected configuration
Other behavior
Proxy、Direct、Scene

Changing the list order does not change Global Routing or rewrite the policy selection in a configuration.

2. Name subscriptions by source, then organize groups and their contents

Open Home, expand your existing subscription groups, and check the URL and notes on each subscription's edit screen. Depending on the interface, you may find these controls under an info button, an edit button, or a long-press menu. Before making changes, confirm that you are editing the subscription itself, not a server within the group. A useful naming format is “Purpose — Source — Status,” such as “Daily — Source A — Keep” and “Backup — Source B — Check.”

  1. Record what belongs to each group: Note an identifiable label, source, and current server count for every subscription group. A full URL may contain access credentials, so keep it somewhere you control and never paste it into public feedback.
  2. Change the label first: Save, return to Home, and confirm that the group name has changed. Renaming does not merge subscriptions or change the content returned by the provider.
  3. Then organize group order: Use the available edit or sorting controls to move frequently used groups up and groups that need checking down. If a drag handle appears, reorder the groups, exit edit mode, and confirm that the new positions were saved.
  4. Check the order within each group separately: Sorting by name, latency, or original order applies to the servers in a group, not the priority of subscription groups. Run a latency test before sorting by latency; an entry with no result is not necessarily unusable.
  5. Check what changes after an update: Update one group and review its order. If it reverts to the order returned by the source, don't rely on the local display order for long-term organization; use clear group names instead.

Sorting only changes how items are displayed. Moving a group to the top does not switch the active connection or ensure that a policy group in Config uses that source. If the current interface has no separate control for ordering groups, keep the labels clear rather than repeatedly importing the subscription to move it; importing again can create a second group for the same source.

Check the source Update the label Organize the order Update one group Check the result

3. Check the source of duplicate servers—don't rely on names alone

Duplicates usually fall into one of three categories: the same URL was saved as two subscriptions; two different URLs return some of the same servers; or a subscription itself contains entries with similar names or identical connection parameters. The first case is a reason to remove a duplicate subscription. For the other two, verify the source and parameters first; don't bulk-delete entries based only on their names in Home.

What you seeWhat to checkWhat to do
Two groups have the same name and server countAre the subscription URLs identical?Confirm which group is selected, then keep one valid source
A server with the same name appears in different groupsAddress, port, protocol, and transport parametersKeep entries with different parameters; don't deduplicate by name
A deleted entry returns after an updateDoes the latest subscription content still include the entry?Address it through the source content or an available filtering setting
Similar names appear within one groupCheck for different ports, protocols, or route identifiersCheck each entry; similar names do not mean they are duplicates

For example, two Trojan entries both using edge.example.com:443 are not necessarily identical. Also compare authentication details, TLS-related settings, and transport parameters. If one uses port 443 and the other uses 8443, they clearly have different connection endpoints. Check authentication details only on your device; don't include full parameters in public screenshots.

1 URL
Saving it twice can create two subscription groups
443 / 8443
Different ports mean different connection endpoints
2 levels
Confirm separately before deleting a subscription group or a server within one

Bottom line: remove duplicate sources first, then consider deduplicating servers within a group

If two groups point to the exact same URL, keep one valid group. If entries only share a name but have different sources or connection parameters, keep them for now and add notes instead of deleting them in bulk.

4. Switch away from an old subscription before deleting it

Deleting a subscription affects the list saved locally. It does not end your service relationship with the provider or revoke access credentials on the provider's server. Before removing an old group, confirm that the new group updates and connects successfully. Don't delete your only usable source before confirming that the new URL works.

  1. Save what you'll need to restore it: Record the old group's label and subscription URL, and securely keep any server parameters you entered manually. A display name alone is not enough to add the subscription again.
  2. Select a replacement entry: In Home, select a server from the group you plan to keep. If the old server was connected, disconnect and reconnect, then verify the result by visiting a destination you know is available.
  3. Check references in Config: If the current configuration selects servers or policy groups by name, open Config and review the relevant references. The selected marker in Home alone does not confirm that every rule has switched over.
  4. Delete the correct level: In Home, delete the old subscription group, read the confirmation prompt, and make sure it refers to the entire group. Deleting only a server entry may leave the subscription source in place.
  5. Verify after exiting: Confirm that the old group is gone and the group you kept is still there, then update the retained group once more. If you deleted the wrong item, add it again using the source details you saved rather than trying to recreate a batch of servers from memory.

5. If entries return after an update, check the relationship between deletion and the source

Updating a subscription fetches its content from the source again. Manually deleting a server within a group does not remove it from the provider's server; if the next response still includes that entry, it may reappear. This does not necessarily mean the deletion failed—the local list may simply have been regenerated from the source.

Update one subscription at a time instead of updating everything at once. Before updating, note the group's server count and a few representative names, then compare them afterward. An unchanged count only means the total is the same; it doesn't prove that the entries are unchanged. Addresses, ports, and authentication parameters may have changed. Likewise, an increase may mean the source added entries, not that duplicates were created.

If you want to keep certain entries hidden over time, use a content adjustment supported by the source or a filtering feature explicitly offered in the current app interface. Don't treat a one-time manual deletion as a permanent filter, and don't invent URL parameters. Change one condition at a time, then update and check that other entries weren't excluded by mistake.

6. Frequently asked questions about managing multiple subscriptions

Will moving a backup group to the top make Shadowrocket connect through it automatically?

Changing the display order alone does not select the connection target. Check the selected server in Home, then review Global Routing. If you're using Config, also verify the policy selection in the active configuration; don't infer the actual outbound route from a group's position.

Why did the connection turn back on after I deleted the old subscription?

The subscription list and automatic connection conditions are separate settings. Go to Settings → On Demand to check the triggers, and confirm which server the current connection is using. An automatic connection being triggered again does not mean the old subscription was restored.

If two groups have servers with the same names, is it enough to keep one?

Open each entry's details and compare the protocol, address, port, authentication, and transport parameters. Matching names alone don't prove that they're the same connection. If the subscription URLs are also identical, follow the steps for removing an old subscription to clear the extra group.

Can I delete the old group right away if the new group fails to update?

Keep the old group for now. Update the new group by itself, and check that the URL is complete, its access credentials are valid, and your current network can reach it. Once the new group returns a server list and passes a connection check, switch the selected entry and update any references in Config.

Why did a server label I edited manually change after an update?

An update may restore the name returned by the source. For long-term identification, use the subscription group's label to mark its source. If you need to keep a separate manual entry, make a note that it no longer syncs with the original subscription; you'll also need to maintain its parameters separately if they change.