To set up a proxy in Google Chrome, open Settings > System > Open your computer's proxy settings. Chrome delegates proxy configuration to your operating system, so you will configure it through Windows or macOS network settings. Enter your proxy server address and port, save, and all Chrome traffic will route through the proxy. Alternatively, you can use a browser extension like SwitchyOmega or launch Chrome from the command line with the --proxy-server flag for per-session control.
This guide covers every method in detail: system-level proxy settings on Windows 11, Windows 10, and macOS, Chrome proxy extensions, command-line flags, SOCKS5 configuration, verification steps, and troubleshooting for common errors.
A proxy server acts as an intermediary between your browser and the internet. When you configure proxy settings in Chrome, every HTTP and HTTPS request passes through the proxy before reaching its destination. There are several practical reasons to set this up:
Chrome is the most popular browser worldwide, and understanding how to configure its proxy settings is an essential skill for developers, researchers, and privacy-conscious users alike.
Chrome does not have its own proxy configuration panel. Instead, it uses your operating system's proxy settings. When you click the proxy option inside Chrome, it simply opens your OS network preferences. Here is how to do it on each platform.
These steps are the same regardless of your operating system:
This will open your OS proxy configuration window. Follow the platform-specific instructions below.
gate.spyderproxy.com8080localhost;127.0.0.1;*.localChrome will immediately begin routing traffic through the proxy. No browser restart is required.
The process is nearly identical to Windows 11. The main difference is the slightly older Settings UI layout.
gate.spyderproxy.com)8080macOS lets you configure HTTP and HTTPS proxies separately, giving you more granular control. If your proxy supports both, enable both protocols with the same address and port.
System-level proxy settings apply to every application on your machine. If you want proxy routing only in Chrome — or need to switch between multiple proxies quickly — a browser extension is the better approach.
Proxy SwitchyOmega is the most popular Chrome proxy management extension with over 3 million users. Here is how to set it up:
SwitchyOmega also supports auto-switch rules, PAC scripts, and multiple proxy profiles, making it ideal for developers who need to switch between residential proxies and datacenter proxies during different tasks.
FoxyProxy is another well-known proxy extension. It offers a simpler interface and pattern-based URL matching:
Both extensions let you keep your system proxy settings untouched while routing only Chrome traffic through a proxy.
For developers and automation engineers, Chrome supports a --proxy-server command-line flag that overrides all other proxy settings for that session. This is especially useful for testing, web scraping, and CI/CD pipelines.
Windows (Command Prompt or PowerShell):
"C:\Program Files\Google\Chrome\Application\chrome.exe" --proxy-server="http://gate.spyderproxy.com:8080"
macOS (Terminal):
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --proxy-server="http://gate.spyderproxy.com:8080"
Linux:
google-chrome --proxy-server="http://gate.spyderproxy.com:8080"
google-chrome --proxy-server="socks5://gate.spyderproxy.com:1080"
Use the --proxy-bypass-list flag to exclude certain addresses:
google-chrome --proxy-server="http://gate.spyderproxy.com:8080" --proxy-bypass-list="localhost;127.0.0.1;*.internal.company.com"
To avoid conflicts with your main Chrome profile, launch with a dedicated data directory:
google-chrome --proxy-server="http://gate.spyderproxy.com:8080" --user-data-dir="/tmp/chrome-proxy-session"
This creates an isolated Chrome instance that uses the proxy without affecting your default browsing profile. Once you close the window, the session ends and the proxy is no longer active.
SOCKS5 proxies handle all types of traffic (not just HTTP) and support UDP, making them faster and more versatile for certain use cases. If you need maximum privacy, SOCKS5 with authentication is the way to go. Learn more in our SOCKS5 proxies guide.
gate.spyderproxy.com:1080).On Windows, the built-in proxy settings do not natively support SOCKS5. Use one of the following methods instead.
google-chrome --proxy-server="socks5://gate.spyderproxy.com:1080"
Important: By default, Chrome still resolves DNS locally even when using a SOCKS5 proxy, which can leak your real location. To route DNS through the proxy as well, add the --host-resolver-rules flag:
google-chrome --proxy-server="socks5://gate.spyderproxy.com:1080" --host-resolver-rules="MAP * ~NOTFOUND, EXCLUDE gate.spyderproxy.com"
This forces all DNS resolution through the SOCKS5 proxy, preventing DNS leaks. You can verify this with our DNS leak test tool.
After configuring your proxy, it is critical to confirm that traffic is actually routing through it. Here are three ways to check:
Visit our IP Lookup tool in Chrome. The displayed IP address should match your proxy server's IP, not your real IP. If you see your ISP's IP address, the proxy is not active.
Even if your IP changes, DNS queries might still go through your ISP. Use the SpyderProxy DNS Leak Test to verify that DNS requests are also routing through the proxy.
Proxy misconfigurations can cause a range of errors. Here are the most common problems and how to fix them.
This error means Chrome could not establish a connection to the proxy server. Common causes:
curl or telnet from your terminal: curl -x http://proxy-address:port http://httpbin.org/ipThis typically occurs with HTTPS traffic when the proxy cannot establish a CONNECT tunnel. Verify that your proxy supports HTTPS tunneling and that your credentials are correct.
Your proxy requires a username and password, but Chrome did not send them. Solutions:
--proxy-server does not support inline credentials. Use an extension or a local proxy forwarder instead.chrome://policy and look for ProxySettings or ProxyServer entries.ping or curl.No. Chrome uses your operating system's proxy settings. When you navigate to Settings > System > Open your computer's proxy settings, Chrome simply opens the Windows or macOS network proxy configuration panel. To get Chrome-specific proxy control, use a browser extension like Proxy SwitchyOmega.
You have two options without an extension. First, use the built-in system proxy settings: go to Chrome Settings > System > Open your computer's proxy settings, and configure the proxy in your OS. Second, launch Chrome from the command line with the --proxy-server flag, for example: chrome --proxy-server="http://your-proxy:8080". Both methods work without installing anything.
Yes. On macOS, you can configure a SOCKS proxy directly in System Settings. On any platform, you can launch Chrome with --proxy-server="socks5://address:port". You can also use browser extensions like SwitchyOmega that support SOCKS5. Remember to route DNS through the proxy to prevent leaks.
The most common causes are an incorrect proxy address or port, the proxy server being offline, firewall rules blocking the connection, or conflicting browser extensions. Check chrome://net-internals/#proxy to see which proxy settings Chrome is currently using. Also verify the proxy is reachable with a command like curl -x http://proxy:port http://httpbin.org/ip.
To disable the proxy, go to Chrome Settings > System > Open your computer's proxy settings, and turn off the manual proxy toggle. If you used a command-line flag, simply close that Chrome window and relaunch normally. If you used an extension, click the extension icon and switch to "Direct" or "System Proxy" mode.