Free tool

PAC file generator

List the sites that should go through your proxy, or the ones that should skip it, and get a proxy.pac your browser or phone can load. It runs in your browser: nothing you type is sent to a server.

Build your proxy.pac

Proxy type

Written as PROXY host:port. Every browser and operating system understands it.

Fills in resi.proxymonkey.io:8000. Your dashboard lists the host and port for each order, and it wins.

example.com matches that host only. *.example.com matches example.com and every subdomain. Any other * matches any run of characters, so shop-*.example.com matches shop-eu.example.com.
What goes through the proxy

Not generated yet. Fix the fields listed below.

proxy.pac
  • Enter the proxy host: a hostname or an IPv4 address.
  • Enter the proxy port.
  • Add at least one domain to send through the proxy.

This runs in your browser. Nothing you type here is sent to a server.

What a PAC file is

A PAC (proxy auto-config) file is a short JavaScript file with one function, FindProxyForURL(url, host). The browser calls it before every request and does what it returns: PROXY host:port, SOCKS5 host:port or DIRECT. That is how one setting can send a few sites through a proxy and leave the rest of your browsing alone.

The file this page writes checks your domains with dnsDomainIs and shExpMatch, which only compare text. The local-address check calls isInNet only when the host is already an IP address. Given a hostname, isInNet makes the browser look it up in DNS first, on your own connection, before the request even reaches the proxy. That slows every page down and shows your resolver which sites you visit.

Where to load it

The browser extensions take the script as it is. Everything else wants it at a URL, so put proxy.pac on a web server or file host the device can reach.

  • SwitchyOmega or ZeroOmega: Create a PAC Profile and paste the script into its PAC Script box. No hosting needed.
  • FoxyProxy: Add a proxy of type PAC and point it at the file’s URL.
  • Windows: Settings, Network and internet, Proxy, then Use setup script with the file’s address. Windows wants a web address, not a path on disk.
  • macOS: Network settings, Details, Proxies, then Automatic proxy configuration with the file’s URL.
  • iPhone and iPad: Wi-Fi, the network’s info button, Configure Proxy, then Automatic with the file’s URL.
  • Android: The Wi-Fi network’s settings, Proxy, then Proxy Auto-Config with the file’s URL.

No passwords in the file

A PAC file cannot carry a proxy username or password, and one that tried would hand them to anyone who can fetch the file. With an HTTP proxy, the browser or operating system asks for the login the first time the proxy wants it. The alternative is IP whitelisting: allow your own IP in the dashboard and the proxy lets you through without asking. SOCKS5 needs the allowlist, since browsers never prompt for a SOCKS5 password.

Questions

Can a PAC file hold my proxy username and password?

No. A PAC file only names a proxy; it has no place for credentials. With an HTTP proxy the browser or the operating system asks for the username and password the first time the proxy wants them. The other way is an IP allowlist: add your own IP in the dashboard and the proxy stops asking.

Why pick HTTP over SOCKS5 here?

Every browser and operating system understands PROXY host:port. SOCKS5 host:port works in Firefox and Chrome, but Windows system settings ignore it, and no browser asks for a SOCKS5 password, so it only works once your IP is on the allowlist. For web browsing the two give the same result.

What does *.example.com match?

example.com itself and every subdomain under it, such as www.example.com and api.eu.example.com. A plain example.com matches that exact host only. Any other * matches any run of characters, which the file checks with shExpMatch.

Does anything I type leave my browser?

No. The page builds the file with JavaScript on your machine, and the copy and download buttons work offline. Nothing is sent to us or anyone else.

Something here looks wrong? Tell us in Discord and paste the file.

The community layer

PAC file not loading?

Paste the file and say where you loaded it in Discord. Someone will spot the typo, or tell you the device wanted a URL.

Join the Discord

4,200+monkeys in the Discord

  • Help from humans

    Post your error, get an answer. Usually in minutes, usually from someone who has hit the same wall.

  • A status bot that tells on us

    Pool health, incidents and maintenance posted automatically. Including the bad days.

  • Deals and free traffic

    Bonus GB drops, early access to new pools, and the occasional giveaway for a good bug report.

Join the Discord4,200+ monkeys, free to lurk