Check the link prefix before choosing an import option. vmess:// and vless:// links usually contain connection settings for a single node; a subscription URL provides a list of nodes that can be updated. This guide walks first-time v2rayN and v2rayNG users through identifying links, importing from the clipboard, updating subscriptions, and troubleshooting—along with the settings you should leave unchanged.
Share Links vs. Subscription URLs: Different Things to Import
A share link is a text representation of a connection profile. A typical vmess:// link contains a Base64-encoded configuration after its prefix. Decoded, it usually includes the server address, port, user ID, transport, and a name. vless:// commonly uses a URI format, with the user ID, address, and port in the main part and other options in query parameters. Neither type is a regular webpage for a browser to open.
A subscription URL usually starts with https://. The client requests the URL and parses the node list in the response. The response may contain one share link per line or a Base64-encoded version of those links; the provider determines the format. A subscription can also return just one node, so the number of nodes alone does not tell you whether a URL is a subscription.
Subscription URL
RecommendedProvides a source for an updatable node list. If the provider changes addresses or adds nodes, the client gets those changes only after a successful subscription update; saving the URL does not sync it in real time.
Best for: A provider-issued client subscription you need to keep up to date.
Single share link
Imports the node settings as they are now. If the server changes its port, user ID, or transport settings, the old profile will not update itself—you’ll need to import it again or edit it manually.
Best for: Testing one node or importing a standalone connection profile from an administrator.
First, confirm what the provider says the link is for
For a vmess:// or vless:// link, use the share-link import option. For an HTTPS URL, first confirm it is a subscription URL—not a sign-in page, purchase page, or information page—then add it as a subscription group.
Link parameters: Don’t confuse the server port with the local port
The VLESS example below illustrates the link structure. The domain and user ID are for demonstration only; they do not point to a working service. Use the complete parameters supplied by your provider. Do not use this example as a node.
vless://[email protected]:443?encryption=none&security=tls&type=ws&host=node.example.com&path=%2Fproxy&sni=node.example.com#demo-ws
| Field | Example meaning | What to check when importing |
|---|---|---|
node.example.com:443 | Server address and remote port | Do not replace these with the local proxy listening port. |
encryption=none | VLESS protocol parameter | This does not mean the connection is entirely unencrypted; TLS protects the example’s traffic. |
security=tls | TLS enabled for transport security | Configure this as required by the server. Do not disable certificate verification without a reason. |
type=ws | WebSocket transport | The transport type, Host, and path must match the server configuration. |
path=%2Fproxy | URL-encoded path /proxy | Keep the encoding from the original link. Do not substitute text reformatted by a chat app. |
sni | Server name used for the TLS handshake | It may differ from the connection address; do not remove it without checking. |
#demo-ws | Node name | Used to identify the node in the list; it is not an account password. |
VMess and VLESS are proxy protocols, WebSocket is a transport, and TLS is a transport security layer. A link being recognized does not mean the selected core supports every option it contains. v2rayNG uses the Xray core; v2flyNG uses the V2Fly core. If your provider requires a specific Xray feature, check that your client and core support it—don’t rely on the vless:// prefix alone.
Importing in v2rayN: Clipboard Links and Subscription Groups
On desktop, copy the complete text first, then choose the matching option. The menu names below are common in Chinese-language builds; wording may vary by version or interface, but importing share links and updating subscriptions are separate workflows. Before you start, note the current group name to avoid mixing test nodes into a list you use regularly.
One or more share links
- Copy the complete link starting with
vmess://orvless://. Leave out descriptions, quotation marks, and code fences. To import multiple links at once, you can usually copy one link per line. - Open v2rayN and choose “Import share links from clipboard” from the “Servers” menu. In desktop versions that support the shortcut, you can also press
Ctrl+Vin the main window. - Check the new entry’s address, port, protocol, and transport. An empty name does not necessarily mean the import failed, but a missing address or user ID means you should check the original text.
- Select the node you want and set it as the active server. Then configure the system proxy if needed. “Imported” only means the profile was added to the list; it does not mean app traffic is using the proxy.
Add a subscription and fetch its node list
- Copy the subscription URL explicitly provided by your provider. Go to “Subscription Groups” → “Subscription Group Settings” and add a group.
- Enter a name you can recognize, paste the full URL into the address field, and save. If the interface has an update toggle, make sure updates are enabled for the group.
- Return to “Subscription Groups” and update the current group or all subscriptions. If the menu offers “Update without proxy” and “Update through proxy,” choose based on whether the subscription URL is reachable from your network.
- Check that nodes appear under the group and review the update result. If the group has a name but no entries, troubleshoot downloading and parsing first instead of repeatedly creating groups with the same name.
Importing in v2rayNG: Add a Profile, Then Connect
Clipboard import on Android also just adds a profile. The first time you connect, Android asks for permission to establish a VPN connection. This lets the client handle selected traffic; it is not a subscription sign-in. Import the list first, then configure routing or per-app settings. This makes troubleshooting easier by avoiding changes to several options at once.
- Share link: Copy the complete link, open v2rayNG, and tap “+” in the top-right corner of the main screen → “Import from clipboard.” Check the node details after import, then select the node.
- Subscription URL: Open “Subscription settings” from the side menu, tap “+”, enter a name and URL, then save. Do not paste an HTTPS subscription URL into the single-node server address field.
- Update the list: Return to the main profile screen, open the menu in the top-right corner, and select “Update subscription.” Wait for the update to finish, then check the entries in the relevant subscription group.
- Connect: Tap the connect button and approve the system permission when prompted the first time. Test the app you want to use, then adjust per-app proxy settings and routing rules as needed.
Using the Same Subscription on Both Devices
Desktop: v2rayN
- Save the URL in Subscription Group Settings.
- After updating, select an active server.
- Set up a proxy endpoint for apps that support system proxy settings.
Android: v2rayNG
- Add the same URL separately in Subscription settings.
- Select Update subscription from the profile list.
- Connect through the VPN and check whether your apps can access the network.
Each client manages its own profiles. Each device gets its own list only after a successful update. Check that your provider allows use on multiple devices.
A subscription provides node settings, but may not include client routing presets, DNS settings, the system proxy toggle, or per-app rules. So two devices using the same subscription may behave differently because their local settings differ. When switching devices, keep track of node sources and local settings separately; a subscription update does not copy every option.
Subscription Updates Failing or Returning No Nodes? Check the Request, Response, and Connection
First, identify where the failure occurs. A timeout means the client did not receive a response in time. A parse error means it received content but could not convert it into a supported configuration. If a node imports but will not connect, check the server settings, core support, and network route. Each issue needs a different fix.
Why does importing a subscription URL from the clipboard show no profiles?
Add HTTPS URLs in Subscription settings, then update the subscription. Only share links such as vmess:// and vless:// belong in the single-node import option. If your provider gave you a webpage URL, get the actual client subscription URL from that page first.
My subscription update keeps timing out. Should I switch to updating through a proxy?
First, make sure you have a working node and an active proxy connection, then try updating through the proxy. If you don’t have a working connection, check your direct network access, whether the URL has expired, and the provider’s service status. “Update through proxy” is not a universal fix.
The update says it succeeded, but the node count is still zero. What should I do?
Check the current group filters, then review the logs for parsing errors. The subscription endpoint may be returning a sign-in page, an account-expired notice, or a format the client does not support. Ask your provider which subscription format works with v2rayN or v2rayNG; reinstalling the client should not be your first step.
VLESS imported successfully, so why can’t it connect?
Check the address, remote port, user ID, transport type, SNI, and path. For links using REALITY, also check the public key, shortId, and any other required parameters, and make sure your Xray core supports them. Keep the original link intact; don’t remove fields just because you don’t recognize them.
Why did my manual node edits disappear after I updated the subscription?
A subscription update may recreate the entries in its group from the remote content. To keep manual changes, save them in a separate group that is not managed by the subscription, and note why you changed them. Don’t expect temporary edits in a subscription group to persist.
HTTP status codes can help narrow down the issue. 401 or 403 usually means you should check access permissions, the subscription token, or provider restrictions. For 404, confirm the path is still valid. 429 means requests may be rate-limited, so stop refreshing repeatedly. Check the response and your provider’s guidance; a status code alone does not prove that an account has expired.
Subscription Privacy and Maintenance: Treat Full Links Like Credentials
User IDs in share links and tokens in subscription URLs may grant access. Base64 is an encoding, not encryption for protecting secrets. Posting a complete link in a public chat, support-ticket screenshot, or online decoder may expose your configuration. When troubleshooting, share only redacted fields and error details.
- Before copying: Get the URL from a trusted source. Preserve capitalization, query parameters, and URL encoding; don’t add spaces or punctuation.
- Before updating: Check the group, available nodes, and update method. If updates keep failing, check the logs first instead of clicking Update repeatedly.
- When reporting an issue: Hide the full user ID, subscription token, and QR code. Redact any complete request URLs that appear in logs.
- If a link is exposed: Reset the subscription token or connection credentials in your provider account, then update the saved URL on each device. Deleting a chat message cannot revoke credentials that have already been copied.
- When moving to another device: Check the subscription, active node, system proxy or VPN connection, and routing settings separately. Verify that the apps you use can access the network.
Workflow: Import, Update, Select, Connect, Verify
Single share links skip the subscription update step; subscription URLs need to fetch a node list first. Handle one stage at a time. If an error occurs, note which stage failed and check the link format, network route, or node settings accordingly.