v2rayN Add Subscription Groups: Step-by-Step Setup Guide

This beginner guide shows how to add a subscription URL in v2rayN, organize servers into a group, refresh the list, and check that every node was imported correctly.

At a glance

This beginner guide explains how to add a subscription URL in v2rayN, create a clearly named subscription group, refresh the server list, and confirm that every imported node contains usable parameters. It also covers the difference between a subscription group and a manually added server, the meaning of update options, common timeout and empty-list errors, and the checks to perform before selecting a node or enabling the system proxy.

Understand what a subscription group does

In v2rayN, a subscription group is a named container associated with a subscription URL. The URL normally returns several server configurations in one response, while the group records where those configurations belong and how they should be updated later. After a successful update, the imported entries appear in the server list with remarks supplied by the subscription provider. You can then test, select, rename, or filter those entries without pasting each vmess:// or vless:// link separately.

A subscription group is not the same thing as a proxy mode, a routing rule, or a core. The group manages the source and organization of server entries. The Xray or V2Fly core processes the selected server after v2rayN generates a runtime configuration. The system proxy, TUN mode, and routing settings determine which applications send traffic through that local proxy. Keeping these layers separate makes subscription troubleshooting much easier: an empty group is an import problem, while an imported node that cannot connect is usually a node, core, DNS, routing, or network problem.

1 URL
Required subscription source
10808
Common local SOCKS port
10809
Common local HTTP port
2 checks
Group update and node test
Item Purpose What it does not do
Subscription URL Retrieves a provider response containing one or more configurations It does not guarantee that every returned node is online
Subscription group Stores the URL, name, and update behavior for an imported collection It does not start the core or enable the system proxy
Server entry Represents one imported VMess, VLESS, Trojan, or other supported configuration It does not automatically update unless it belongs to an updated group
Selected server Tells v2rayN which imported configuration should be used for the next connection It does not prove that the remote endpoint is reachable

Prepare the URL and choose a group name

Before opening v2rayN, copy the complete subscription URL from the provider’s account or service page. A valid subscription URL commonly begins with https://, although the provider may use another secure endpoint format. Copy the entire address, including the path and query string. Do not copy only the domain name, remove characters after ?, or insert spaces when moving the URL between devices. A browser may show a download response or unreadable encoded text when you open the address directly; that alone does not mean the URL is invalid.

Choose a group name that identifies the source rather than a temporary node. Names such as “Primary subscription”, “Work nodes”, or “Backup provider” are easier to recognize than “New group 1”. If you maintain more than one subscription, use a consistent naming pattern and avoid identical group names. A descriptive name helps you select the correct group during updates and prevents accidentally refreshing an old URL.

Recommended group record

Group name
Primary subscription
URL type
Secure subscription address
Update source
Provider response

Use one stable name for the same provider so later updates remain easy to identify.

Node data after import

Protocol
VMess, VLESS, or supported type
Server
Remote host and port
Transport
TCP, WebSocket, gRPC, or provider-defined value

The client fills these fields from the response; do not manually guess missing transport or security values.

Use the same URL only when the provider states that it can be shared across your devices and clients. Some services apply traffic limits, device limits, or request-frequency limits to one subscription address. If an import works once but later returns an authorization error, check the provider account and subscription expiration before repeatedly updating the group. Repeated requests do not repair an expired or revoked address.

  1. Open subscriptions

    Launch v2rayN and open the main window. Find “Subscription group” or “订阅分组” in the top menu, toolbar, or group management area, depending on the client language and release.

  2. Add a group

    Choose the command for adding or managing subscription groups, then select “Add” or “+”. Enter a short group name that identifies the provider or purpose.

  3. Paste the URL

    Paste the complete subscription URL into the address field. Check the beginning, final characters, and absence of spaces before saving the group.

  4. Save the record

    Click “Confirm”, “Save”, or the equivalent button. The group should appear in the subscription-group list even before its first update completes.

  5. Update the group

    Right-click the new group or use the subscription update command, then wait for the response and inspect the number of imported entries.

Add the group and run the first update

Open the subscription management area rather than the single-server import command. In many v2rayN releases, the relevant path is “Subscription group” → “Manage subscription groups” or “订阅分组” → “订阅分组设置”. The exact wording can change between releases and language packs, but the target screen normally contains a group name, a subscription URL, and an option to add, edit, delete, or update the record. If you only see fields for an address, port, user ID, and transport, you are editing a single server instead of a subscription group.

After saving the group, start its first update. You may be able to select “Update current subscription” for one group or “Update all subscriptions” for every saved group. Use the single-group action for the first test. It gives you a smaller result to inspect and avoids making several network requests when the URL, proxy setting, or provider account still needs verification. Keep the v2rayN log window visible if the update command opens one, and wait until the request finishes rather than clicking the update command repeatedly.

