For users who already have their own service provider and subscriptions and want to organize their Shadowrocket list. First identify the source of each group, then update entries one at a time, standardize their remarks, and sort them. Finally, compare server settings to identify duplicates. The goal is to keep subscription sources traceable, not simply to reduce the number of items on screen.
1. Distinguish Subscription Sources, Server Entries, and Config
A subscription link provides server settings and may return multiple server entries. Server names shown in Home are not unique identifiers: entries with the same name can have different addresses, while entries at the same address can use different ports or protocols. Before checking for duplicates, identify which subscription each entry belongs to.
Config manages configuration files, including their rules and policies. Giving two subscriptions different remarks does not create two sets of routing rules, and changing the list order in Home does not change the rule matching order in Config. Settings controls app behavior. Maintain these separately.
| Item | What to Check | Don’t Confuse It With |
|---|---|---|
| Subscription source | Source, URL, remarks, and update results | Adding the same subscription again is different from updating the existing entry |
| Server entry | Type, address, port, authentication, and transport settings | The same name does not mean the same connection |
| Config | Active configuration and policy references | Sorting the list does not reorder rules |
| Connection status | Currently selected entry and Global Routing | Appearing at the top of the list does not mean an entry is in use |
For example, if source A has 12 entries, source B has 8, and there are 2 manually added entries, record each group’s count before organizing them. The total of 22 is a baseline for checking changes, not a target to reduce to. If the count changes later, you should be able to trace the change to its source.
2. Group Subscriptions by Source to Avoid Duplicate Imports
Give each active subscription a clear source remark, such as “Source A | Daily” and “Source B | Backup.” Use remarks for identification only; don’t include subscription tokens, account details, or full URLs. Preserve the boundaries between sources instead of treating subscriptions as the same just because their names include the same region.
-
Review Existing Entries
Open Home and review the existing subscription groups and remarks. Open each subscription’s edit screen to check its URL and confirm whether the same entry is already there. To refresh an existing entry, don’t add it again using the “+” button in the upper-right corner.
-
Add a Missing Source
If a source is genuinely missing, go to Home → “+” in the upper-right corner → Type → Subscribe. Paste your existing subscription link into URL, add an identifiable source remark in Remarks, then save.
-
Update and Check One at a Time
Return to Home and pull down to refresh subscriptions. When organizing them for the first time, handle one source at a time. Check the returned entries, any error messages, and changes in count so you can identify which source caused each change.
-
Keep a Record of Sources
Keep the source-to-remark mapping in your own secure records. If you need to log troubleshooting results, note changes such as “Source A: 12 → 10.” Don’t include full subscription links in screenshots or public records.
Updating a subscription fetches its contents again from the existing entry; it does not create another entry. If your provider changes the subscription URL, check the URL in the existing subscription’s edit screen before deciding whether to replace it or add a separate source. Two links that differ only by a token can’t be assumed to be the same based on appearance alone.
3. Sorting Changes the Display Order, Not Routing
Sort by source first, then by purpose, and use test results last. To reorder subscriptions or servers, use the editing or sorting controls available for that list in Home. Sorting options may differ between lists, so don’t assume that drag-and-drop or sorting is available in every group. After making changes, return to Home and confirm that each entry is still grouped under the correct source.
If the current list offers sorting by name or latency, name sorting is useful for finding specific entries, while latency sorting can help with a one-time check. Run the same set of tests before sorting by latency; don’t directly compare results from yesterday on Wi-Fi with today’s results on a cellular network. A good result in one test doesn’t guarantee higher sustained throughput.
- Everyday order: Put frequently used sources first and backups after them. Keep remarks consistent so entries are easy to find after updates.
- Troubleshooting: Expand the source you want to check, test only that group, and note your local network, the time, and the results.
- After an update: Confirm that the selected entry is still there. If a source was renamed, check policies that refer to its old name.
- Can’t reorder manually: Keep entries grouped by source and use consistent remarks to identify them. Don’t reimport an entire subscription just to change its order.
Use Global Routing to check how traffic is actually routed. Don’t change the routing mode while organizing lists. If you need to compare test results, note the original mode and active configuration first, then restore them when you’re done.
Config
RecommendedRoutes connections according to the rules and policies in the active configuration. Requests that don’t match earlier rules are typically handled by FINAL. The actual route depends on the configuration; unmatched requests don’t necessarily go direct.
Best for: Keeping everyday routing behavior with a trusted configuration
Proxy
Uses proxy routing and can help compare behavior with Config. Check which proxy is currently selected; switching modes doesn’t automatically choose the fastest entry in the list.
Best for: Briefly troubleshooting differences between rule-based routing and proxy connections
Direct
Uses direct routing. It isn’t suitable for checking whether a proxy entry’s exit is working, and selecting a server in the list doesn’t replace checking the routing mode.
Best for: Comparing results with direct access over your local network
Bottom line: Set the mode first, then compare entries
Check each target entry on the same network and in the same Global Routing mode. If only its position in the list changed, don’t attribute a change in access results to sorting alone.
4. Check Server Settings for Duplicates, Not Names
Duplicates commonly come from either adding the same subscription twice or receiving some of the same servers from different subscriptions. In the first case, remove the redundant subscription entry. In the second, preserve source information first, then decide whether any individual entry needs attention. Deleting servers just because their names match can remove a backup connection by mistake.
Open a server entry’s edit screen to review its settings without changing them. Compare Type, server address, port, and authentication details, as well as TLS, SNI, transport, and related settings. Check authentication details only on your device; don’t copy them into public troubleshooting records.
| What You See | Settings to Compare | What to Do |
|---|---|---|
| Names match exactly | Addresses differ | They’re different entries; keep both and distinguish their sources |
| Addresses match | Ports are 443 and 8443 | Different connection endpoints; don’t delete as duplicates |
| Address and port match | Type or SNI differs | Compare more settings; two matching fields aren’t enough |
| Two groups have identical contents | Subscription URLs also match | Remove the redundant entry after confirming nothing depends on it |
| Manual entry matches a subscription entry | All connection settings match | Prefer the entry with a clear source that can be updated |
For example, two Trojan entries at the same address and port 443 may still use different configurations if their SNI values differ. A VLESS entry and a VMess entry with the same name also can’t simply be merged. Protocol names and port numbers alone aren’t enough to determine whether entries are duplicates.
5. Check for Update Issues Before Removing an Inactive Subscription
An update timeout doesn’t necessarily mean a subscription is permanently inactive. First determine whether the link can’t be reached, authentication has expired, the returned content can’t be parsed, or a server connection has failed. The first two issues occur while fetching the subscription; the last occurs when using a server. A successful refresh doesn’t mean every server in the list will connect.
- Keep the original URL and source remark. In Home, update the subscription again and note the specific message. Don’t keep adding the same subscription.
- Check your provider account to see whether the link was reset or its authorization has expired. A token in a link is sensitive information; don’t share it with others for testing.
- If your local network can’t reach the subscription source but you have another working proxy connection, check Settings → Subscribe → Update via Proxy and try again while the proxy is available.
- If the update succeeds but a server won’t connect, check that entry’s settings and test results. Don’t delete the entire subscription group right away.
- After confirming that a source has been deactivated, its URL replaced, or the entry is genuinely duplicated, use the delete option for the target subscription in Home. Make sure you’re deleting the entire group or just an individual entry, as intended.
Update via Proxy isn’t a universal fix for update errors. If the current proxy isn’t working, relying on it to update can create a loop. After changing the setting, retry once and record the result. If it doesn’t help, restore the previous setting and continue checking the URL, authorization, and network access.
Before deleting a whole group, check whether Config refers to any specific names from that group. Configurations with custom policies or fixed server names may need those references updated after a source is removed or renamed. Don’t bulk-edit DOMAIN-SUFFIX, GEOIP, IP-CIDR, or FINAL just to organize Home; these keywords match traffic and don’t clean up subscriptions.
6. Common Questions About Managing Multiple Subscriptions
I imported the same subscription twice. Which one should I delete?
Compare the full URL in both subscription edit screens and check whether each one updates successfully. Keep the entry with clear remarks that updates correctly. Before deleting the other, confirm it has no separate settings or entries referenced by a configuration that you need to keep. Then return to Home and check the remaining source and selected entry.
Why did a server name I changed revert after an update?
Refreshing a subscription fetches the names and settings returned by its source, which may replace local changes. Maintain source remarks instead of relying on renaming individual entries for long-term organization. If a configuration refers to a specific name, check after updating that the name is still there.
A duplicate server came back after I deleted it. What should I do?
First check whether two identical subscription entries are still present. If only one remains, the remote source is still returning those entries. Check whether the source offers filtering instead of repeatedly deleting them by hand. Keep traceable records of overlaps between different sources as well.
Why isn’t the server at the top of the sorted list being used?
Return to Home and check the selected entry, then check Global Routing. If you’re using Config, also review its matching rules and selected policy. Sorting changes only the display order; being first in the list doesn’t tell you which connection is actually in use.
Can I rely on the previous sort order after switching to cellular?
Source remarks are still useful for finding entries, but old latency results aren’t a reliable guide to performance on a new network. Retest the same group on cellular, keeping the mode and test conditions consistent. Switch entries only after confirming a persistent issue; don’t delete an entire subscription because of one timeout.
After organizing your subscriptions, you should be able to answer three questions: where each subscription comes from, what changed with each update, and which policy currently determines the connection. Maintain them in this order—check the source → update → review changes → test the connection. This keeps records clearer than periodically deleting and reimporting everything.
Verify the App and Review the Basics
Shadowrocket is a closed-source commercial app released exclusively on Apple platforms, primarily for iPhone and iPad. App Store is the only way to get it. The developer is Shadow Launch Technology Limited, and the app ID is 932747118. Check the App Store page for system requirements, compatibility, and purchase availability. A one-time app purchase is not a subscription to a network service. This guide does not provide, sell, or recommend servers or subscriptions; it explains how to manage content you already have.
Verify the App Browse Tutorials