We use cookies to enhance user experience, personalize content, and analyze traffic. Cookie Policy

← Back to all articles

How to Set Up a Proxy for Browsers, Bots, and Scripts

Learn how to setup a proxy server for browsers, bots, and scripts with clean formats, authentication, testing, and troubleshooting.

by Unknown Proxies

10 min read

June 16, 2026

How to Set Up a Proxy for Browsers, Bots, and Scripts

How to setup a proxy server usually means one practical task: take a proxy endpoint from your provider and route a browser, bot, scraper, or script through it. You normally do not need to build the proxy server yourself. You need the host, port, username, password, protocol, and the correct format for the tool you are using.

Start by testing one proxy in one client before loading a full list into automation. If the proxy works in cURL or a browser but fails in your bot, the issue is usually format, protocol, authentication, session handling, or request pacing rather than the proxy itself.

For most web workflows, use HTTP(S) proxies unless the tool explicitly asks for SOCKS5. If you are still choosing protocol, read SOCKS5 vs HTTP proxy. If you need rotating consumer-style traffic, start with residential proxies. If you need stable dedicated IPs for accounts, monitoring, or retail automation, compare ISP proxy plans.

Proxy setup flow from provider endpoint to browser, bot, and script clients

How to Setup a Proxy Server: Quick Steps

Use this setup flow for almost any proxy-backed workflow:

  1. Copy the proxy host, port, username, password, and protocol from your dashboard.
  2. Confirm whether the tool expects HTTP, HTTPS, SOCKS4, or SOCKS5.
  3. Convert the proxy into the format the tool accepts.
  4. Test one proxy with a simple IP-check endpoint.
  5. Load a small batch into your browser, bot, or script.
  6. Assign proxies consistently to accounts, sessions, or tasks.
  7. Add delays, retries, and backoff before increasing concurrency.
  8. Log failures with proxy, URL, status code, account, and timestamp.

Do not start by importing hundreds of proxies into a full task run. A small controlled test tells you whether the setup is valid before request volume, cookies, accounts, and anti-bot behavior make the results noisy.

Know Your Proxy Details First

Most proxy setup problems come from mixing up fields.

You usually need:

Field Example shape Notes
Host proxy.example.com The proxy gateway or IP address
Port 12345 The connection port for HTTP or SOCKS
Username customer-zone-session May include pool, region, or session options
Password password123 Keep this out of screenshots and logs
Protocol http or socks5 Must match the client setting

Common formats include:

Format Example
Four-part list host:port:username:password
HTTP proxy URL http://username:password@host:port
HTTPS proxy URL https://username:password@host:port
SOCKS5 proxy URL socks5://username:password@host:port
Separate fields Host, port, username, and password in different inputs

Format is not the same as protocol. A bot may ask for host:port:user:pass while still using an HTTP proxy under the hood. A script may require the http:// or socks5:// scheme to select the protocol. Use the proxy converter when you need to reformat a list without manually rearranging fields.

Set Up a Proxy in a Browser

For normal browsing, there are three common options.

Use system proxy settings when every browser and app on the machine should use the same proxy. This is simple for manual checks, but it can affect more traffic than intended.

Use a browser extension or browser profile when you need different proxies per profile, region, account, or test case. This is usually better for QA, local SEO checks, account workflows, and comparing locations without changing the whole device.

Use browser automation settings when Playwright, Puppeteer, Selenium, or another automation framework launches the browser. In that case, configure the proxy in the automation tool rather than inside the browser UI.

For a manual browser test:

  1. Choose one proxy endpoint.
  2. Add the host and port to the browser, extension, or operating system proxy settings.
  3. Enter username and password when prompted.
  4. Visit an IP-check page.
  5. Confirm the displayed IP and region match the proxy.
  6. Open the target site only after the basic proxy test works.

If the browser repeatedly asks for credentials, check the username, password, and whether special characters need URL encoding. If pages load without the proxy IP changing, the browser may be bypassing the proxy because the system setting, extension scope, or profile setting is wrong.

Set Up Proxies in Bots

Most retail bots, monitoring tools, and automation apps accept proxy lists in one of these shapes:

host:port:username:password
username:password@host:port
http://username:password@host:port
socks5://username:password@host:port

Match the bot's import format exactly. If the bot has a protocol dropdown, do not also force a conflicting scheme in the proxy text. If it has separate fields for host, port, username, and password, paste each value into the matching field instead of using a full proxy URL.

For account or checkout workflows, map one account or profile to one stable proxy identity. That usually means ISP proxies or sticky residential sessions, not rotating on every request. For product monitoring, repeated checks, or Refract-style retail workflows, stable task-to-proxy assignment is usually easier to debug than random reassignment on every loop.

If you are using Refract, the existing Refract Bot Target guide walks through proxy groups, task setup, and delay sizing for that specific bot. This article stays broader: the same setup discipline applies whether the bot is for retail monitoring, scraping, QA, or account operations.

Set Up Proxies in Scripts

Scripts need explicit proxy configuration. Environment variables may work for some tools, but production jobs should make proxy behavior obvious in code or deployment config.

For cURL, test one HTTP proxy like this:

curl --proxy "http://username:password@host:port" https://api.ipify.org

For SOCKS5:

curl --proxy "socks5://username:password@host:port" https://api.ipify.org

For Python requests:

import requests

proxy = "http://username:password@host:port"
proxies = {
    "http": proxy,
    "https": proxy,
}

