GUIDE · Getting Started

From Download to Online,
Just 5 Steps

No networking background needed — just follow the steps below, and you'll have the client installed with your subscription and node configured in 5 minutes. Detailed platform-specific steps and troubleshooting tips are also included below.

~1 min to install ~1 min to import subscription ~5 min total No Experience Needed
GET STARTED · 5 Steps to a Working Setup

Follow Along Once,
and You'll Be Connected

Each step includes detailed instructions and tips. If you get stuck, jump straight to the troubleshooting section below.

1

Download and Install the Client

Once you know your OS, head to the download center, pick a client, and install it. The core setup steps are nearly identical across mainstream clients.

Haven't downloaded yet? Go to the Download Center
2

Get Your Subscription Link

Copy the subscription link (http/https) from your service provider, or have a local config file (.yaml / .yml) ready.

Clash itself doesn't provide nodes — it just connects and routes traffic according to your rules.
3

Import the Subscription

Open "Subscriptions / Profiles", paste the link or import from a file. Once successful, the node list will be parsed automatically.

We recommend enabling "Auto-update subscription" so nodes refresh automatically when they expire.
4

Select and Test a Node

Test latency on the "Nodes / Proxies" page and pick a low-latency node — or just use the "Auto Select" group.

A timeout or red indicator usually means the node is unavailable — just pick another one.
5

Enable the Proxy and Go Online

Enable "System Proxy" for everyday use; turn on "TUN Mode" only if you need system-wide coverage. Open a browser to verify the connection.

You only need one of System Proxy or TUN — System Proxy is enough for everyday use.
PLATFORM GUIDE · Step-by-Step Guides by Platform

Pick your OS to see the exact steps

Windows Step-by-Step Guide

Using Clash Verge Rev as an example — other clients use similar menu names
  1. After installing, launch the client from the desktop or Start menu. On first launch it'll live in the system tray (bottom-right of your screen).
  2. Click "Subscriptions / Profiles" on the left, then "+" in the top-right to add a new subscription — paste your link and save.
  3. Switch to "Nodes / Proxies", run a latency test, and pick the fastest node or "Auto Select".
  4. Go back to "Home" and turn on "System Proxy"; enable "TUN Mode" as well if you need system-wide coverage (requires admin rights).
  5. Open a browser and visit any site — if it loads normally, your setup is complete.

Installer won't open or gets blocked? Check the troubleshooting section below.

Go to Windows Download

macOS Step-by-Step Guide

After installing, we recommend dragging the client into the "Applications" folder
  1. Double-click the .dmg and drag the icon into "Applications". The first time you open it, you may need to allow it in "Privacy & Security".
  2. Once launched, the client lives in the menu bar (top-right of your screen) — click the icon to open the control panel.
  3. Go to the "Subscriptions" page, paste your link and import it, then wait for the node list to load.
  4. Test latency on the "Nodes" page, pick a good node, then enable "System Proxy" from the main panel.
  5. For system-wide proxying, enable "TUN Mode" — the first time, you'll be asked to install a network extension, just allow it.

Seeing "cannot verify developer"? That's expected — see the FAQ below.

Go to macOS Download

Android Step-by-Step Guide

Allow "Unknown sources" installs before installing the APK
  1. After downloading the APK, tap to install; if it's blocked, go to Settings → Security and allow installs from unknown sources.
  2. Open the client, tap add in the top-right of the "Subscriptions" page, paste your link, and save.
  3. Switch to the "Nodes" page, long-press or tap to test latency, and pick a low-latency node.
  4. Tap the start button on the main screen to enable VPN mode, and tap "Allow" when the system prompts a connection request.
  5. A VPN icon in the status bar means you're connected — open a browser to verify everything works.

VPN mode requires no root, but it's exclusive with other VPN apps — only one can be active at a time.

Go to Android Download

iOS Step-by-Step Guide

