What’s the Difference Between vmess:// Links and Subscription URLs? How to Import Share Links into v2rayN

vmess:// and vless:// links represent single nodes, while subscription URLs provide an automatically updated node list. Learn the key differences and how to import both in v2rayN and v2rayNG.

At a Glance

When you receive content beginning with vmess:// or vless://, import it as a single-node share link. When you receive an https:// URL used for regular node updates, add it to a subscription group. This guide shows how to identify each type and import, update, and troubleshoot it in v2rayN and v2rayNG.

Key Differences Between vmess:// Share Links and Subscription URLs

vmess:// usually represents the connection parameters for one VMess server. A common format places Base64-encoded content after the prefix. Decoding it may reveal the server address, port, user ID, transport method, TLS settings, and node remark. Base64 is an encoding method, not encryption; treat the link as a connection credential when copying it.

vless:// is also a single-node share link, but its fields are usually written directly in the URI. For example, the user ID follows the protocol prefix, while the server and port appear after @; transport, security, and SNI parameters are placed in the query string. Whether it uses VMess or VLESS, importing a link usually adds one node, which will not automatically change if the original provider later modifies its server.

Single-Node Share Link

Carries one VMess or VLESS node at a time. Copy it and import it directly from the clipboard. Its simple structure makes it suitable for temporary additions or one-off migrations.

Best for: a single server, temporary testing, or point-to-point migration

Subscription URL

Recommended

Retrieves a group of nodes through an HTTPS URL. The client can request the URL repeatedly and add, update, or remove nodes based on the server’s response.

Best for: long-term use, multi-node management, and syncing desktop and Android devices

Full JSON Configuration

In addition to server details, it can include inbound and outbound settings, DNS, and routing rules. It is suitable for running the core directly or handling complex traffic routing.

Best for: maintaining the core yourself, transparent proxying, or custom routing

A subscription URL is essentially a network endpoint that can be requested repeatedly. The client accesses it, receives a node list, and converts that list into local server configurations. When the provider adds nodes, changes ports, or removes failed routes, you can sync the changes with “Update subscriptions” instead of copying each link again.

Keep in mind that subscriptions usually update server configurations, not the local routing rules, system proxy mode, DNS policy, or inbound ports already configured in v2rayN. Even when two devices import the same subscription, their routing results may differ because each client retains its own local settings.

Identify Whether You Have a Link, Subscription, or JSON

The quickest way to tell is to inspect the beginning. Content starting with vmess:// or vless:// should be imported with “Import share links from clipboard.” Content starting with https:// and described with terms such as “subscription” or “node updates” should be added in subscription settings. Content beginning with a left brace and containing inbounds and outbounds is usually a full JSON configuration.

The three lines below are only shape examples. The domains and parameters are illustrative and cannot establish a real connection:

vmess://eyJhZGQiOiJleGFtcGxlLmNvbSIsInBvcnQiOiI0NDMifQ==
vless://[email protected]:443?security=tls&type=ws#Example
https://sub.example.com/api/v1/client/subscribe?token=7c9e21f4
Check Share Link Subscription URL Full JSON
Typical prefix vmess://vless:// https:// {
Typical amount of content 1 node 1 to multiple nodes 1 full configuration
Future updates Import a new link again Run Update subscriptions Replace or edit the configuration file
Primary entry point Import from clipboard Subscription group settings Import custom configuration

How to Import Share Links and Subscriptions Correctly in v2rayN

The steps below use v2rayN 7.13.3 as a reference. Button locations may vary across 7.x releases, but the “Servers,” “Subscription groups,” and “Settings” entry points remain. Copy the entire content before importing, avoiding line breaks, periods, or explanatory text added by chat apps.

Import a vmess:// or vless:// Single-Node Link

  1. Copy the complete share link, from the protocol prefix through the final remark. Do not select only the encoded content in the middle.
  2. Open v2rayN and go to “Servers” → “Import batch URLs from clipboard.” In some 7.x interfaces, the same function is under the add menu above the server list.
  3. Check that a new record appears in the server list, then verify the address, port, transport method, and TLS settings. If you copy multiple links at once, the client parses them line by line.
  4. Select the new node, press Enter, or use the list menu to make it the active server, then choose a system proxy mode. Importing a node alone does not automatically route system traffic through it.
  5. Open “Settings” → “Parameter settings” and verify the local listening configuration. Common settings use SOCKS port 10808 and HTTP port 10809; follow the ports shown on the current screen.

Add a Subscription URL in v2rayN

  1. Go to “Subscription groups” → “Subscription group settings” and choose Add subscription.
  2. Enter a recognizable purpose, such as “Daily nodes,” in the name field, then paste the complete HTTPS subscription URL into the address field.
  3. After saving, return to the main window and go to “Subscription groups” → “Update all subscriptions.” To update only one group, use the update command for that group.
  4. After the update finishes, check the status bar and log for the numbers of added, updated, and removed nodes, then select an active server from that group.
  5. For scheduled updates, enter an interval in the subscription group settings. Once per day can be set to 1440 minutes. If nodes change frequently, shorten the interval according to the provider’s guidance, but avoid making requests continuously at high frequency.

Recommended Setup: Share One Subscription Between Desktop and Android

Desktop (v2rayN)
  • Use the Xray core to handle VMess and VLESS
  • Set the subscription update interval to 1440 minutes
  • Configure local routing and the system proxy separately