response = requests.get("https://api.ipify.org", proxies=proxies, timeout=20)
print(response.text)

For Playwright:

import { chromium } from "playwright";

const browser = await chromium.launch({
  proxy: {
    server: "http://host:port",
    username: "username",
    password: "password",
  },
});

const page = await browser.newPage();
await page.goto("https://api.ipify.org");
console.log(await page.textContent("body"));
await browser.close();

Keep secrets in environment variables or a secrets manager when the script runs outside a local test. Do not commit proxy passwords to the repo, paste them into issue trackers, or print full proxy URLs in application logs.

Proxy format examples for browsers, bots, cURL, Python, and Playwright

Choose Residential, ISP, or Datacenter Proxies

Proxy setup is easier when the proxy type fits the workflow.

Workflow Usually choose Why
Manual browser geo checks Residential Broad location targeting and consumer-style IPs
Browser automation with login ISP or sticky residential Stable identity matters during sessions
Stateless public-page scraping Rotating residential or datacenter Each request can stand alone
Retail monitoring ISP Low latency and stable task assignment
Higher-friction public targets Residential Better fit when datacenter IPs are blocked
Internal QA or permissive targets Datacenter or ISP Lower cost and predictable performance

If you are deciding between proxy categories, read datacenter proxies vs residential proxies. If the decision is stable dedicated IPs versus rotating pool access, compare ISP proxies vs residential proxies.

Residential proxies are useful when rotation, location coverage, and consumer-style IP reputation matter. ISP proxies are useful when the same task, account, or browser profile should keep the same IP. Neither option fixes bad timing, broken cookies, account-level limits, or target rules.

Keep Sessions Consistent

A proxy setup that works for one request can still break a session.

Keep these values aligned inside a session:

If a login starts on one IP and continues on another, the site may treat that as a session risk. If a scraper rotates IPs but reuses cookies from a previous identity, it can create confusing behavior. Use sticky residential sessions or ISP proxies for multi-step flows. Use rotating residential sessions for independent requests where continuity does not matter.

For a deeper session design walkthrough, read how to use residential proxies.

Test Before You Scale

Use a simple test plan:

  1. Test without a proxy to confirm the client works.
  2. Test one proxy against an IP-check endpoint.
  3. Test one proxy against the target homepage.
  4. Test one proxy against the exact target endpoint.
  5. Add authentication, cookies, and headers.
  6. Add a small number of concurrent tasks.
  7. Increase volume only after status codes and latency are stable.

Log the response status, response body snippet, proxy ID, target URL, and retry count. That data separates proxy setup errors from target-side rate limits, WAF blocks, application bugs, and account problems.

Troubleshooting Proxy Setup

Use the symptom to narrow the issue:

Symptom Likely cause What to check
Authentication prompt repeats Bad username or password Copy credentials again and check special characters
Connection timeout Wrong host, port, protocol, or firewall Test with cURL from the same machine
Works in browser, fails in bot Bot format mismatch Try a different accepted proxy format
Works once, fails after login Session identity changed Use sticky residential or ISP and keep cookies aligned
Many 429 responses Request rate too high Add delay, jitter, and backoff
Many 403 responses Target denied the request Check headers, session, reputation, and site policy
Region is wrong Pool or username option mismatch Recheck country, state, city, or zone fields

For repeated HTTP 429 Too Many Requests, slow down before adding more proxies. For HTTP 403 Forbidden, check whether authentication, authorization, target policy, or IP reputation is the real cause.

Production Checklist

Before running a proxy-backed job in production, confirm:

Use the delay calculator for monitoring-style workloads where proxy count, task count, and delay interact. A setup that looks fine at one request every few seconds can fail quickly when every worker retries at the same time.

FAQ

Do I need to create my own proxy server?

Usually, no. If you bought proxies from a provider, the proxy server already exists. Your job is to configure the endpoint correctly in your browser, bot, scraper, or script.

What proxy format should I use?

Use the format your tool expects. Common options are host:port:username:password, http://username:password@host:port, and socks5://username:password@host:port.

Should I use HTTP or SOCKS5 proxies?

Use HTTP(S) for most browsers, web scrapers, bots, and API clients. Use SOCKS5 when the app specifically asks for SOCKS or needs a generic tunnel.

Why does my proxy work in cURL but not in my bot?

The bot may require a different proxy format, a protocol dropdown, separate auth fields, or a different session mode. Test one proxy at a time and change only one setting between tests.

Can I use the same proxy for every account?

For account workflows, avoid sharing one proxy identity across many accounts unless the site naturally expects that behavior. Map accounts, profiles, and sticky sessions consistently.

Final Thoughts

How to setup a proxy server for real work comes down to clean inputs and controlled testing. Get the host, port, credentials, protocol, and format right first. Then choose the right proxy type, keep sessions consistent, and add pacing before scaling.

For protocol setup, compare SOCKS5 vs HTTP proxy. For rotating pool workflows, start with residential proxies. For stable dedicated IP workflows, review ISP proxy pricing.

Technical references: MDN Proxy servers and tunneling, curl proxy documentation, and Playwright HTTP proxy documentation.

About the Author

Unknown Proxies

Proxy Infrastructure Team

Stay Unknown

High-performance dedicated proxies optimized for speed and reliability. Get uncompromising quality, 99.9% uptime, and unmatched support. Stay Unknown.

Explore Plans
Unknown Proxies