Multi-platform packages
Clash Client Downloads and Platform Selection
Choose a client by operating system, CPU architecture, and use case. Android supports Clash Plus, Clash Meta for Android, FlClash, and Surfboard; desktop users can choose a maintained mihomo GUI client.
GUI clients
View packages by platform
The platform tag remains in the page URL, so you can copy the current link to open the corresponding system directly. Packages for different architectures are not interchangeable; check your device's system information if unsure.
Windows clients
For everyday desktop proxy use, subscription management, and rule-based routing. Windows 10 and 11 users should prefer maintained clients; the older Clash for Windows build is intended only for compatibility with existing workflows.
Clash Verge Rev
FlClash
Clash Nyanpasu
Clash for Windows
No longer maintained Archived versionWindows installation requirements
| Check | Recommendation | Details |
|---|---|---|
| System version | Windows 10 or Windows 11 | Newer system components provide more complete support for desktop frameworks, service mode, and network interfaces. |
| Processor | x64 | The Windows GUI clients on this page provide x64 packages; no separate native Verge ARM64 installer is available. |
| Permissions | Allow the system confirmation during installation | Windows may request administrator approval when enabling service mode or TUN, or changing the system proxy. |
macOS clients
Check the chip type in About This Mac first. Macs with M1, M2, M3, M4, or other M-series chips should use Apple Silicon; devices showing an Intel processor should use Intel x64.
Clash Plus
Top pick Recommended
Clash Verge Rev
FlClash
ClashX Meta
No longer maintained Archived versionmacOS installation requirements
| Device information | Choice | Installation notes |
|---|---|---|
| M-series chip | Apple Silicon / ARM64 | For Macs with Apple's custom silicon, which generally offers more direct native support. |
| Intel processor | Intel / x64 | For older Intel Macs. Use the information shown in About This Mac before downloading. |
| First launch | Complete the system security confirmation | macOS may ask you to confirm the app source, network extension, or VPN configuration permissions. |
Android clients
Most Android phones released in recent years use ARM64. Older 32-bit devices can use the ARM build; if you cannot confirm the architecture, use the universal Clash Meta for Android package.
Clash Plus
Top pick RecommendedClash Meta for Android
FlClash
Surfboard
Android installation requirements
| Package | Compatible devices | How to choose |
|---|---|---|
| ARM64 / arm64-v8a | Most recent Android phones and tablets | Choose this when the device CPU ABI shows arm64-v8a. |
| ARMv7 / armeabi-v7a | Older 32-bit ARM devices | Use only when the device does not support ARM64. |
| Universal | Android devices with an unknown architecture | Usually larger, but less likely to fail because of an incorrect architecture choice. |
| x86_64 | Some emulators or specialized devices | Ordinary ARM phones generally should not use this package. |
iOS clients
Clash Plus is available through the App Store. After installation, add a subscription or import a configuration in the app, then follow the system prompts to create a VPN configuration.
Clash Plus
Top pick App StoreiOS installation and permissions
| Step | Action | Details |
|---|---|---|
| Install | Open the App Store page | Review the app details in the system store and complete the installation. |
| Configure | Import a subscription or local configuration | The client does not include a ready-to-use network configuration. |
| Connect | Allow VPN configuration | When connecting for the first time, iOS displays a system-level permission prompt. |
Linux clients
Debian, Ubuntu, and derivatives typically use DEB; Fedora, RHEL, Rocky Linux, and other RPM-based distributions use RPM. The GUI clients below target AMD64 desktop systems.
Clash Verge Rev
Recommended
FlClash
Linux installation requirements
| Distribution type | Recommended format | Installation tip |
|---|---|---|
| Debian / Ubuntu-based | AMD64 DEB | Install with the system software installer or dpkg, then follow the prompts to install dependencies. |
| Fedora / RHEL-based | x86_64 RPM | Install with the package management tool provided by the distribution. |
| Other desktop distributions | AppImage | Grant execute permission before running; the system still needs the desktop and network components required by the client. |
Standalone core
Mihomo core downloads
Standalone cores are for servers, routers, bypass gateways, containers, and scripted deployments. Desktop and mobile users should generally choose a GUI client above, which manages the core, configuration, and system proxy state.
Windows core
For command-line and service deployments.
macOS core
Choose Intel or Apple Silicon as appropriate.
Linux core
Supports common server, router, and embedded processor architectures.
Installation notes
From download to first connection
An installer only provides the client program. After installation, import a valid configuration, choose a policy group, and enable traffic interception. The key checks below follow the actual setup sequence.
Confirm the system and CPU architecture first
A single client may offer x64, ARM64, ARMv7, and universal builds. Architecture and operating system are separate requirements: a Windows x64 installer cannot run on macOS, and an Android ARM64 package cannot run on a 32-bit ARM device. A wrong choice may cause the installer not to launch, an incompatibility warning, or an immediate exit after installation.
Windows desktop PCs generally use x64. On macOS, distinguish Apple Silicon from Intel: the former includes M-series chips, while the latter refers to processors in older models. On Android, check the CPU ABI in a device information tool or system diagnostics page; choose ARM64 for arm64-v8a and ARMv7 for armeabi-v7a. If unsure, choose a clearly labeled universal build instead of trying several architectures in succession.
GUI clients versus standalone cores
Clash Plus, Clash Verge Rev, FlClash, and Clash Meta for Android are GUI clients. They combine configuration management, policy-group switching, log viewing, the system proxy, TUN, DNS, and core lifecycle management in a visual interface for everyday desktop and mobile use. Users generally only need to import a configuration and approve system permissions; separate startup commands are unnecessary.
The standalone Mihomo core is a command-line program. It reads YAML configuration files and runs with startup arguments, without a graphical settings page or built-in management of desktop menus, tray status, or app updates. It is better suited to servers, routers, containers, and automated environments. For phone or personal computer proxy use, a GUI client is easier to maintain.
Import a subscription or configuration file after installation
When a client opens for the first time, the configuration list is usually empty. Open the Configuration or Subscription page, paste the subscription URL provided by your service, or import a local YAML file. After a successful import, set it as the active configuration, then check the policy groups on the Proxy page. The client can forward traffic only when the configuration includes usable proxies, policy groups, and rules.
A subscription link is a configuration source, not a client download URL. Do not paste it into a browser's download button or enter an installer URL in the subscription field. If the import reports a format error, check that the link is complete, the configuration has not expired, and the server response is actually a Clash- or mihomo-compatible configuration.
Choosing between system proxy and TUN mode
The system proxy suits browsers and desktop apps that follow the operating system's proxy settings. When enabled, the client writes HTTP or SOCKS proxy addresses to the system, but some games, command-line programs, and apps that ignore system proxy settings may bypass it. Its simpler setup makes it a good baseline for the first connection.
TUN mode uses a virtual network interface to capture a wider range of traffic, making it useful for apps that ignore system proxy settings. It usually requires VPN, network extension, or administrator permissions. Android and iOS show a system VPN confirmation; Windows, macOS, and Linux may require a service, network interface, or system credentials. Stop any conflicting VPN connection that is already using the system interface.
Configuration updates and local overrides
A subscription update fetches the remote configuration again. Direct edits to a generated subscription file may be overwritten by the next update. To keep custom DNS, rules, or policies over time, use the client's override feature or place custom content in a separate local configuration layer. This keeps remote subscription updates separate from personal rules.
Do not set the automatic update interval too short. Checking a regular subscription once a day is usually enough; frequent refreshes do not improve connection speed and may trigger access limits from the configuration service. If policy-group names or rule structures change after an update, check the active selections again to avoid references to deleted groups.
Basic troubleshooting for installation failures
First confirm that the downloaded extension matches the platform: Windows commonly uses EXE or ZIP, macOS uses DMG, Android uses APK, and Linux GUI packages commonly use DEB, RPM, or AppImage. Then check the CPU architecture. If the system installs the package but the client will not start, review system messages, client logs, and security permission records instead of repeatedly installing the same file over itself.
If the network is still unavailable after connecting, check in order whether the active configuration is enabled, the policy group has a usable proxy selected, the operating mode is correct, DNS resolution works, and another traffic interception tool is running on the system. Downloading or installing a client usually does not change subscription status; expired configurations must be handled at the configuration source.
Download FAQ
Installer and architecture selection
These questions cover the most common system, architecture, configuration, and migration decisions during download.
Which package should I download for an Android phone?
Most recent Android phones use ARM64, so arm64-v8a is usually the right choice. Older 32-bit devices need ARMv7. If unsure, choose the universal Clash Meta for Android build; Android emulators reporting x86_64 can use the corresponding FlClash version.
Should I choose Clash Plus or Clash Verge Rev on Windows?
Choose Clash Plus for a cross-platform interface and a more straightforward setup. Choose Clash Verge Rev for mihomo features such as rule overrides, TUN, subscriptions, and desktop configuration management. Both handle common subscriptions and rules; the main difference is how their interfaces organize settings.
How do I tell Apple Silicon and Intel packages apart on macOS?
Open About This Mac and check the Chip or Processor field. Choose Apple Silicon or ARM64 for an Apple M-series chip, and Intel or x64 when Intel is shown. A mismatched architecture may prevent launch, require extra translation, or cause runtime issues.
Why can't I connect immediately after downloading a client?
A client reads configuration and forwards traffic; it does not generate a subscription automatically. After installation, import a valid subscription URL or local configuration file, set it as active, choose an available policy, and enable system proxy or TUN mode. If the configuration has expired, update it at the subscription source first.
Do regular users need to download the Mihomo core separately?
Usually not. GUI clients such as Clash Plus, Clash Verge Rev, FlClash, and Clash Meta for Android include or manage the required core. Standalone Mihomo packages are mainly for servers, routers, containers, and users who maintain command-line parameters themselves.
Can Clash for Windows still be used?
Archived releases can still support older configurations and established workflows, but the project is no longer maintained. For new installations, choose a maintained mihomo-based client such as Clash Plus, Clash Verge Rev, or FlClash. Before migrating, keep the original configuration file and import it again in the new client.