• Graphical client
  • Free to use
  • Open-source code

V2Ray Client Download

Choose a client by platform, then select the architecture and package format. For desktop, use v2rayN; for Android, v2rayNG is the recommended choice, with v2flyNG as an alternative.

Choose a platform Install a client Import a subscription
Desktop
v2rayN
Recommended for Android
v2rayNG · Xray
Android alternative
v2flyNG · V2Fly

Windows: v2rayN packages

This page provides x64 downloads. Check your system type under “Settings → System → About” before choosing an interface edition.

v2rayN

v2rayN

Recommended 7.24.1

The Desktop edition uses a newer cross-platform UI; WPF keeps the classic Windows interface. Both editions manage connection settings, subscriptions, and proxy options. Choose based on your preferences and system compatibility, not connection speed.

Desktop edition · x64

Download v2rayN Desktop

The Desktop edition is a good starting point for a first-time installation. The download is a ZIP archive: extract all files before running the installer inside.

Classic WPF edition · x64

Download v2rayN WPF

Choose this edition if you prefer the classic Windows layout. Exit any running client before installing to avoid listening-port conflicts.

Windows system and installation checklist

CheckWhat to look for
Processor architectureBoth packages on this page are x64 and won’t run directly on 32-bit systems. On ARM devices, first confirm that Windows can run x64 apps.
System requirementsUse a Windows version that still receives system updates. Check the installer’s prompts for specific operating system and runtime requirements.
Installation locationChoose a location you can access with your account. Extract the entire archive before running the app; don’t launch it from the ZIP preview window.
Permissions and proxySystem proxy and TUN have different permission requirements. Grant elevated permissions only when prompted for a feature that requires them.

After installation, open the main window, import a subscription, and select a server. To route browser traffic through the proxy, choose “Automatically configure system proxy” under “System Proxy,” then check the local mixed listening port under “Settings → Parameters.” Use the port shown in your client rather than copying a number from another guide. If your browser has its own proxy extension, check that it isn’t overriding the system settings.

Before migrating from an older version, back up your subscription groups and custom routing rules, then close the old process. Don’t run Desktop and WPF at the same time to test the same port; port conflicts and changes to system proxy settings can make troubleshooting confusing. Confirm the new version connects successfully before removing the old directory. For the next steps, see the system proxy guide.

After installation

First-run and update checklist

Back up before migrating

Before updating a device with existing settings, save your subscription groups, custom routing rules, DNS settings, and local port records. Backups may contain connection credentials, so store them somewhere you control and don’t share them in public forums. Don’t assume settings will migrate automatically when changing interface editions, installation sources, or client names. After importing, check each setting before removing the old version.

Test a node before enabling the proxy

The package provides a client, not a working subscription. Add an existing subscription, update it, and test a server. Tcping checks whether the target port is reachable; a real connection test more closely reflects an actual proxy request. Neither guarantees every site will always be available. If a test fails, first check the subscription’s validity, system time, and node settings rather than immediately changing routing or DNS.

Change one setting at a time

Confirm the regular system proxy works before configuring routing rules or TUN. Record each setting and its result as you go; changing the port, DNS, and routing at once makes it harder to find the cause of a problem. Before exiting the client, check that the system proxy has been restored. If websites suddenly stop loading, make sure the system isn’t still pointing to a local port that has been closed.

For setup steps, see the subscription import and first connection guide. If the client is installed but you can’t connect, visit v2rayN troubleshooting and follow the steps for your symptoms.

Download questions

Package selection FAQ

Desktop or classic WPF for Windows: which should you choose?

For a first-time installation, try the Desktop edition, which uses a newer cross-platform interface. Choose WPF if you prefer the classic Windows interface. Both require you to import connection settings. Back up your existing configuration before switching, and don’t enable system proxy or TUN mode in both clients at the same time.

Android: arm64 or universal?

For most phones released since 2015, try arm64 first, but check which architecture the device’s operating system actually supports. If you’re unsure or arm64 reports an incompatibility, choose the universal version. It includes more architectures and is usually a larger download. Check your Android version and available storage before switching packages.

Why might the version shown differ from the package filename?

The displayed version and package paths for each architecture come from different manifest fields, so they may not update at the same time. This page uses the filenames provided by the manifest rather than inferring download URLs from the version text. Check the client’s About page for the installed version; don’t change version numbers in download URLs manually.

Why can’t I connect right after installation?

The client package doesn’t include connection settings. Import an existing subscription or node, update the subscription, and select a server. Then enable system proxy or TUN mode as needed. Test one node first, then check the listening port, routing preset, and browser proxy settings.

What should you keep before updating the client?

Keep your subscription groups, custom routing rules, DNS settings, and local port records. Store backups somewhere you control. Exit the client before updating, then check that your settings migrated correctly. Don’t run the old and new versions at the same time, and never show subscription URLs or connection credentials in public screenshots.

What should you check if a download is interrupted or installation fails?

If a download is interrupted, check your browser’s download history, available disk space, and network connection, then download the package again. If installation fails, note the full error and confirm the operating system, processor architecture, and package format match. Don’t disable all security protections to troubleshoot; check for leftover proxy settings from another client separately.