Back to blog

Guide

Proxy Settings by Platform: Chrome, Firefox, Windows, Mac, Android, iPhone and Consoles

Where to enter proxy settings on every major platform, which ones support authentication, which are Wi-Fi only, and what to do on devices that have no proxy option at all.

Every platform puts proxy settings somewhere different, supports a different subset of features, and a couple do not support them at all. The most important distinction to understand before you start: a browser extension proxies one browser, operating-system settings proxy the whole device, and router settings proxy every device on the network. Pick the layer that matches what you actually need.

This is a reference — jump to your platform. Menu labels shift between OS and firmware versions, so treat the paths as close guidance rather than exact strings.

Proxy Settings by Platform

What you need first

From your provider: a hostname or IP, a port, the protocol (HTTP, HTTPS or SOCKS5), and credentials if it uses username and password rather than IP allowlisting.

That last point decides several choices below, because not every platform can send credentials. Stock Android Wi-Fi settings cannot. If your provider supports IP allowlisting, it sidesteps the problem entirely — see proxy authentication methods.

Quick comparison

PlatformProxy locationAuth supportScope
ChromeUses OS settingsVia OSWhole device
FirefoxOwn settingsYesFirefox only
Windows 11Settings, NetworkPromptedWhole device
macOSSettings, NetworkYesPer interface
AndroidPer Wi-Fi networkNoThat network
iPhone / iPadPer Wi-Fi networkYesThat network
PS4 / PS5Connection setupNoConsole
XboxNot availableUse router

Chrome

Chrome has no proxy settings of its own on Windows or macOS. Its settings page opens the operating system dialog.

Settings → System → Open your computer's proxy settings

That means configuring "Chrome's proxy" configures your whole computer. If you want a proxy that applies only to Chrome, or only to specific sites, use an extension instead:

  • FoxyProxy — simpler, good for straightforward per-site routing
  • SwitchyOmega — conditional rules across several proxies

On Linux, Chrome can take a command-line flag instead:

google-chrome --proxy-server="http://proxy.example.com:8080"

Firefox

Firefox is the exception: it has genuine built-in proxy settings independent of the OS.

Settings → General → scroll to Network Settings → Settings…

Choose Manual proxy configuration and fill in:

  • HTTP Proxy and Port
  • Also use this proxy for HTTPS — tick unless you have a separate HTTPS endpoint
  • SOCKS Host and Port, with SOCKS v5 selected, if you were issued SOCKS
  • No proxy for — exceptions, e.g. localhost, 127.0.0.1

If you use SOCKS, also tick Proxy DNS when using SOCKS v5. Without it Firefox resolves hostnames locally, which leaks every domain you visit to your own resolver and can break hostnames that only resolve on the proxy's network. It is the same distinction as socks5 versus socks5h in cURL.

Firefox prompts for credentials on first use when the proxy requires them.

Windows 11

Settings → Network and internet → Proxy

Under Manual proxy setup, click Edit, then:

  1. Turn Use a proxy server on
  2. Enter the Proxy IP address and Port
  3. Add exceptions in the address list, semicolon-separated
  4. Tick Don't use the proxy server for local (intranet) addresses
  5. Save

Windows prompts for credentials when an application first hits the proxy.

This covers most applications, but not all — some ignore system proxy settings, and Windows services use a separate configuration. For those:

# View the system-level (WinHTTP) proxy
netsh winhttp show proxy
 
# Import from your user Internet Explorer settings
netsh winhttp import proxy source=ie
 
# Set it directly
netsh winhttp set proxy proxy-server="http://proxy.example.com:8080" bypass-list="<local>"
 
# Clear it
netsh winhttp reset proxy

Windows 10 is nearly identical, under Settings → Network & Internet → Proxy.

macOS

System Settings → Network → select your active interface → Details… → Proxies

Tick the protocol you need:

  • Web Proxy (HTTP) — for HTTP traffic
  • Secure Web Proxy (HTTPS) — for HTTPS traffic
  • SOCKS Proxy — for SOCKS5

For each, enter the server and port. Tick Proxy server requires password to add a username and password. Use Bypass proxy settings for these Hosts & Domains for exceptions.

Two things to know. Proxy settings are per network interface — configuring Wi-Fi does nothing for Ethernet. And on older macOS the path is System Preferences → Network → Advanced → Proxies.

From the terminal:

# Set an HTTP proxy on the Wi-Fi service
networksetup -setwebproxy "Wi-Fi" proxy.example.com 8080
 
# Turn it off
networksetup -setwebproxystate "Wi-Fi" off

Android

Android attaches proxy settings to an individual Wi-Fi network.

Settings → Network and internet → Internet → tap the gear beside your network → Advanced options (labels vary by manufacturer; some need Modify network)

Set Proxy to Manual, then enter:

  • Proxy hostname
  • Proxy port
  • Bypass proxy for — exceptions

Then save. Two significant limitations:

No authentication. The stock fields offer hostname, port and bypass list — there is nowhere to enter a username or password. If your proxy requires credentials, this will not work. Use IP allowlisting instead, or an app that handles auth itself.

Wi-Fi only, per network. The configuration applies to that one Wi-Fi network. It does nothing on mobile data, and it has to be repeated for every network you join.

iPhone and iPad

Settings → Wi-Fi → tap the ⓘ beside your network → scroll to HTTP Proxy → Configure Proxy → Manual

Enter:

  • Server
  • Port
  • Authentication — toggle on to reveal Username and Password

