Client downloads

V2Ray Client Downloads

Choose your operating system, then your architecture. Use v2rayN on desktop and v2rayNG on Android, or choose v2flyNG to suit your configuration needs.

Choose a package by platform

The clients are free to use. You’ll need to provide your own subscription and node configuration.

Windows downloads

v2rayN

Top pick7.24.1

Two interfaces, one client: v2rayN. Desktop is the newer cross-platform UI; WPF is the classic, stable version with a familiar Windows layout.

Download Desktop for Windows · x64

A good place to start for a first install. Uses the cross-platform interface; fully extract the ZIP before running.

v2rayN-Desktop-Setup-x64-7.24.1.zip
Download classic WPF · x64

For users who prefer the classic interface. If a runtime is missing at startup, follow the specific prompt.

v2rayN-Setup-x64-7.24.1.zip

System requirements and installation

CheckWhat to look for
CPU architectureBoth downloads are x64 packages for compatible 64-bit Windows systems.
Windows compatibilityUse a Windows version that still receives system updates. Check the selected release package for its minimum supported version.
Runtime requirementsRuntime dependencies may vary by release. If a component is missing, note its name and address that specific requirement.
PermissionsStandard proxy settings and TUN have different permission requirements. You don’t need to enable TUN for a first install.

From extraction to first launch

Once the download finishes, fully extract the ZIP to a writable folder, then run the installer from there. Don’t launch the program from the ZIP preview: dependency files may not extract correctly. After installation, open the client from the Start menu or its install folder. Make sure the main window opens normally before importing a subscription.

You don’t need to install Desktop and WPF at the same time. If you already use the client, back up subscription groups, routing, and DNS settings first. Don’t assume every setting will migrate automatically when switching interfaces. To compare them, stop the running client first so both instances don’t compete for the same local port. If you hit a port conflict, check whether another instance is still running in the system tray.

After importing a configuration, select a node and then set the system proxy. The system proxy affects apps that follow the system proxy settings; it doesn’t automatically route traffic from every app. Test web access before adjusting routing. For a full walkthrough of the GUI, see the Windows installation and version guide.

Configuration after installation

Subscriptions, proxy mode, and connection checks

A successful installation only means the client is ready. Check your node configuration, traffic routing method, and routing rules separately. Work through them in order to avoid changing multiple settings at once.

Read the complete Getting Started guide →
  1. Import and update your subscription. Save a valid URL in a subscription group, then update it. Adding a group and fetching nodes are separate steps. If the list is still empty after saving the URL, check the update result. You can also import a single node share link, but it usually won’t update automatically with a subscription.
  2. Select a node, then choose a proxy mode. On desktop, check the system proxy status; on Android, approve the VPN request. Routing rules determine where traffic goes, but don’t establish the connection themselves. For your first setup, use a routing option already provided by the client and hold off on custom rules.
  3. Test with the apps and services you need. Check whether the target app uses the proxy, then test a website or service. A connection icon doesn’t mean every app is routed, and a latency test alone can’t confirm that a specific service is reachable.

Client updates and configuration backups

Updating the client, refreshing a subscription, and switching nodes are three different actions. A client update changes the program and its bundled components; a subscription update fetches the node configuration provided by your service; switching nodes changes the current outbound. When a connection fails, first identify which layer is affected—you don’t need to reinstall right away. If only one node is unavailable, try another node from the same subscription and check the specific error in the logs.

Before upgrading, note which settings currently work and save your subscription URL, custom routing, and DNS settings. Exported configurations may contain credentials; keep them somewhere you control and don’t upload them to public forums. Before sharing logs for troubleshooting, redact subscription URLs, user IDs, and server credentials. Include only the error context needed.

Before upgrading, disconnect and exit the client. After installation, check whether subscription groups and the default mode were preserved. Test with your existing node first, then try new features. If you update the client, switch nodes, change DNS, and enable TUN all at once, it’s hard to tell what caused a problem. Change one thing at a time and keep a way to roll back; it’s easier to troubleshoot than repeated reinstalls.

Not sure which of the three clients to choose? Start with the client comparison. If you’re already connected and want to adjust routing, TUN, or DNS, see the user guide. This page focuses on choosing an installer; you don’t need to configure every advanced option on your first install.

Download and installation FAQs

Which should you choose: Windows Desktop or WPF?

For a first install, try Desktop, which uses a newer cross-platform interface. WPF is the classic, stable version for Windows users who prefer the familiar layout. Both downloads are x64 packages; install either one. Back up subscriptions and custom settings before switching.

Should you download the arm64 or universal Android version?

Most mainstream phones released since 2015 can start with arm64, but check which ABI the operating system supports. If your device runs a 32-bit OS or you’re unsure of its architecture, try the universal version. If installation fails, check the Android version, whether the download completed, and whether an older install has a different signature.

How do I tell whether my Mac has Apple Silicon or Intel?

Open About This Mac from the Apple menu. Choose Apple Silicon if it shows an Apple M-series chip, or the Intel package if it lists an Intel processor. Open the DMG, follow the on-screen instructions to move the client to Applications, then launch it from there.

Why are there no usable nodes after installation?

The client manages configurations and connections; the installer does not include a subscription service. Get a valid subscription URL or node share link, import and update it in the client, then select a node and proxy mode. Subscription URLs contain access credentials and should not be shared publicly.

What should I keep before updating the client?

Export or back up subscription groups, custom routing, DNS settings, and other personal configurations. Note your current proxy mode, then disconnect and exit the client. After upgrading, check that your settings remain and test with your existing node and mode before changing anything else.

How do I troubleshoot an installer that won’t open?

Make sure the download is complete, the file format matches your operating system, and the CPU architecture is supported. Fully extract Windows ZIP files first. On macOS, check the prompt under Privacy & Security; on Android, check install permissions and whether an older app has a different signature. On Linux, review dependency conflicts reported by the package manager instead of forcing the installation.