• Platforms and architecture
  • Core compatibility
  • Maintenance status

Clash clients compared

Clash Plus is our pick for everyday use. For in-depth desktop rule and TUN management, consider Clash Verge Rev.

The client shapes the workflow; the core determines protocol and rule capabilities. First rule out unsupported platforms and discontinued tools, then compare configuration workflows. A complex interface is not a measure of performance.

CLIENT MATRIX

Platforms, cores, and maintenance

Platform availability reflects the download links provided on this site, not the full range of project builds. Maintenance status is a general assessment; check each release's notes for current system requirements and feature support.

On narrow screens, scroll the table horizontally. Keyboard users can focus the table area and scroll sideways.

Platforms, cores, maintenance status, setup difficulty, key features, and ideal users for eight clients
Client Platforms available here Core and configuration format Maintenance status Setup difficulty Key features and trade-offs Best for
Clash Plus
Top pick
Windows、macOS、Android、iOS Built-in proxy core. Check protocol and field support for each platform; do not assume it is a full mihomo replacement. Actively maintained Low; designed around importing a configuration and connecting A single pick for multiple devices; traffic-routing methods vary by platform Beginners and users with multiple devices
Clash Verge Rev Windows、macOS、Linux mihomo; Clash YAML configuration Actively maintained Moderate; requires understanding proxy modes and service permissions Desktop configuration management, rule inspection, TUN, and configuration extensions Primary desktop users and power users
FlClash Windows、macOS、Linux、Android mihomo; Clash YAML configuration Actively maintained Low to moderate Similar workflows across platforms, but system permissions and background policies differ Users with both desktop and Android devices
Clash Nyanpasu Windows Core management supported; Meta/mihomo features depend on the core actually enabled Actively maintained Moderate to advanced Desktop configuration organization and customization; distinguish app settings from core fields Desktop users comfortable managing configurations
Clash for Windows
Discontinued
Windows Original Clash-family core by default; do not assume current mihomo capabilities Discontinued Plenty of older tutorials, but menus differ from those in newer tools Reproducing legacy workflows; limited support for newer protocols and operating systems Troubleshooting and migration from legacy setups
Clash Meta for Android Android Meta/mihomo family; Clash YAML configuration Actively maintained Moderate; requires VPN permissions and managing background restrictions Subscription management and per-app routing, designed for Android workflows Android-only users
Surfboard Android Independent implementation with Surge-style configuration; not a Clash core Actively maintained Low with a compatible configuration; high when migrating between formats Works with existing Surge-style configurations; check protocol and rule support separately Android users with a compatible configuration
ClashX Meta
Discontinued
macOS Meta-family core; actual capabilities depend on the bundled core Discontinued Basic menu controls are easy to use; editing configurations takes more effort Menu bar workflow; consider migrating for newer system or protocol requirements Users transitioning from an existing macOS setup
EDITOR'S NOTES

Eight Clash clients, reviewed

Use the quick takeaways to narrow your options, then expand each review for the trade-offs. Recommendations reflect workflows and maintenance status, not unverified claims about resource usage.

Clash Plus

Top pick

A straightforward way to establish a reliable import, connection, and update workflow—ideal for beginners and users with multiple devices.

Why we recommend it—and where it fits

Clash Plus is available here for Windows, macOS, Android, and iOS. Start by checking support for each of your devices in one place, rather than sorting through clients with similar names. On first use, confirm that your subscription imports and your chosen node connects before adjusting rules or traffic routing. There is no need to enable several advanced features at once.

Cross-platform availability does not mean identical core fields, background behavior, or interfaces on every device. If your configuration relies on specific mihomo fields, complex rule sets, or script extensions, check the documentation for each platform; do not assume compatibility based on the product name alone. The iOS download link on our download page goes to the App Store. See clashplus.io for product details. This is our pick for everyday use, not a ranking of protocol coverage or speed.

View Clash Plus downloads by platform

Clash Verge Rev

A good fit for users who rely on a desktop client and need to inspect rules, logs, and TUN status.

Desktop management and permission requirements

Clash Verge Rev uses the mihomo core, making it a good fit if you want to keep using Clash YAML while taking advantage of newer protocols and rule features. Configuration, proxies, connections, and logs each have their own section. When troubleshooting, first confirm that the configuration is active, then check which rule matched the connection—rather than simply switching nodes and overlooking the routing result. If you layer local changes onto a subscription, keep the original subscription separate from the runtime configuration generated by the client.

TUN and service mode can route more traffic, but also add permission, virtual network adapter, and routing issues to troubleshoot. If only your browser needs a proxy, start with the system proxy. Consider TUN only if an app does not respect system proxy settings. This client suits in-depth desktop management; having more options does not automatically make it lighter on system resources than a simpler client.

View Clash Verge Rev downloads

FlClash

A similar workflow on desktop and Android offers another way to manage multiple devices.

Cross-platform consistency and system differences

FlClash uses the mihomo core, with download links here for Windows, macOS, Linux, and Android. For users already familiar with Clash configurations who want a more consistent interface across devices, it can be easier to build a routine with FlClash than to learn a different client for every operating system. After importing, check the active configuration, policy group, and rule mode. A successful import does not guarantee that all traffic is being handled as expected.

A similar interface can make workflows feel consistent, but it cannot eliminate differences between operating systems. Android requires VPN permission and is affected by battery policies; desktop users need to account for service permissions, system proxy settings, and virtual network adapters. If you plan to reuse a configuration, separate common rules from device-specific settings. In particular, do not blindly copy listen addresses, ports, or LAN access options.

View FlClash downloads by platform

Clash Nyanpasu

Best suited to users willing to manage desktop configurations and identify which core is actually running.