iOS does support proxy authentication, which is a real advantage over stock Android here.

Same Wi-Fi-only limitation though: per network, and no effect on cellular data. Automatic is also available if your network provides a PAC URL.

PlayStation 4 and 5

PlayStation consoles do expose a proxy field, inside the connection setup flow.

PS5: Settings → Network → Settings → Set Up Internet Connection → select your network → Advanced Settings → Proxy Server → Use, then enter Address and Port.

PS4: Settings → Network → Set Up Internet Connection → Wi-Fi or LAN Cable → Custom → work through the steps (IP address, DHCP, DNS, MTU) until Proxy Server → Use, then enter Address and Port.

On PS4 you must choose Custom rather than Easy, or the proxy step never appears. Neither console supports proxy authentication, so use a provider that offers IP allowlisting.

Xbox

Xbox consoles do not provide a proxy server field. There is no equivalent of PlayStation's Proxy Server step in the console network settings, and no amount of digging through the menus will produce one. Content claiming otherwise is usually describing a different platform.

What the network menus do offer, under Settings → General → Network settings → Advanced settings:

  • IP settings — view or set a static IP
  • DNS settings — custom DNS servers
  • Alternate MAC address — clear or set the MAC used for network authentication

That last one is the answer to a related question people often ask. If you need to see the console's address, Advanced settings displays the current IP address and MAC address directly.

To route Xbox traffic through a proxy, the workable options are:

  1. Configure the proxy on your router, so every device on the network inherits it. Consult your router's documentation.
  2. Share a proxied connection from a PC, with the console connected through it.

Option one is generally cleaner, and it also covers smart TVs and other devices with no proxy support.

Router level

Setting a proxy on your router covers every device, including those with no proxy settings of their own.

The specifics depend entirely on your router's firmware, and many consumer routers have no proxy option at all — the feature is more common on business models and on custom firmware such as OpenWrt. Where it exists, look under WAN, LAN or Advanced settings.

Two caveats: all traffic on the network goes through the proxy, including devices where you did not want it, and if the proxy fails the whole network loses connectivity until you reconfigure.

Verifying it works

On every platform, the check is the same. Open a page that reports your public IP and confirm it shows the proxy's address rather than your own. If it still shows yours, the proxy is not being applied.

For per-site setups, test both sides — a site that should be proxied and one that should not.

Common problems

Works in the browser, not in apps. You configured an extension, not the OS. Extensions are browser-scoped.

Nothing happens on Android. Most often the proxy requires credentials that stock Android cannot send. Check whether your provider offers IP allowlisting.

Works on Wi-Fi, not on mobile data. Expected. Both mobile platforms tie proxy config to a Wi-Fi network.

Some apps bypass the system proxy. Some applications ship their own network stack and ignore OS settings. On Windows, netsh winhttp covers some of them; otherwise router-level is the reliable answer.

Credential prompt appears repeatedly. Wrong credentials, or the OS is not caching them. Re-enter carefully; watch for a trailing space in a pasted password.

Everything is slow after enabling. All traffic is now taking a longer route. Use per-site rules via an extension, or pick an exit closer to you — what determines proxy speed covers this.

Connection fails entirely. Wrong host or port, proxy inactive, or a firewall blocking the port. See what causes proxy connection errors.

Choosing a layer

  • One site, one browser → extension
  • Everything on one computer → OS settings
  • A phone on your home Wi-Fi → per-network mobile settings
  • A console or smart TV → router level
  • Scripts and command-line toolscURL and environment variables

For device-level setups, IP allowlisting saves a lot of pain, because several platforms here cannot send credentials at all. FlameProxies supports HTTP(S) and SOCKS5 across 180-plus countries with both authentication methods, starting at $0.50/GB — see the pricing page for current rates, or proxy server setup guide for the conceptual background on how the pieces fit together.

Frequently asked questions

Does Chrome have its own proxy settings?
No. On Windows and macOS, Chrome uses whatever proxy your operating system is configured to use — its settings page simply opens the OS dialog. If you want a proxy that applies only to Chrome, or only to certain sites, you need an extension such as FoxyProxy or SwitchyOmega.
Can I set a proxy on mobile data instead of Wi-Fi?
Not with the built-in settings on either Android or iOS. Both attach proxy configuration to an individual Wi-Fi network, so it applies only on that network and has to be entered again for each one. Covering mobile data requires a VPN-style app or a device-level profile rather than the standard proxy fields.
Does Android support proxy authentication?
The standard Wi-Fi proxy fields on Android provide a hostname, a port and a bypass list — with no username or password. If your proxy requires credential authentication, stock Android Wi-Fi settings cannot supply them. The usual workarounds are IP allowlisting instead of credentials, or an app that handles authentication itself.
Does iPhone support proxy authentication?
Yes. Under Configure Proxy, choose Manual and enable the Authentication toggle, which reveals username and password fields. This is one practical advantage iOS has over stock Android for proxy use, though it is still Wi-Fi only.
How do I set a proxy on Xbox?
Xbox consoles do not expose a proxy server field in their network settings, unlike PlayStation. The practical routes are configuring the proxy on your router so the console inherits it, or sharing a proxied connection from a PC. Console network menus do let you view the console's IP address and set custom DNS, which covers some of what people actually want.
Why does the proxy work in my browser but not in apps?
Because a browser extension only affects that browser. Native and mobile applications use the system or network configuration instead. To cover everything on a device, set the proxy at operating system level rather than in an extension.