The update may use the direct network connection or an existing proxy, depending on the v2rayN release and its subscription settings. If the provider endpoint is reachable only through an already working node, select the option equivalent to “update through proxy” and choose a known-good local proxy path. If no working node exists yet, direct mode is the only possible first test. Do not enable a proxy-update option pointing to a stopped core or an unavailable local port, because the request will fail before v2rayN can download the list.

Update result Likely meaning Next action
Group saved and nodes appear The URL was accepted and the response was parsed Check node fields, test one entry, and select a suitable server
Request timed out The endpoint or route was not reachable within the request window Test the URL in a browser, check DNS, then retry direct or through a working proxy
Update succeeds but list is empty The response format may not match the selected parser or the provider returned no entries Confirm the provider’s client format and inspect the response status
Authentication or authorization error The URL expired, was revoked, or requires an account session Generate a new URL from the provider and replace the saved group address

Verify that the imported nodes are complete

A successful update message is only the first checkpoint. Scroll through the newly populated server list and confirm that the group assignment, remarks, protocol, address, and port are present. A node may be listed even when the remote server is offline, its certificate is invalid, or its transport parameters are no longer accepted. Select one or two entries for a connection test instead of assuming that the first row is the best choice.

Open the server details or edit view for a test entry. For a VMess configuration, check the server address, port, user ID, alter or security-related fields required by the imported format, transport, and TLS settings. For VLESS, check the user ID, encryption value, flow when supplied, transport, SNI, fingerprint, and security settings. For WebSocket or gRPC nodes, verify that the path, service name, host header, or related transport values were not lost during parsing. Do not replace a missing value with a random default; ask the provider for the correct configuration format when required fields are absent.

Next, check the local side. v2rayN commonly exposes a SOCKS listener such as 127.0.0.1:10808 and an HTTP listener such as 127.0.0.1:10809, but the actual values can be changed in settings. If another application already occupies the selected port, the core may start unsuccessfully even though the subscription imported correctly. Confirm the selected core type, start the core, and inspect the running status before testing a browser or command-line application.

Why did the group save but no nodes appear?

The record may have been saved without a completed update. Run “Update current subscription” and inspect the log. If the request succeeds but the list remains empty, verify the provider’s response format and whether the URL is still active.

Why does an update work in a browser but fail in v2rayN?

The browser may already use a different network path, account session, or proxy. Compare direct and proxy update modes, then check whether the endpoint requires special headers or authorization supported by the provider’s documented client.

Why are there many nodes but none connect?

Import success only proves that the response was parsed. Test the core, DNS, server reachability, TLS or Reality parameters, system time, and local listening ports before deleting the subscription group.

Why did an update remove an old node?

A subscription update normally replaces or synchronizes the group with the provider’s current response. The provider may have removed, renamed, or rotated that node. Keep manual servers in a separate group if they must not be affected by subscription updates.

Maintain groups without losing control

Once the first update works, keep the group structure simple. Use one group for each provider or clearly defined source, and avoid repeatedly creating a new group for every update. Duplicate groups can make the server list confusing and cause you to update an old URL while using a different group. When editing a group, change only one variable at a time—such as the URL, group name, or update-through-proxy option—then run a new update and record the result.

Set an update schedule that matches the provider’s recommendation rather than refreshing every few minutes. Some providers rotate configurations daily, while others update only when an account plan changes. Excessive requests can trigger rate limits and make a valid subscription appear temporarily unavailable. After a successful update, note the approximate node count and the date of the last successful refresh. A sudden change from 30 entries to zero is easier to identify when you have a baseline.

Recommended organization: separate managed and manual entries

Subscription group
  • Provider URL
  • Automatic or manual updates
  • Nodes that may be replaced
Manual server group
  • Individually imported links
  • Stable test configurations
  • Entries that updates must not remove

Separate sources make updates predictable and make it clear which entries came from the provider response.

If an update error appears, first determine whether the problem is the URL, the request path, or the parser. A timeout points to reachability, DNS, firewall rules, or an unsuitable proxy path. A certificate or TLS error points to the endpoint’s security configuration or the local clock. A successful HTTP response with zero nodes points to response content, format compatibility, or provider-side account status. An imported node that fails only during connection should be investigated separately from the subscription request.

Keep the client version and core version compatible with the configurations supplied by the provider. A subscription may contain VLESS with Reality, VMess over WebSocket, gRPC, or other transport combinations that require an appropriate Xray or V2Fly core. If only some nodes fail, compare their protocol and transport fields instead of changing every group setting. If all nodes fail immediately after a client or core update, temporarily test a known-good configuration and inspect the generated configuration or core log.

Conclusion: validate the source before judging the nodes

The safest order is to confirm that the group contains the complete URL, complete one update, inspect the imported parameters, start the correct core, and test a single node. This separates subscription delivery from node availability and prevents a bad update path from being mistaken for a broken server list.

Download v2rayN View installation packages for each platform