Choosing a Client

v2rayN vs v2rayNG vs v2flyNG

Start by narrowing the options by operating system, then compare the core, subscription management, routing rules, and TUN takeover method. Choose v2rayN first for desktop; on Android, choose between v2rayNG and v2flyNG based on the core your configuration requires.

Quick Take All actively maintained
Windows · macOS · Linux

Choose v2rayN for Desktop

Complete settings for subscription groups, advanced routing, and TUN mode.

Android · Xray Core

Best Android Pick: v2rayNG

Broad documentation coverage, with common protocols and routing settings easy to find.

Android · V2Fly Core

Choose v2flyNG for V2Fly Compatibility

The clear choice when your configuration depends on v2fly behavior.

Feature Comparison

Complete Comparison of the Three Clients

The client names are similar, but their platform roles differ. Confirm your device platform first, then check subscription and routing needs instead of choosing by core name alone.

Comparison Criteria v2rayN v2rayNG v2flyNG
Platform Support Windows、macOS、Linux Android Android
Primary Core Xray, with comprehensive desktop configuration options Xray v2fly
Maintenance Status Actively maintained Actively maintained Actively maintained
Setup Difficulty Moderate. Basic connections are straightforward, with many advanced settings Low. Key actions are centralized for mobile use Moderate. Confirm core and configuration compatibility first
Subscription Management Supports multiple subscriptions, groups, updates, and server filtering Supports subscription import, updates, and node list management Supports subscription import and node management
Routing Rules UI Comprehensive desktop controls for editing rule sets and outbound relationships Routing controls suited to common mobile split-routing needs Routing capabilities built around v2fly configuration semantics
TUN and Traffic Takeover Provides TUN mode for applications that do not read the system proxy Takes over device traffic through the Android VPN service Takes over device traffic through the Android VPN service
System Proxy Provides system proxy toggles and mode selection Primarily connects through the mobile system's VPN service Primarily connects through the mobile system's VPN service
Notable Features Subscription groups, routing rules, system proxy, TUN, DNS, and custom outbounds Mobile subscriptions, per-app handling, routing settings, and quick connect The v2fly core path, subscription management, and the mobile VPN service
Best For Desktop users, multiple-subscription users, and anyone managing complex routing or debugging Most Android users, first-time setup users, and Xray configuration users Android users with existing v2fly configurations or a specific core-compatibility requirement

On mobile, swipe horizontally to view the table. Maintenance status is qualitative; actual features depend on the current client interface and the core configuration in use.

Client-by-Client Guide

Platforms, Configuration Depth, and Core Choice

These three clients are not simple substitutes on the same platform. v2rayN targets desktop use, while v2rayNG and v2flyNG target Android; the key difference between the latter two is their core and configuration compatibility path.

DESKTOP · XRAY

v2rayN: The Most Complete Desktop Configuration Interface

Download v2rayN

v2rayN supports Windows, macOS, and Linux. It brings subscription management, server lists, system proxy controls, routing rules, DNS, TUN, and log viewing into one desktop interface. The basic flow is simple: import a subscription and choose a node. Even with multiple subscriptions, server filters, rule priorities, and custom outbounds, v2rayN still provides enough room for detailed management.

Desktop applications do not all follow the system proxy. Browsers usually read system proxy settings, while some command-line tools, game launchers, and standalone network components may bypass them. When that happens, first determine how the application handles proxies, then decide whether to enable TUN. TUN covers more traffic, but it also requires careful handling of virtual network adapter permissions, DNS, and routing conflicts, so it should not be treated as the default fix for every problem.

Key Strengths
A complete configuration hierarchy makes multiple subscriptions and complex routing easier to manage.
Keep in Mind
There are many settings; after changing routing or DNS, reconnect and verify the result.
Best Devices
Desktop computers used long term, and work environments that need centralized management of multiple subscriptions.
ANDROID · XRAY

v2rayNG: The Default Android Choice

Download v2rayNG

v2rayNG follows the Xray core path and suits most Android devices. Common tasks focus on importing subscriptions, choosing nodes, adjusting routing, and toggling the connection. For a first setup, update the subscription, select an available node, and authorize the system VPN service. Unlike desktop system proxying, mobile connections typically use the system VPN service to take over traffic, so permission prompts and battery background policies directly affect connection stability.

