Free and open-source clients

V2Ray Client Downloads

Choose your operating system first, then your processor architecture. Use v2rayN on desktop and v2rayNG on Android.

Downloads are organized by platform. Installers, client interfaces, and subscription configurations are separate; after installation, import a server configuration you are authorized to use.

Windows clients

Two interface editions, both with x64 installers. For a first installation, consider Desktop.

v2rayN

Recommended 7.24.1

Desktop edition · x64

Modern cross-platform UI for first-time installs and use across desktop systems.

Download Desktop ZIP archive · extract before running the installer

Classic WPF edition · x64

A familiar, stable Windows interface with the classic settings layout.

Download classic WPF ZIP archive · extract before running the installer

Both editions manage servers, subscription groups, and proxy settings. They differ mainly in their UI framework and layout: Desktop uses a modern cross-platform UI, while WPF retains the classic desktop layout. Do not delete your existing configuration just to change interfaces. Export a backup first, then check your subscriptions, routing, and local listening ports in the new edition.

After downloading, extract the archive to a writable folder and run the installer inside. Do not launch it from the archive preview window. If the app reports a missing runtime on first launch, install the required component as prompted. If Windows displays a security warning, verify the file's source and app details; do not disable system protection globally.

See how to install v2rayN and import a subscription →

System and installation requirements

CheckWhat to choose and how to proceed
SystemUse a supported version of Windows 10 or 11 where possible. Check the installer for specific compatibility details.
ProcessorBoth downloads on this page are x64 packages. Find your system type under Settings → System → About. If you have an ARM device, check compatibility separately.
Permissions and foldersMake sure the configuration folder is writable. Standard system proxy and TUN have different permission requirements; check for administrator access before enabling TUN.
First connectionImport a subscription and update the server list. Select a server, then configure the system proxy. Check the client's settings for the local port.

Exit the old process before switching editions. Running both at once can cause port conflicts or competing system proxy settings.

Post-install checks

Import a configuration, connect, and update

The installer only sets up the client. An empty server list on first launch is normal. Once you have a subscription URL you are authorized to use, create a group in the client's subscription manager, enter a name and the full URL, and update it. Do not paste a subscription URL into a server address field or include explanatory text from a webpage. If the list is still empty, check the logs to distinguish an incorrect URL, an access failure, or an incompatible format.

Test one connection before adjusting routing

After selecting a server, check system proxy settings on desktop or confirm VPN permission on Android. Test with a page you know should load, then check other apps. System proxy provides an entry point only to apps that use the system settings, so a working browser and a terminal that cannot connect do not necessarily indicate a failed installation. To route more app traffic, read the TUN and routing guide, changing one type of setting at a time.

Routing, DNS, and app coverage all affect where requests go. If a connection fails, note the current mode and the error in the logs, then revert or adjust settings one at a time. Avoid changing the installer, subscription, DNS, and routing mode all at once; otherwise, it is hard to tell what fixed the problem. Client startup, subscription updates, and server connections are three separate checks.

Back up your configuration before updating

Before updating, use the client's backup or export feature and note your subscription groups, custom routes, DNS, and listening ports. On desktop, exit the old process from the system tray before installing. On Android, you can usually update the same app if it has the same signing key. If the system reports a signing conflict, do not uninstall the old app immediately. Confirm your backup works before deciding how to migrate; uninstalling may also delete app data.

The version shown on a card and the installer filename may come from different fields in the release manifest, so they may not be updated at the same time. Check the actual version in the client's About screen or app information page. After updating, confirm your subscriptions and routes are still there and test the connection. Remove old folders or installers only once everything works.

Download and installation help

Installer FAQs

First check your operating system, architecture, and installation method. For full connection setup, see the user guide; for more troubleshooting steps, visit the help center.

What do I need after downloading a client?

The client manages configurations and starts connections; the installer does not include a working server. Prepare a subscription URL or server configuration you are authorized to use. Import it, update the subscription, select a server, then configure system proxy or VPN mode. Subscription URLs may contain access credentials, so do not share them publicly.

Which Windows edition should I choose: Desktop or WPF?

For a first installation, consider the Desktop edition with its modern cross-platform interface. If you prefer the familiar classic layout, choose the stable WPF edition. Both downloads are x64 packages. Back up your configuration before switching editions, and avoid running both clients on the same listening port.

Should I download the Android arm64 or universal version?

Most mainstream phones released after 2015 use arm64, but check which app architectures your system supports. If you are unsure or the arm64 package is reported as incompatible, try the universal version. If you see a package conflict, check the app source and signing compatibility first; do not delete your existing configuration.

Will updating the client delete my subscriptions or routing settings?

A standard in-place update of the same app usually preserves settings, but migration can depend on the version gap, installation method, and storage permissions. Before updating, use the client's backup or export feature and note your subscription groups, routing, and DNS settings. Exit the old process before installing, then remove old files only after confirming the connection works.

What if a browser download is interrupted or the installer will not open?

Check your browser's download history to confirm the download finished and that you have enough disk space. If the connection dropped, download the file again; do not change its extension to force it open. Extract Windows ZIP files first. On macOS, open the DMG and drag the app to Applications. Android APKs are handled by the system installer. On Linux, choose deb or rpm for your distribution.

The app installed but cannot connect. Should I try a different installer?

Check your configuration before reinstalling. Confirm the subscription has updated and a server is selected, then check system proxy or VPN permissions, routing mode, and DNS settings. System proxy settings affect only apps that read them; terminals and some standalone programs may need a proxy configured separately. Use the specific error in the logs to guide further troubleshooting.