Client downloads / operating systems and architectures

Download V2Ray clients

v2rayN for desktop, v2rayNG for Android. Choose your system, then select the matching package.

All three clients are free and open source. After downloading, you’ll still need to import a valid subscription or server configuration. The package, subscription URL, and proxy mode are separate parts of the setup.

v2rayN for Windows

Two x64 downloads, depending on which interface you prefer. The basic installation and subscription import steps are the same.

v2rayN

Recommended 7.24.1

Desktop edition

A newer cross-platform interface, suited to first-time installs and anyone who wants a consistent experience across desktop systems.

Download desktop edition · x64 ZIP archive · extract before running the installer

Classic WPF edition

Keeps the familiar Windows interface, with a classic layout for users already accustomed to WPF.

Download WPF edition · x64 ZIP archive · extract before running the installer

You don’t need both editions to get more protocol support. The interface and core configuration are separate; available features depend on the settings in your client version.

After downloading, follow these steps

First, check your system type under “Settings → System → About.” Both downloads are for x64 Windows; an x64 package is not a native ARM package. Once the download is complete, extract the entire ZIP to a folder you can read and write to, then run the installer inside. Don’t launch it from the archive preview.

After installation, open “Subscription Group Settings,” name the subscription source, and enter its URL. Save it, then update the subscription. Once servers appear in the list, select one and choose “Set system proxy automatically” from the system proxy menu at the bottom. If you only need proxy access in a browser, test this first; there’s no need to enable TUN right away.

Before updating or switching between WPF and the desktop edition, back up your subscriptions, routing rules, and custom settings, then fully quit the old process. Don’t let both instances manage the system proxy or listen on the same port. If startup reports a missing runtime, check the runtime name and architecture shown in the error; don’t guess which component to install based on the client name.

Windows installation and interface guide →

System and installation requirements

CheckWhat to look for
Processorx64; check your system type in System Information.
System compatibilityFollow the current installer’s requirements; compatibility with older systems isn’t guaranteed.
Installation folderExtract all files, keep the included files together, and make sure the configuration folder is writable.
RuntimeIf a runtime is missing, check the required runtime and its architecture.
PermissionsRegular proxy use and TUN have different permission requirements; TUN usually requires elevated permissions.

After installation: subscriptions and proxy modes

Installing the app only prepares the graphical client. Next, import a subscription URL from a trusted source, save the group, and update it. If the list is still empty, check that the URL is complete and hasn’t expired, and that group filters aren’t hiding results. Don’t post subscription URLs in public forums; they may contain access credentials. When sharing screenshots for help, hide subscription URLs, server passwords, and personal identifiers.

Once the list is populated, select a configuration and start the connection. On desktop, try “Set system proxy automatically” first; on Android, approve the system VPN request. System proxy, TUN, and per-app settings control which traffic enters the client. Routing rules determine how that traffic is handled; these settings aren’t interchangeable. If you can’t connect, check in order: subscription updated → server selected → service started → app using the proxy. This is more useful than reinstalling repeatedly.

When entering VLESS, REALITY, or other settings manually, check each value against the server configuration, especially the address, port, transport, SNI, and key fields. For certificate errors, check the system clock and domain; don’t skip verification. Installation and connectivity are separate issues: if the client opens but won’t connect, see connection troubleshooting. For a first-time setup, follow the subscription import and first connection guide.

Download FAQs

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

For a first install, try the desktop edition with its newer cross-platform interface. Choose WPF if you prefer the classic Windows experience. Both downloads are x64. Back up your settings before switching, and don’t let both clients manage the system proxy at the same time.

Android: arm64 or universal?

Most mainstream phones released since 2015 are good candidates for arm64, but make sure your system supports 64-bit apps. If you’re unsure of the architecture or the arm64 APK won’t install because of an architecture mismatch, try the universal version. It includes multiple architectures, but doesn’t support every older system.

Does downloading the client give me a server automatically?

The client package doesn’t include a ready-to-use server configuration. After installing, import a valid subscription URL or individual configuration you’ve obtained, update the subscription, select a server, and enable the appropriate proxy mode. Treat subscription URLs as sensitive information.

Do I need to uninstall the old version before upgrading?

Don’t uninstall first. Back up your subscription groups, routing rules, and custom settings, then fully quit the old client and upgrade using the same client’s usual installation method. Don’t assume an upgrade will overwrite cleanly if you’re changing download source, signing identity, or client type. Make sure you can restore your settings before removing the old version.

What should I check if the installer won’t open or says it’s incompatible?

First, make sure the download is complete, then check your operating system, processor architecture, and package format. Extract Windows ZIP files first; on macOS, distinguish Apple Silicon from Intel; on Linux, choose deb or rpm. Note the full error message. Don’t disable system protections or run repair commands from untrusted sources.

Why don’t the version number and the number in the package filename match?

The displayed client version and package paths for each architecture are maintained separately, so they may temporarily differ after an update. Check the client name, operating system, and architecture before downloading. Don’t edit the download URL based on the displayed version number. If you’re unsure about upgrade compatibility, keep a backup of your current settings.