Documentation · About 10 minutes

Clash Verge Tutorial

From importing a subscription to verifying that the proxy works, complete the basic Clash Verge setup in four steps. This guide follows the Clash Verge menus and also points out the equivalent options in clients like Clash Plus and FlClash, so even first-time users can follow along.

Menu names vary slightly between clients. This guide uses the Clash Verge menus: import configs on the Subscriptions page, choose nodes and policy groups on the Proxies page, and control system proxy and TUN mode on the Settings page. In Clash Plus or FlClash, look for similarly named options; the order of steps is exactly the same.

Before you start, make sure of three things: the client is installed (see the download page for Windows / macOS / Linux packages); you have signed up for a proxy service and can copy a subscription link from its dashboard; and the subscription link starts with https:// and opens directly in a browser.

Step 1 · Import a Clash Subscription

Open Clash Verge and click Subscriptions in the left sidebar; the subscription management area is on the right. On first use, the list is empty and only shows a New button. What you need to do here is hand the subscription link from your provider to the client so it can generate a usable config file.

Click New and a form appears with three fields: Name, Subscription URL, and Auto Update. Enter any name you like, such as "My Subscription", so you can tell multiple configs apart later. Paste the full link copied from your provider's dashboard, without extra spaces. If Auto Update is checked, set the interval to 24 (the unit is hours). Click Save when done.

The client starts requesting the subscription URL and downloads the config file, which normally takes a few seconds. On success, a profile card appears in the subscription list showing the config name, node count, and last update time. Click Proxies on the left and the node list is already populated, with policy groups arranged according to the config file.

If the card shows "Import failed" or "Parse error", check in this order: copy the subscription link again and make sure there are no spaces or line breaks at either end; confirm with your provider that the subscription has not expired; and make sure you copied the Clash format — some dashboards also offer sing-box, v2ray, and other formats, so choose the Clash or mihomo one. If an older client does not recognize the new format, upgrade the client and try again.

Importing a subscription is not a one-time thing. Provider nodes change, so it is a good idea to set an auto-update interval of 12 to 24 hours for the profile. You can also click Update on the card at any time to refresh manually. After a successful update, the node list on the Proxies page updates accordingly.

A subscription config file is essentially a YAML document with three sections: proxies (nodes), proxy-groups (policy groups), and rules (routing rules). To learn what each section does, read Config File Breakdown. Once the import is done, the next step is choosing a proxy mode.

Step 2 · Choose a Proxy Mode and Policy Group

Click Proxies on the left. At the top you can switch between Rule, Global, and Direct modes. These three modes decide how traffic is routed. For daily use, Rule mode is all you need — the rules in the config file match each request one by one: domestic domains go direct, foreign domains go through the proxy, with no manual intervention required.

Global mode sends all traffic through the proxy node regardless of destination, which suits scenarios that need a fixed exit IP. Direct mode is the opposite: no traffic goes through the proxy, and it is usually used for temporary troubleshooting.

ModeTraffic routingBest for
RuleMatches each request against the config rules; domestic traffic goes direct, foreign traffic goes through the proxyEveryday browsing with a mix of domestic and foreign services
GlobalAll traffic goes through the proxy nodeFixed exit IP, overseas services
DirectNo traffic goes through the proxyTroubleshooting proxy issues

Below the mode selector is the policy group list. Policy groups are groupings of nodes, with common names like Node Select, Auto Select, Hong Kong, United States, and Streaming. Open a policy group to pick a specific node manually, or choose Auto Select — the client runs speed tests periodically and automatically uses the node with the lowest latency. When picking a node manually, watch the latency color: green means usable, red means timeout, and gray means the speed test failed.

For daily use, the Rule + Auto Select combination is recommended and basically requires no attention. For streaming, manually pick a node that supports unlocking in the Streaming policy group. If your network environment changes a lot, switch back to Node Select and choose manually to avoid automatically picking an unstable node.

Once the mode is set, there is one more choice that determines how traffic is captured: system proxy or TUN mode. Both switches are on the Settings page. System proxy modifies the system network settings, so apps that respect the system proxy — like browsers — go through the proxy automatically; it works immediately and uses few resources. TUN mode creates a virtual network adapter and captures all IP traffic, so command-line tools, games, and UDP apps can also go through the proxy; enabling it for the first time requires administrator privileges. Start with system proxy by default, and enable TUN only if you need command-line or game traffic. A full comparison of the two methods is in Advanced Usage.