Configuration flexibility and learning curve

Clash Nyanpasu offers desktop configuration organization and customization; our download list includes a Windows link. Evaluate the client interface separately from the core in use: seeing a setting in the interface does not mean the active core accepts the corresponding field, and core-supported parameters may not all be exposed as GUI toggles. Before importing a complex subscription, confirm the active core and check its logs.

This approach is useful if you regularly manage multiple configurations, adjust local overrides, or compare core behavior. If you only import a subscription and connect occasionally, extra controls may add complexity. Before migrating, keep the original subscription and restore extensions one at a time. This helps avoid copying client-specific processing chains that make issues harder to diagnose.

View the Windows client

Clash for Windows

Discontinued

Useful for following older tutorials and reproducing legacy setups, but not a first choice for a new installation.

Archived use and migration considerations

Clash for Windows appears often in older tutorials, but its default original Clash-family core cannot be assumed to support current mihomo protocols and fields. A legacy configuration that still works does not mean the core will recognize newer node types, DNS options, or rule-set syntax. If a field is unsupported, check the core's capabilities first rather than repeatedly changing server addresses or assuming the subscription has expired.

For a legacy setup that is still in use, note its ports, mode, subscription source, and local rules before migrating. Import the original configuration into the new client and verify it before closing the old one. Do not let both apps manage the system proxy or compete for the same listening port. The archived download is useful for migration and reference—not a recommendation to keep running an unmaintained client indefinitely.

View archived downloads and alternatives

Clash Meta for Android

A good fit for Android-first users who want to route traffic by app.

Per-app routing and background operation on mobile

Clash Meta for Android, often abbreviated CMFA, is a client in the Meta/mihomo family. Its key settings are Android VPN permission, configuration selection, and per-app routing—not the desktop-style system proxy toggle. After importing a subscription, make sure the intended configuration is selected before starting the service. Seeing a new item in the subscription list does not prove that the app is running it in the background.

Mobile connection drops can also result from battery-saving settings, background app cleanup, another VPN app, or switching between Wi-Fi and mobile data. Check the service status and logs before changing background restrictions. Per-app routing determines which apps are captured; domain rules in the configuration determine how captured traffic is handled. These are separate layers, not one setting.

View the Android client

Surfboard

Best suited to Android users who already have a compatible Surge-style configuration.

Independent implementation and format limitations

Surfboard appearing in the same download list does not mean it uses a Clash core. It has an independent implementation and uses Surge-style configuration; Clash YAML files are not equivalent inputs. If you already have a compatible configuration, Surfboard can fit into your existing workflow. If you only have a Clash subscription, resolve the format and field differences before switching.

Converting formats does not guarantee that every feature will carry over. Recheck protocol parameters, rule types, policy group behavior, and DNS settings; successful import alone is not enough to validate a conversion. If you are switching configuration formats just for a different interface, migration usually takes more work than choosing a client compatible with your existing subscription. Take extra care when choosing a conversion method for private subscription links.

View Surfboard downloads

ClashX Meta

Discontinued

Keeps a legacy menu bar workflow for reference; for a new installation, compare actively maintained macOS clients first.

Menu bar workflow and alternatives

ClashX Meta is designed around the macOS menu bar and uses a Meta-family core. Its simple controls may suit users already familiar with configuration files, but that does not mean it supports every current mihomo feature. Supported protocols and parameters depend on the bundled core. If a newer subscription uses unfamiliar fields, first check whether they are beyond the archived core's capabilities.

For migration, import the same subscription into Clash Plus, Clash Verge Rev, or FlClash, then compare policy groups and rule matches before deciding whether to restore your manual settings. Choose the right installer for Apple Silicon or Intel, and check system permissions and proxy restoration. A minimal menu bar and lightweight interface do not replace checking system compatibility and maintenance status.

View macOS alternatives
BY WORKFLOW

Choose by use case

BEFORE SWITCHING

What to check before switching clients

First determine whether you are changing the interface, the core, or the entire configuration format. When moving between Clash Verge Rev and FlClash, Clash YAML is usually a workable starting point, but client-specific overrides will not transfer automatically. Switching from a Clash client to Surfboard requires additional work to handle differences in format and semantics. Meta and mihomo have evolved from related projects, but an older Meta core should not be assumed to include every current feature.

  1. Keep a recoverable source. Record the subscription source, current mode, and any local rules, and back up editable configurations. Screenshots can help you remember settings but cannot replace the original configuration. Subscription links may contain credentials; do not paste them into public support requests.
  2. Stop the old client from routing traffic. Turn off its system proxy or VPN/TUN service first, then check for duplicate listening ports. You can have both clients installed, but only one should route traffic during testing.
  3. Validate with minimal changes. Import the original subscription, keep the same rule mode, and check that nodes connect and common sites match the expected policies. Then restore custom DNS, rule sets, and overrides one at a time, checking the logs after each change.
  4. Check recovery and updates. Verify that the network recovers when the proxy is disabled, the subscription can update, and the configuration remains selected after a restart. Once the new setup is stable, remove the old app's startup entry and leftover services.

If migration causes subscription update failures, certificate errors, or unexpected DNS behavior, use the logs to distinguish between a failed configuration download, a parsing error, and a connection failure. Then visit FAQ troubleshooting. A different client may resolve implementation or compatibility issues, but it cannot replace checking your subscription and network.

Which client should you choose?

For a typical new installation, start with Clash Plus. For in-depth desktop configuration, compare Clash Verge Rev. For a similar workflow across desktop and Android, consider FlClash. Choose Surfboard if you already use its configuration format; keep archived clients for migration reference. Once you have a shortlist, check platform, architecture, and installation requirements on the download page.

Browse clients and downloads →