Client selection

V2Ray Client Comparison: v2rayN, v2rayNG and v2flyNG

Choose by platform first, then by core and workflow. Use v2rayN for desktop systems, v2rayNG for Android, and v2flyNG when the v2fly core is specifically required.

Key comparison criteria

Platform, core and features comparison

Maintenance status in the table is qualitative and does not indicate a fixed release schedule. Feature locations and names may change with the client interface, but the selection logic remains largely the same.

Key differences between v2rayN, v2rayNG and v2flyNG
Comparison criteria v2rayN v2rayNG v2flyNG
Platform support Windows、macOS、Linux Android Android
Primary core Desktop clients commonly use the Xray core and provide a unified place to manage configurations, proxies and routing. Xray core v2fly core
Maintenance status Actively maintained Actively maintained Ongoing maintenance
Learning curve Moderate. Desktop features are centralized, but first-time users need to understand the difference between system proxy, routing and TUN. Low. Import a subscription, choose a server and start the system VPN service for a standard setup. Moderate. The workflow resembles other Android clients, but first confirm that the configuration matches the v2fly core.
Subscription groups Well suited to managing multiple subscriptions, with groups for organizing servers and configuration sources. Supports subscription management for maintaining everyday subscriptions and configurations on a phone. Supports subscription management, with an emphasis on configurations built for the v2fly core.
Routing rules interface The desktop configuration workspace is comprehensive, making it suitable for editing routing modes, rule sets and traffic exits. Provides Android routing settings that can be adjusted for different apps and network use cases. Provides basic routing configuration; results depend on the core and the configuration content.
TUN and traffic interception Supports desktop TUN mode or system proxy mode alone; each suits a different range of applications. Uses the Android system VPN service to intercept traffic, with further per-app configuration available. Runs through the Android system VPN service; exact capabilities depend on the v2fly core and configuration.
Notable features Subscription groups, system proxy, routing rules, TUN, logs and core management are centralized in the desktop interface. Mobile subscription import, QR code or clipboard import, per-app controls and routing settings. Follows the v2fly core line and suits users with existing compatible configurations or a need for its specific behavior.
Best suited for Desktop users, people managing multiple subscriptions, and advanced users who need detailed routing and runtime logs. Most Android users, especially those who want quick subscription imports and everyday server switching. Android users who specifically need the v2fly core, already have matching configurations or need a compatibility comparison.

Client-by-client review

Which scenarios suit each client?

The sections below follow real workflows rather than abstract scores. Focus on what needs to be managed after installation and where to troubleshoot when something goes wrong.

Android pick Xray core

v2rayNG: the default choice for everyday Android use

v2rayNG is an Android GUI client powered by the Xray core. The usual workflow is to import a subscription or individual configuration, choose an available server, start the system VPN service, and then adjust routing or app coverage as needed. Unlike desktop clients, Android does not require a separate system proxy switch; the VPN indicator in the status bar is usually the first sign that traffic interception is active.

For everyday use, v2rayNG stands out for its short workflow. Subscription updates, server switching, QR code imports, clipboard imports and basic routing controls are all available in the mobile interface. When controlling traffic by app, first decide which apps should use the client and which should keep their normal network path. For complex configurations, check whether the current core recognizes the required fields instead of repeatedly reinstalling the client.

Most Android users can start with v2rayNG. It is especially well matched when a subscription provider explicitly supplies Xray-compatible configurations or features implemented in the Xray ecosystem. Packages commonly include arm64 and universal builds; check the device architecture in system information before choosing. If it is unclear, see the download page for guidance on the two package types.

Alternative core v2fly core

v2flyNG: choose it when the v2fly core is required

v2flyNG also targets Android, but its core direction differs from v2rayNG: it uses the v2fly core. The interface still centers on configuration import, subscription updates, server selection, the system VPN service and routing settings, so the basic workflow feels familiar. The key question is which core should process the configuration and whether the subscription provider specifies its compatibility range.

v2flyNG makes sense when an existing configuration is maintained around the v2fly core, when behavior needs to be reproduced with that core, or when compatibility issues must be compared against the Xray path. Conversely, if this is a first Android installation with no core requirement, switching back and forth between the two only adds troubleshooting variables. Establish a basic connection with one client first, then investigate protocol parameters and routing differences.

v2flyNG should not be treated simply as a client for low-spec devices. Installation and stability depend on the Android version, processor architecture, configuration complexity and background restrictions, among other factors. Users of older devices should verify the package architecture first and limit complex rules running at the same time. When the configuration source specifies the v2fly core, choose v2flyNG as the matching option.

Scenario recommendations

Choose based on your workflow

The same person may use different clients on desktop and Android. The client names do not need to match; configuration compatibility and efficiency on each device matter more.

Feature guide

How to think about subscriptions, routing and TUN

These features often appear together in client descriptions, but they address different layers of the setup.

A

Subscription management keeps configurations up to date

Subscriptions retrieve and update configurations in bulk. Import support is only the starting point: check whether groups are clear, whether update failures are reported, and whether the active selection is preserved afterward. With multiple desktop subscriptions, v2rayN offers more convenient centralized management; mobile workflows usually focus on daily updates and quick switching.

B

Routing rules determine the traffic exit

Routing is not a connection switch. Once the client is running, it directs traffic based on domains, IPs, apps or rule sets. The more rules there are, the harder troubleshooting becomes. New users should start with a clear preset mode, confirm the basic connection, and then add custom rules one at a time.

C

TUN expands desktop traffic coverage

System proxy mainly affects programs that follow the operating system's proxy settings, while TUN can cover more types of traffic. v2rayN provides a desktop TUN entry point, but enabling it requires understanding permissions, virtual network adapters and routing conflicts. Android clients intercept traffic through the system VPN service, so their interface labels do not map exactly to desktop terminology.

D

Core compatibility matters more than similar interfaces

Xray and v2fly are related but distinct core paths. A typical subscription may work with either, but specific protocol fields, transport parameters and routing behavior still depend on compatibility. When the configuration source specifies a core, follow that guidance; without a restriction, start with the recommended client for the platform.

Final recommendation

Choose v2rayN on desktop and start with v2rayNG on Android

v2rayN suits Windows, macOS and Linux, covering subscription groups, system proxy, routing rules, TUN and log-based troubleshooting. v2rayNG fits most Android scenarios with a short workflow and clear Xray compatibility. Keep v2flyNG for the v2fly core path, especially when matching configurations already exist or core compatibility needs to be compared.

After choosing a client, select the package for your current system. The download page explains the differences between the desktop and WPF editions, Apple Silicon and Intel, Android arm64 and universal builds, and Linux deb and rpm packages.