Once the node, mode, and traffic capture method are all set, the next step is to start the connection.

Step 3 · Start the Connection

Go to the Settings page, find the System Proxy switch, and turn it on. The client status changes from Disconnected to Connected, and the system tray icon changes too: on Windows the network icon in the taskbar shows a proxy indicator, and on macOS the menu bar icon changes. From this point on, browser traffic goes through the proxy.

If you want to use TUN mode, turn on the TUN Mode switch on the same page. The first time you enable it, the client asks for administrator privileges: on Windows it needs to install a virtual network adapter service and shows a UAC prompt — click Yes; on macOS you need to enter your administrator password and may need to approve the network extension in System Settings > Privacy & Security. Once TUN is on, you can turn off system proxy; traffic is then captured by the virtual adapter.

Open a browser and visit any website. Normally, pages load at the same speed as usual, and sites that were previously blocked now open fine. If a page will not load, go back to Settings, turn off system proxy, confirm the network itself is working, then turn it back on — this quickly tells you whether the problem is the proxy config or the network.

While connected, the Connections page shows a real-time list of connections, so you can see which node each request used and which rule it matched. The Logs page shows the detailed rule-matching process and is very useful when troubleshooting routing issues. For example, if a domain goes direct instead of through the proxy, search for that domain in the logs and you can see which rule it matched.

The connection is up and the browser can access sites normally. The last step is to verify that the proxy is actually working.

Step 4 · Verify the Proxy Is Working

Open any IP geolocation site, such as ip.sb or ipinfo.io, and the page shows your current exit IP and its location. Compare it with the node selected on the Proxies page: if you chose a Hong Kong node, the location should show Hong Kong. If it still shows your local address, traffic is not going through the proxy — go back to Settings and check the system proxy switch.

The same page also shows the DNS server. If the DNS is your local ISP's address, DNS resolution is not going through the proxy, which can cause "pages load but some domains fail to resolve" issues. Go to Settings > DNS and enable Fake-IP mode, or configure nameserver and fallback in the config file. See DNS Configuration Explained for details.

Command-line users can confirm further. Run:

curl -s https://ipinfo.io/json

In the returned JSON, the origin field is your exit IP. If it matches the node location, the proxy is working. Note that command-line tools do not read the system proxy by default, so you need to set environment variables first:

export https_proxy=http://127.0.0.1:7897
export http_proxy=http://127.0.0.1:7897

Use the mixed port shown on the client's Settings page; the default value may vary between versions.

Finally, do a routing check: visit a domestic site — it should go direct and respond quickly; visit a site like Google — it should go through the proxy. If both behave as expected, the rules are routing correctly and the TUN or system proxy capture method is working as intended. That completes the four steps. The client is now routing traffic according to your config. From here, just keep an eye on the subscription expiry date, and click Update on the Subscriptions page if nodes stop working.

If the connection fails, troubleshoot in this order

First, make sure the subscription has not expired — if it has, renew it on your provider's dashboard and import it again. Next, confirm that not all nodes are timing out — if they are, switch nodes or update the subscription. Then check whether another proxy app is holding the system proxy; close it and retry. Finally, check that DNS is working normally; if not, see the DNS section of Advanced Usage. A fuller list of troubleshooting entries is on the FAQ page, organized into four categories: Basics, Installation & Setup, Usage Tips, and Troubleshooting.

The node list is empty after importing a subscription?

The subscription link format is wrong. Go back to your provider's dashboard and copy the Clash-format link again, making sure there are no extra spaces at either end. If an older client does not recognize the new format, upgrade the client to the latest version and import again.

Browser can't open web pages even with system proxy on?

First turn off system proxy and confirm the network itself is working. Then make sure the subscription has not expired and node latency is not red. Some browser extensions (such as SwitchyOmega) take over proxy settings, so check the extension's proxy config and turn off its proxy mode if it conflicts with the client.

TUN mode says insufficient permissions?

On Windows, run the client as administrator again, or reinstall the service in Settings. On macOS, allow the client to register the network extension in System Settings > Privacy & Security, then restart the client.