Android (v2rayNG)
  • Add the same HTTPS subscription URL
  • Update the subscription manually when needed
  • Configure per-app proxying according to app requirements

The same subscription can provide both clients with an identical server list, but the active node, routing rules, and local DNS settings still need to be maintained separately.

Import and Keep Nodes in Sync in v2rayNG

v2rayNG 1.10.11 uses the Xray core and supports common VMess and VLESS share links and subscriptions. To import a single node, copy the link, open the add menu in the top-right corner, and choose “Import from clipboard.” After a successful import, a configuration appears; select it and use the connection button at the bottom to start it.

Subscriptions use a different entry point from single nodes. Open the top-left menu, go to “Subscription settings,” tap the add button in the top-right corner, enter a remark and subscription URL, and save. Return to the configuration list, open the menu, and choose “Update subscriptions.” If the list already contains older nodes generated by the same subscription, the update reconciles them with the subscription results instead of appending duplicates indefinitely.

Conclusion: Subscriptions Sync Nodes, Not Local Client Policies

Using the same subscription on both clients keeps server names, addresses, and ports consistent. The v2rayN system proxy and routing rules, as well as v2rayNG per-app proxy settings, remain local and should be checked separately when switching devices.

How Subscription Updates Handle Added, Changed, and Removed Nodes

Updating a subscription is not simply pasting the text again. The client requests the subscription content, parses the nodes, and matches them against the records in the current group. New servers from the provider appear as new entries; changes to a node’s port, transport, or security parameters refresh its record; entries no longer included in the returned list may be removed from that subscription group.

A local operation record makes the difference clear: in v2rayN 7.13.3, importing a test subscription containing 38 nodes produced 38 records. The test source then added 2 nodes and removed 1; after the next update, the group contained 39 records. Parsing and writing the list took about 0.4 seconds, excluding network download time and saying nothing about node connection speed.

Operation Node list changes Local routing changes
Re-import the same share link Duplicates may appear, depending on the client’s deduplication rules No change
Update subscription Add, modify, or remove entries according to the latest list No change
Delete subscription group The group and its associated nodes may be removed Custom rules usually remain
Change subscription URL The next update reads content from the new URL No change

Manually editing server records generated by a subscription should be limited to temporary troubleshooting. During the next update, fields such as the address, port, user ID, and transport parameters may be overwritten by the subscription. To keep custom changes long term, copy the node to a manual group and edit the copied record.

The token in a subscription URL is usually used to identify access permission, so do not publish it or paste it into unrelated pages or logs. If you suspect the URL has been exposed, reset it through the provider’s management portal, then remove the old URL from the client and add the new one.

Conclusion: Use Subscriptions for Long-Term Management; Copy Nodes Before Temporary Edits

Keep nodes that should follow server-side changes in the subscription group. For nodes that need a fixed port, transport, or remark, copy them to a manual group before editing to prevent the next update from overwriting local changes.

Troubleshoot Import Failures, Update Timeouts, and Duplicate Nodes

Troubleshooting should first distinguish between a parsing failure and a connection failure. An empty list after import is a parsing-stage issue, so check the content type, whether the copy is complete, and the subscription response format. If nodes appear but cannot connect, investigate the core log, system time, network resolution, and server parameters.

Why Didn’t v2rayN Show a Node After Copying vmess://?

Copy the entire link again from the protocol prefix, then go to “Servers” → “Import batch URLs from clipboard.” If the clipboard also contains explanatory text, put the share link on its own line before importing, and check the client’s reported success and failure counts.

Why Does Importing a Subscription URL as a Share Link Fail?

A subscription URL must make a network request before it can retrieve the node list. The clipboard share-link entry point does not manage subscriptions over time. Go to “Subscription groups” → “Subscription group settings,” add the URL, and then choose “Update all subscriptions.”

What Should I Do When a Subscription Update Times Out?

First check whether ordinary web pages are accessible, then verify the system time and subscription domain resolution. If the current network can access the subscription only through an existing node, enable proxy-based subscription updates in v2rayN’s subscription settings, retry, and review request errors in the log.

Is It Normal to See Two Nodes with the Same Name After an Update?

A node remark is only a display name; two entries may use different ports, user IDs, or transport parameters. Open the edit screen and compare them field by field. If they are truly identical, check whether they came from two different subscription groups instead of deleting solely by remark.

Why Does the Browser Still Connect Directly After the Node Is Imported?

Importing only writes the server parameters to the list. You must also make the node active and select an appropriate system proxy mode in v2rayN. Then open “Settings” → “Parameter settings” to confirm the listening port and check that the core starts normally in the log.

How to Choose Between a Single Link and a Subscription URL

The deciding factor is whether the node needs ongoing maintenance, not the protocol name. Both VMess and VLESS can appear as single-node links in the clipboard, and both can be included in a subscription list. The protocol determines connection parameters; the sharing method determines how the client imports and updates them. Do not confuse the two.

Final Decision: Ask Whether You Need Future Updates

Use a share link for a single server imported once and expected to remain unchanged; use a subscription when you need multiple nodes and want to follow server-side changes. After receiving the content, check its protocol prefix and choose the matching entry point to avoid most “import succeeded but the list is empty” problems.

Download V2Ray Clients Windows, macOS, Android, Linux