1. Before You Add a Subscription
Clash Verge Rev is the desktop client; its core processes the configuration and makes proxy connections. A subscription is a source of configuration that the client can download and refresh. Depending on the provider, it may contain proxy nodes, policy groups, routing rules, DNS settings, or a complete configuration. Importing a URL does not guarantee that every field or protocol in the returned profile is supported by the core currently selected in the client.
Before you begin, obtain the subscription URL from your provider’s account page or setup instructions. Do not use a node’s individual connection link when the provider specifically asks you to use a Clash subscription. The URL often contains a private token: anyone who obtains it may be able to download your profile or use the service associated with your account. Treat it like a password, and do not paste it into public chats, screenshots, support tickets, or a public configuration file.
- Confirm the format: Check that the provider supports Clash or a compatible YAML format. A URL intended for another client may return a different format.
- Check the core: Clash Verge Rev commonly works with a mihomo core, but the selected core and its version determine which protocols and configuration fields can run. A profile containing a newer protocol may fail on an older core.
- Check access: Make sure the device has an internet connection and that any provider account or subscription entitlement is active. Some providers restrict downloads by expiration date, device count, or network.
- Keep a fallback: If you already have a working profile, note its name and settings before adding another one. Do not delete or overwrite it until the new profile has passed a basic test.
Labels and menu placement can vary slightly between Clash Verge Rev releases. In many builds, profiles are managed from the Profiles page, where a plus or new-profile control opens the subscription import options. If a label is different in your build, look for the profile management page rather than changing the core configuration manually.
2. Add the Subscription URL
Use the URL import option to create a managed profile. This is different from importing a local YAML file: a URL profile can be refreshed from its source, while a local file is only updated when you replace or edit that file yourself.
- Open Clash Verge Rev and go to Profiles. If the client is still starting, wait until its main interface is ready before importing.
- Choose the control for adding or creating a profile. Select the option for a remote URL, subscription, or online profile; do not choose local-file import unless you have a file from the provider.
- Paste the complete subscription URL into the URL field. Avoid adding quotation marks, spaces, or explanatory text before or after it.
- Enter a short profile name that helps you identify the provider or account. A local label such as “Primary” is usually easier to recognize than a long URL. Do not use the name field to store passwords or other secrets.
- Confirm the import or save action. The client should download and parse the profile. Wait for the process to finish and check for a success message, a newly listed profile, or an error notification.
- Select the imported profile if the client does not activate it automatically. Confirm which profile is marked active before changing system proxy settings or testing a connection.
If the client offers a display name, update interval, or other optional profile settings, leave unfamiliar advanced fields at their defaults on the first import. A refresh interval controls when the client may check for a changed profile; it does not extend the provider’s account validity or ensure that every refresh succeeds. If you set an interval, use a reasonable value and follow the provider’s guidance rather than repeatedly requesting the URL.
Some releases provide more than one import path, such as creating a profile from a URL or adding a URL to an existing entry. Prefer creating a separate profile for a new provider. Keeping it separate makes it easier to compare results and return to a known-good profile if the new one is incomplete. Avoid placing two unrelated subscription URLs into a single field unless the interface explicitly supports that arrangement.
If the URL import fails, do not immediately edit the downloaded YAML or change unrelated DNS and TUN options. First determine whether the client could reach the URL and whether the returned content was valid for the selected core. Those are separate steps: a successful HTTP download can still contain an unsupported or malformed configuration.
3. Verify That the Profile Loaded Correctly
Seeing a profile name in the list confirms that the client has an entry, but it does not prove that the profile has usable nodes or that the core can run it. Check the import result, profile status, and available proxies before relying on it.
- Check the profile entry: Confirm that the name appears once and that it is the intended profile. If the list shows a warning or failed status, open the profile details or notification for the specific import error.
- Look for proxy nodes or groups: Open the proxy selection page. A profile that contains usable proxies will normally expose nodes or policy groups such as a selector or automatic test group. Exact group names depend on the provider.
- Inspect the core log: Start or reload the core and look for configuration parsing errors, missing fields, unsupported proxy types, or failed resource downloads. A profile can download successfully and still fail during core startup.
- Run a limited connection test: If nodes are listed, test one node or group using the client’s available delay or connectivity check. A delay result tests a particular destination and is not a guarantee that every website or application will work.
- Test traffic through the client: Select a working proxy group, use Rule mode for normal rule-based routing, and make sure the relevant traffic reaches the core through the system proxy or another configured entry path. Then test one known destination and check the connection list or logs.
Do not infer that an entire subscription is broken from one failed node check. A test endpoint may be blocked, slow, or unavailable even when other destinations work. Conversely, a green delay result only indicates that a particular check succeeded at that time; it does not confirm that the node supports every protocol or that the provider’s routing rules are appropriate for your use.
| What you see | What it confirms | Next check |
|---|---|---|
| Profile listed | The client has a profile entry | Check import status and whether the profile is active |
| Nodes or groups listed | The profile contains proxy-related entries | Check whether the selected core accepts their protocols |
| Core starts without a parse error | The effective configuration passed initial loading | Check node reachability and the connection path |
| One delay test succeeds | A test request reached its endpoint through the selected item | Test the actual application or destination that matters |
| A page opens through the client | The tested traffic path works for that request | Use logs and connections to diagnose other failures |
When comparing the imported profile with what is running, remember that a client may apply overrides or generate a runtime configuration. The file downloaded from the provider is not always identical to the final configuration used by the core. If the core reports an error, use the client’s supported profile and override features instead of editing a temporary generated file that may be replaced during the next update.
4. Update the Profile and Handle Provider Changes
A URL-based profile normally keeps its source address so the client can request a newer version. When your provider changes the node list, go to Profiles, select the relevant entry, and use its refresh or update control. The control may appear as a refresh icon or in a profile context menu, depending on the release. Wait for the request to finish; do not assume that clicking it succeeded merely because the interface closed a menu.
- Confirm that you selected the correct profile, especially if the client has profiles from multiple providers.
- Start a manual update and watch for a completion message or error. If there is no visible message, check whether the profile’s update time, node list, or status changed.
- After a successful download, inspect the proxy page for the expected groups or nodes. A provider may rename, remove, or reorganize them between updates.
- Reload or restart the core if the client does not apply the new configuration automatically. Check the core log before assuming that the updated nodes are unusable.
- Retest the selected node or group and one real destination. If only one provider entry changed, do not reset unrelated client settings.
Automatic refresh and active configuration are related but not identical. A client may download the latest subscription in the background while continuing to run an earlier configuration until it applies the update or restarts the core. If an expected node is missing, check the last update result and the active profile first. Then determine whether the provider removed the node, returned a different profile, or the client failed to apply the new version.
Keep a local backup before making manual edits to provider-managed configuration. A later update can replace those edits, and changing the subscription URL or overwriting its profile may make future refreshes impossible. Where the client supports overrides, use them for local preferences that need to survive updates, and verify that the override fields are supported by the selected core.
If the provider has issued a replacement URL, treat it as a new credential. Update the existing profile’s source only if the interface provides a clear URL-edit function and you are sure you are editing the intended entry. Otherwise, create a separate profile, test it, and remove the expired one only after the replacement works. Never assume that a copied URL remains valid indefinitely; providers can revoke tokens or rotate subscription addresses.
5. Troubleshoot Common Import Problems
Start with the exact stage that failed. “Subscription not working” can mean the URL could not be reached, the response was not a compatible configuration, the core rejected a field, no nodes were returned, or a node could not connect. Each cause requires a different check.
- Invalid URL or download failure: Re-copy the URL from the provider’s official account page and check for missing characters, leading or trailing spaces, or expired access. Test the device’s general internet connection. Do not post the full URL to an online checker; it may expose the subscription token.
- Download succeeds but parsing fails: Check the client notification and core log for the first specific YAML or configuration error. The endpoint may have returned an HTML login page, an error message, or a format intended for another client rather than a Clash-compatible profile.
- Profile imports but no nodes appear: Confirm that you imported the provider’s Clash subscription URL, not a portal URL or a rules-only resource. Check whether the provider account is active and whether the response contains proxies. If the provider offers a subscription format selector, choose the format intended for Clash or mihomo.
- Unsupported protocol or field: Record the selected core and its full version. A provider may have added a protocol or option that an older core cannot parse. Update the core through a trusted client release or select a compatible profile format from the provider; do not delete fields at random.
- Nodes appear but all tests fail: Verify that the system clock is correct, the provider account is active, and the device can reach the network. A node may be expired or temporarily unavailable. Check several nodes and read the connection log to distinguish a proxy-server timeout from a destination or DNS failure.
- Import works, but applications do not use the proxy: Confirm that the profile is active and the core is running. Check the system proxy setting or the app’s own proxy configuration. TUN is not required for every setup; consider it only when you need to capture traffic that does not follow the system proxy, and account for its permissions and platform-specific behavior.
- Update appears to do nothing: Confirm the profile’s last update status and compare the current node list with the provider’s announcement. The provider may not have changed the profile, or the interface may still be running a previously applied configuration. Reload the core after confirming that the download succeeded.
For useful diagnostics, note the Clash Verge Rev version, selected core and version, operating system, profile import or update time, and the exact error text. Include whether the profile is a URL-based subscription or a local file, whether nodes are visible, and whether the core starts. Redact the URL, tokens, node passwords, server-specific credentials, and personal account details before sharing logs or screenshots.
FAQ
Can I import a subscription by pasting its URL into the browser?
You can sometimes use a browser to see whether a URL responds, but that does not import the profile into Clash Verge Rev. Browser access may also expose a token in browser history or a download record. Use the client’s URL or subscription import function, and avoid sending the URL to third-party diagnostic sites.
Why does the profile show as imported when there are no usable nodes?
The client may have created a profile entry even if the response contained no proxies, used an incompatible format, or could not be applied by the selected core. Check the import notification, provider format, active profile, proxy list, and core log. A visible profile name alone is not proof of a successful configuration.
Do I need to update the core whenever I update a subscription?
Not necessarily. Subscription updates change the configuration returned by the provider; core updates change the program that interprets it. Update the core if the new profile requires a protocol or field that your current version does not support, and use a compatible release from a trusted source.
Will updating the subscription remove my manual changes?
Changes made directly to provider-managed configuration may be overwritten when the profile refreshes or the client regenerates its runtime configuration. Keep a backup and use a supported override mechanism for persistent local changes. Check the effective configuration and core log after applying an override.