When the subscription's protocol parameters, transport methods, or routing rules are organized around Xray configuration, v2rayNG is usually the more direct choice. For per-app traffic routing, first review the client's per-app settings and then check whether the target app is included in the takeover scope. A successful connection only confirms that the local service is running; verify the route through real-world access and DNS results.

Key Strengths
A focused workflow and broad Xray documentation make it the preferred Android starting point.
Keep in Mind
Background restrictions may stop the VPN service; allow it to keep running in the system settings.
Best Devices
Everyday Android phones and tablets, including scenarios that require per-app traffic handling.
ANDROID · V2FLY

v2flyNG: Choose It When You Need the V2Fly Core

View Android Downloads

v2flyNG is not a feature-expanded version of v2rayNG; it is an Android client built on a different core path. It is better suited to users who already rely on v2fly configuration, need V2Fly configuration semantics, or want their mobile setup to match an existing v2fly environment. The two Android clients have similar workflows, but the same complex configuration may differ in supported fields, defaults, and routing behavior between cores.

Before choosing v2flyNG, check which core capabilities your subscription or custom configuration depends on. Typical subscription users do not need to install both clients just because their names are similar. Identify the core first, then keep the matching client to make troubleshooting clearer. If the provider explicitly requires v2fly behavior, or the rules have already been validated in a v2fly environment, v2flyNG is the better fit.

Key Strengths
Its core focus is explicit, making it easier to continue using existing V2Fly configurations and workflows.
Keep in Mind
Do not assume that complex configurations will behave identically across different cores.
Best Devices
Android devices with existing v2fly configurations or a specific compatibility requirement.
Choose by Use Case

Choose a Client by How You Use It

The platform determines the available options, while configuration complexity determines how the client should be used. These recommendations cover common scenarios and do not replace checking the subscription format and device architecture.

New users: use v2rayN on desktop and start with v2rayNG on Android. For the first setup, only import and update the subscription, choose a node, and verify the connection. Do not change DNS, routing, and TUN at the same time. Add settings one at a time after the basic connection works.

Advanced users: choose v2rayN on desktop when you need subscription groups, server filtering, domain-based routing, custom DNS, or TUN. On Android, choose v2rayNG or v2flyNG based on the core, then check per-app settings and routing rules separately rather than copying option names from the desktop interface.

Multi-device users: using v2rayN on a computer and v2rayNG on Android is the clearest combination. The subscription URL can be shared, but routing should be managed separately because desktop system proxying, desktop TUN, and the mobile VPN service take over traffic differently. Changing one client's configuration does not guarantee the same result on the other.

Users with older phones: first check the Android version requirements and processor architecture; the download page provides arm64 and universal installation options. Choose by core compatibility: try v2rayNG for standard Xray subscriptions, and choose v2flyNG when the configuration explicitly depends on v2fly. If the connection is unstable, also check background restrictions and battery-saving policies.

Decision Order

Choose a Client in Four Steps

Following a fixed order avoids repeatedly comparing names and feature lists.

  1. 1

    Check the Operating System First

    For Windows, macOS, and Linux, use the v2rayN download entry; on Android, compare v2rayNG with v2flyNG. Clients for different platforms do not need to compete on the same criteria.

  2. 2

    Confirm the Core Your Configuration Requires

    Choose v2rayNG when an Android subscription primarily uses Xray configuration; choose v2flyNG when the configuration is explicitly built around v2fly behavior. Even for subscriptions containing only common node details, follow the core path specified by the service documentation.

  3. 3

    Decide Whether You Need Advanced Traffic Takeover

    On desktop, system proxying is usually easier to troubleshoot when only browser traffic needs proxying; evaluate v2rayN's TUN mode when more applications must be covered. On Android, check VPN authorization, per-app scope, and background service status.

  4. 4

    Verify the Result with Real Traffic

    After connecting, test the browser, target applications, and DNS resolution separately. If only some applications fail, check the takeover method and routing matches before replacing the client or changing several settings at once.

Final Recommendation

Choose v2rayN on Desktop, v2rayNG on Android

v2rayN covers Windows, macOS, and Linux, scaling from basic system proxying to subscription groups, complex routing, and TUN. v2rayNG is the direct choice for most Android users; choose v2flyNG only when the configuration explicitly depends on the v2fly core.