Using clients like Stash / Shadowrocket as examples
  1. Purchase and install the client from the App Store. The first time you open it, you'll be asked to "Add VPN Configuration" — allow it and confirm with your passcode.
  2. Go to "Config / Profiles", tap add in the top-right, and paste your subscription link to import.
  3. Test latency in the "Nodes" list and pick one, or just use the "Auto Select" group.
  4. Back on the main screen, tap the switch at the top to connect — a VPN icon will appear in the status bar.
  5. Open a browser to verify the connection; if it won't connect after a while, try switching nodes.

Due to App Store policy restrictions, there's no official free app for iOS — you'll need a third-party paid client.

View iOS Client List

Linux Step-by-Step Guide

Two paths available: desktop GUI or CLI core
GUI

GUI Client

Great for everyday use on desktop distros — the steps are basically the same as Windows / macOS.

  • Install a .deb / .AppImage package and launch the client
  • Paste your link on the "Subscriptions" page, then test and select a node after importing
  • Enable "System Proxy" or "TUN Mode" to go online
CLI

mihomo CLI Core

Ideal for servers and headless environments — small footprint, low resource usage.

  • Download the core, and save your subscription as config.yaml in the same directory
  • Run ./mihomo -d . — the default proxy port is 7890
  • Set export https_proxy=127.0.0.1:7890
  • For long-term use, set it up as a systemd service to auto-start on boot

For server deployments, we recommend using the CLI core directly — it uses fewer resources.

Go to Linux Download
ADVANCED · Rule Routing Basics

Understand Rule Routing,
Send Traffic the Right Way

Rule-based routing is a core Clash capability: different sites or apps can go through different nodes as needed, instead of all traffic funneling through the same route.

Proxy Groups (proxy-groups)

Groups multiple nodes together and defines how one is picked — e.g. "Auto Select" chooses by latency, while "Manual Select" lets you pin a fixed node.

Rules (rules)

Matches traffic by domain, IP range, or app type to decide which proxy group it should use. Rules are matched top to bottom and stop at the first match.

Direct & Reject

Local sites can be set to "Direct" (DIRECT), bypassing every node entirely; ad or tracking domains can be set to "Reject" (REJECT).

Rule Priority

Rule files usually come with common categories pre-configured — you generally don't need to write your own, unless you want a specific site routed to a particular node.

config.yaml Snippet
# Proxy group: automatically picks the lowest-latency node
proxy-groups:
  - name: "Auto Select"
    type: url-test
    proxies: ["Node1", "Node2"]
    interval: 300

# Rules: route by domain
rules:
  - DOMAIN-SUFFIX,us,DIRECT
  - DOMAIN-KEYWORD,ad,REJECT
  - MATCH,Auto Select
TROUBLESHOOTING · Troubleshooting

Stuck During Setup? Check Here First

Node list is empty after importing a subscription?

First check whether the subscription link opens or downloads normally in a browser. If the link itself is fine, try clicking "Update Subscription" in the client to re-fetch it — some links rate-limit requests, so wait a few minutes and try again.

All nodes show timeout or failure when testing latency?

This could mean your local network can't reach the test endpoint, or the subscription's nodes have expired. Try disabling system proxy to test your local network, then check whether your subscription needs updating.

Pages still won't load after enabling system proxy?

Check whether the connection status in the bottom-left of the client shows "Connected". Some browsers or apps have their own network settings and need a separate "Use system proxy" option enabled. You can also try switching to a different node to rule out a node-specific issue.

TUN mode fails to enable, showing a permissions error?

On Windows, you need to run the client as administrator to enable TUN mode; on macOS, the first time you enable it, you'll be asked to install a system network extension — allow it in the popup or in System Settings.

Rules don't seem to work — traffic still goes through the wrong node?

Rules are matched top to bottom and stop at the first match. If your new rule is placed further down the list, an earlier rule may catch the traffic first — try reordering your rules or moving custom rules closer to the top.

Downloaded installer won't open, or shows an "unsafe" warning?

This happens because community-built, open-source installers aren't officially signed — it's expected. See the checksum verification guide on the download page for details.

Haven't Installed a Client Yet?

Head to the download center to pick a client that suits you, then come back and follow the steps above — the whole process takes less than 5 minutes.