Before you install

Clash downloads and installers

Choose a client for your operating system, then check the processor architecture. Downloads for Clash Plus, Clash Verge Rev, and FlClash are organized by platform, with core packages listed separately.

Clients load configurations and manage outbound connections. Installers don’t include a subscription service; you’ll need a subscription link or local configuration to get started.

Platforms and architectures

Client downloads

Each platform lists popular clients first, followed by alternatives. Check the system requirements below each card before installing; packages aren’t interchangeable between operating systems.

Windows clients

The desktop installers below are for x64 devices. Find your system type under “Settings → System → About.” Don’t treat an x64 package as a native ARM build. Compatibility on ARM devices depends on your Windows version and the app’s dependencies.

Clash Verge Rev

For users who want to manage subscriptions, rules, and service mode on desktop.

EXE installer

Complete the standard installation first, then install or start the related service if you need TUN. Service installation requires system permissions. If it fails, note the message—repeatedly clicking Start won’t resolve permission, driver, or port conflicts.

FlClash

For users who want a similar configuration management workflow on desktop and mobile.

EXE installer

AMD64 also works with Intel processors that support the x64 instruction set; it isn’t an AMD-only package. When migrating configurations, check local file paths, overrides, and DNS options. A similar interface doesn’t mean system permissions work the same way on every platform.

Clash Nyanpasu

For users who prefer a different desktop interface for configuration and connection management.

EXE installer

Before installing alongside another client, disable the old client’s system proxy and traffic routing. If multiple apps compete for the same local ports or change the system proxy at once, it becomes difficult to tell what’s affecting connection tests and app traffic.

Clash for Windows

No longer maintained

Archived download for migration reference and reproducing configurations in existing setups.

Archived client

For new installations, choose a maintained client. Archived clients may include a core with a different feature set from current mihomo releases, so newer protocol fields or rule syntax may not load. Keeping a configuration doesn’t mean you need to keep using the old executable.

Windows requirements and installation checks

CheckWhat to look forBefore installing
Operating systemUse a supported 64-bit version of Windows; check each package for its minimum versionNote your Windows version and system type from System Information
ProcessorPackages in this section are x64 / AMD64Check compatibility separately for ARM devices
Permissions and componentsStandard installation, system services, and TUN have different permission requirementsGrant permissions only when clearly requested

If Store apps can’t access the network through the local proxy, the cause may be the UWP loopback restriction—not a damaged installer. First check whether regular desktop apps work, then see FAQ troubleshooting. Don’t mistake a traffic-routing issue for an installation failure.

Installation and migration

Post-download checklist

Install the client and load a configuration before changing how traffic is routed. Change one setting at a time to make issues easier to track down.

Installation files and permissions

After downloading, check that the file format matches your operating system: EXE for Windows installers, DMG for macOS, APK for Android, and DEB or RPM for the corresponding package manager. Archives need to be extracted; they aren’t installers.

If the system reports an incompatibility, note the full message and check the architecture, OS version, and dependencies. Installation steps that request permission should have a clear purpose. Don’t disable all system security features to work around an unknown error, or install extra components from an unclear prompt.

Importing a configuration and making your first connection

After installing the client, open the configuration page and import a subscription link or local YAML file. Confirm that it parses successfully and select it. Check that the proxy groups contain a usable outbound, choose a rule mode, then start the proxy or VPN feature appropriate for your platform.

Finally, verify the connection using the logs and the app’s actual network behavior. A successful latency test only means that the test request received a response; it doesn’t verify app traffic. If a site behaves unexpectedly, check the matched rule, selected proxy group, and DNS behavior.

Migrating from an older client

Before switching clients, keep your subscription URL, local rules, override files, and any interface settings you need. Remote subscriptions can usually be imported again, but script paths, rule-set caches, and client-specific fields may need separate handling. Verify everything in the new setup before removing the old client.

While testing the migration, disable the old app’s system proxy, TUN, and auto-start to prevent multiple clients from routing traffic at once. Archived apps can help you compare configurations, but don’t assume they support current protocols and configuration fields.

Client version and core version

The client version describes the interface and bundled features; the core version determines support for many protocols and configuration options. They may not advance in sync. After updating the interface, check which core the client actually uses. Replacing the core alone may not change the version shown in the interface.

Cards on this page display a version only when non-empty version information is available. No version shown doesn’t mean the installer won’t work, and it doesn’t indicate when it was last updated. Check the package’s release notes, in-app information, and runtime logs for changes and compatibility details.

Download FAQs

Installer compatibility

For rules, subscriptions, and DNS issues during connection, see the FAQ.

Which client should I install first?

Start with Clash Plus on Windows, macOS, Android, or iOS; for Linux, consider Clash Verge Rev. Check your operating system, processor architecture, and package format before choosing based on interface preferences. After installing a client, you’ll still need a working configuration; the installer does not include a subscription service.

What’s the difference between x64, AMD64, ARM64, and universal builds?

x64 and AMD64 usually refer to the same 64-bit desktop instruction set, regardless of processor brand. ARM64 is for devices with the corresponding architecture; on Android, armeabi-v7a means 32-bit ARM. Universal packages include multiple architectures and are usually larger. Check your system information, the package’s actual architecture, and the client’s requirements before choosing.

Why might both macOS architecture links download the same file?

Some upstream release listings currently point both Apple Silicon and Intel links to the same file, labeled x64 or x86_64. Don’t assume it’s a native ARM build based on the button label alone. Apple Silicon users should check whether the package requires Rosetta and whether it’s supported on their version of macOS.

Can I move my existing subscriptions and rules to a new client?

Keep a copy of your existing configuration, then import the subscription link or local YAML file into the new client. Clients using the same core can often reuse most configuration fields, but override scripts, extended fields, interface preferences, and local paths may not carry over. After importing, check the logs, proxy groups, DNS, and TUN settings. Disable the old client only after everything works.

What should I check if a download completes but installation fails?

Make sure the download finished, the package format is right for your operating system, and the processor architecture matches. Note the full error message from the system. On desktop, also check supported OS versions, available disk space, and whether another installation is running. On Android, check permission to install from the chosen source and whether the existing app has a conflicting signature. Don’t disable all system security features to work around an unknown error.

How is the mihomo core different from a GUI client?

The mihomo core reads configuration and handles network traffic, but usually doesn’t include a desktop GUI. Choose a core package if you manage services yourself on a server or router; most desktop and mobile users should start with a GUI client. Extracting the core alone doesn’t configure it—you’ll also need a configuration file, a working directory, and the required permissions.