Desktop and Android clients

V2Ray Client Downloads

Choose your operating system, then your device architecture.

Use v2rayN on desktop and v2rayNG on Android. Both clients are free and open source; after installation, import a subscription or configuration you’re authorized to use.

First-time setup: Read the user guide →

DESKTOP / X64

Windows client

Two interfaces for the same client. Choose either one for your first install.

v2rayN

Top pick
Release listing 7.24.1 · Windows x64

Desktop version

Download Desktop · x64

A newer cross-platform UI. A good fit for first-time installs and anyone who wants a consistent experience across desktop operating systems.

Classic WPF version

Download classic WPF · x64

The stable classic version with the Windows WPF interface. Choose it if you prefer the familiar menu layout and workflow.

Both downloads are ZIP archives. Once downloaded, extract the entire archive before running the installer inside. Don’t launch it from the archive preview. The interface version does not affect server connection quality; choose based on your workflow and compatibility with your environment.

Import a subscription before enabling the system proxy

It’s normal for the server list to be empty the first time you open v2rayN. Add a subscription URL under Subscription Groups, then select Update all subscriptions (without proxy). If you already have a working proxy and the subscription URL requires it, choose an update method that fits your network. Once the subscription updates, select a server and set System proxy to Set system proxy automatically.

If your browser still can’t reach a site, first check whether it follows the system proxy settings, then review the client logs. The system proxy affects only apps that read this setting; it doesn’t route every program through the client. Before closing or switching clients, clear the existing system proxy so your system doesn’t keep pointing to a local port that is no longer active.

Downloads and setup

What to check before and after installation

The installer, subscription configuration, and local proxy are separate parts of the setup. Checking them in order makes issues easier to isolate than reinstalling repeatedly.

Before downloading: check your OS and architecture

Check your device’s processor type in system information, then choose the matching installer. The same operating system can run on different architectures, and you can’t identify a device’s architecture just by whether it’s a laptop, desktop, or ARM device. An architecture mismatch usually prevents installation or launch; it isn’t related to your subscription.

Keep the browser’s download record until the download finishes, then open the file. If you end up with a web page instead of the expected ZIP, DMG, APK, deb, or rpm, check the download task and network status first. Don’t just change the file extension and try to install it.

Before updating: back up your configuration and rules

Note your subscription groups, current routing mode, and any custom listening settings. If the client can export its configuration, use that feature. Configuration may contain subscription URLs and credentials, so store it somewhere you control and don’t share it publicly in troubleshooting screenshots.

Quit the old client before installing the new package. After updating, check whether your subscriptions were retained, then verify routing and proxy status. When moving between platforms, re-import your subscriptions and restore settings one by one instead of copying the entire old data directory to another system.

After connecting: verify requests and logs

Select a server before enabling the traffic routing method you need. On desktop, test the system proxy first; on Android, approve the system VPN request. A connection button showing that the client has started or a status bar icon only reflects the local service. Make an actual request to confirm the remote connection works.

If your browser can’t access a site, check separately whether the subscription updated, whether the app uses the proxy, and whether the logs show errors. Port conflicts, authentication failures, and connection timeouts are different issues. Use the logs to narrow down the cause before changing settings or contacting the configuration provider.

Download FAQs

Choosing and updating installers

This section covers download and installation issues. For connection troubleshooting, see the FAQs.

Which v2rayN version should you choose: Desktop or classic WPF?

For a first install, choose Desktop for the newer cross-platform interface. If you prefer the classic Windows interface or want to keep your familiar workflow, choose the stable classic WPF version. Both are v2rayN; install only one to start, and back up your configuration before switching.

Should you download the arm64 or universal Android version?

Most mainstream phones released after 2015 use arm64, but check your device's actual architecture and OS support. If you're unsure or the arm64 installer reports incompatibility, try the universal build. It includes components for multiple architectures and is usually larger; it does not make connections faster.

Can you connect right after downloading the client?

The installer contains the client only, not a subscription or server configuration. You’ll need a subscription URL or configuration file that you’re authorized to use. Import it, choose a server, then enable the system proxy or VPN connection for your platform. If the connection fails, check the subscription, local proxy settings, and client logs separately.

What if macOS says the app can’t be opened?

First, make sure the download matches your chip and move the app to Applications. After verifying the download source, follow macOS prompts in System Settings → Privacy & Security to allow the blocked app to open. If macOS says the app is damaged, download it again and check system compatibility. Don’t disable system-wide security protections.

Will updating the client keep your existing subscriptions?

Whether your configuration is retained depends on how the client is installed, its data directory, and differences between versions. Back up the client configuration before updating, and note your subscription groups and routing settings. Quit the old app before installing the update. When switching interface versions or moving between operating systems, don’t assume you can simply overwrite the entire configuration directory.

The version shown on this page differs from the installer filename. Which should you trust?

The version shown on the page may not match the release information for each architecture. To confirm the installed version, check About in the client; filenames distinguish the download packages. If your configuration depends on a specific version, back it up and confirm the new package’s actual version and configuration compatibility before replacing the existing one.