Free Trial Residential Proxy Servers
✔ 1GB of FREE residential data
✔ Sticky sessions up to 10 min
✔ 195+ countries worldwide
✔ HTTP & HTTPS protocols
Seamless integrations:











Try Residential Proxies Before You Buy
A free trial lets you see how our proxies perform with your exact use case. Whether you need proxies for SEO, web scraping, social media management, or automation, testing first helps you avoid low-quality networks and wasted budget.
With the WeProxies free trial, you can:
- test real residential IPs
- check speed and stability
- verify geo-targeting accuracy
- confirm compatibility with your tools
- run real requests, not demo traffic
This gives you confidence that our proxies match your workflow.
import requests
# Proxy configuration
proxy = {
"http": "http://USERNAME:PASSWORD@proxy-staging.weproxies.com:1080",
"https": "http://USERNAME:PASSWORD@proxy-staging.weproxies.com:1080"
}
# Basic request
response = requests.get("https://httpbin.org/ip", proxies=proxy)
print(response.json())
# With country targeting (US)
proxy_us = {
"http": "http://USERNAME-country-us:PASSWORD@proxy-staging.weproxies.com:1080",
"https": "http://USERNAME-country-us:PASSWORD@proxy-staging.weproxies.com:1080"
}
response = requests.get("https://httpbin.org/ip", proxies=proxy_us)
# With sticky session (same IP for all requests)
proxy_sticky = {
"http": "http://USERNAME-sessionid-mysession:PASSWORD@proxy-staging.weproxies.com:1080",
"https": "http://USERNAME-sessionid-mysession:PASSWORD@proxy-staging.weproxies.com:1080"
}
response = requests.get("https://httpbin.org/ip", proxies=proxy_sticky)
// Using fetch with a proxy agent (Node.js)
import { HttpsProxyAgent } from 'https-proxy-agent';
const proxyUrl = 'http://USERNAME:PASSWORD@proxy-staging.weproxies.com:1080';
const agent = new HttpsProxyAgent(proxyUrl);
// Basic request
const response = await fetch('https://httpbin.org/ip', { agent });
const data = await response.json();
console.log(data);
// With country targeting (US)
const proxyUs = 'http://USERNAME-country-us:PASSWORD@proxy-staging.weproxies.com:1080';
const agentUs = new HttpsProxyAgent(proxyUs);
const responseUs = await fetch('https://httpbin.org/ip', { agent: agentUs });
// With sticky session
const proxySticky = 'http://USERNAME-sessionid-mysession:PASSWORD@proxy-staging.weproxies.com:1080';
const agentSticky = new HttpsProxyAgent(proxySticky);
const responseSticky = await fetch('https://httpbin.org/ip', { agent: agentSticky });
package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
// Proxy configuration
proxyURL, _ := url.Parse("http://USERNAME:PASSWORD@proxy-staging.weproxies.com:1080")
client := &http.Client{
Transport: &http.Transport{
Proxy: http.ProxyURL(proxyURL),
},
}
// Basic request
resp, err := client.Get("https://httpbin.org/ip")
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
// With country targeting (US)
proxyUS, _ := url.Parse("http://USERNAME-country-us:PASSWORD@proxy-staging.weproxies.com:1080")
clientUS := &http.Client{
Transport: &http.Transport{
Proxy: http.ProxyURL(proxyUS),
},
}
respUS, _ := clientUS.Get("https://httpbin.org/ip")
defer respUS.Body.Close()
}
import java.net.*;
import java.io.*;
public class ProxyExample {
public static void main(String[] args) throws Exception {
// Proxy configuration
String proxyHost = "proxy-staging.weproxies.com";
int proxyPort = 1080;
String proxyUser = "USERNAME";
String proxyPass = "PASSWORD";
// Set proxy authentication
Authenticator.setDefault(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(proxyUser, proxyPass.toCharArray());
}
});
// Create proxy
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(proxyHost, proxyPort));
// Basic request
URL url = new URL("https://httpbin.org/ip");
HttpURLConnection conn = (HttpURLConnection) url.openConnection(proxy);
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
// With country targeting - change username to: USERNAME-country-us
// With sticky session - change username to: USERNAME-sessionid-mysession
}
}
using System;
using System.Net;
using System.Net.Http;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
// Proxy configuration
var proxy = new WebProxy("proxy-staging.weproxies.com", 1080)
{
Credentials = new NetworkCredential("USERNAME", "PASSWORD")
};
var handler = new HttpClientHandler
{
Proxy = proxy,
UseProxy = true
};
using var client = new HttpClient(handler);
// Basic request
var response = await client.GetStringAsync("https://httpbin.org/ip");
Console.WriteLine(response);
// With country targeting (US)
var proxyUS = new WebProxy("proxy-staging.weproxies.com", 1080)
{
Credentials = new NetworkCredential("USERNAME-country-us", "PASSWORD")
};
// With sticky session
var proxySticky = new WebProxy("proxy-staging.weproxies.com", 1080)
{
Credentials = new NetworkCredential("USERNAME-sessionid-mysession", "PASSWORD")
};
}
}
<?php
// Proxy configuration
$proxyUrl = 'http://USERNAME:PASSWORD@proxy-staging.weproxies.com:1080';
// Using cURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://httpbin.org/ip');
curl_setopt($ch, CURLOPT_PROXY, 'proxy-staging.weproxies.com:1080');
curl_setopt($ch, CURLOPT_PROXYUSERPWD, 'USERNAME:PASSWORD');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
// With country targeting (US)
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://httpbin.org/ip');
curl_setopt($ch, CURLOPT_PROXY, 'proxy-staging.weproxies.com:1080');
curl_setopt($ch, CURLOPT_PROXYUSERPWD, 'USERNAME-country-us:PASSWORD');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
// With sticky session
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://httpbin.org/ip');
curl_setopt($ch, CURLOPT_PROXY, 'proxy-staging.weproxies.com:1080');
curl_setopt($ch, CURLOPT_PROXYUSERPWD, 'USERNAME-sessionid-mysession:PASSWORD');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
// Using Guzzle
use GuzzleHttp\Client;
$client = new Client([
'proxy' => $proxyUrl
]);
$response = $client->get('https://httpbin.org/ip');
echo $response->getBody();
?>
Very easy integration
Oxylabs proxies work smoothly with a wide range of third-party tools, helping you get more out of your existing software. Check out their integration guides and full documentation for setup details.
How the Free Trial Works
There’s no complicated setup and no need to manage proxy lists.
You connect once and start sending traffic through the residential network.
1
Create a WeProxies Account
Sign up in minutes and get access to your dashboard with no payment required.
2
Request Free Trial
Access
Submit a quick request to activate your free proxy trial and unlock testing credits.
3
Receive Your Gateway Endpoint & Credentials
Get your proxy endpoint and login details instantly — no proxy lists or manual setup.
4
Start Testing Proxies Instantly
Connect using your tools or browser and test real residential proxies right away.
Residential Proxy FAQs
What is a free proxy trial?
A free proxy trial allows you to test residential proxies before purchasing a paid plan. You can check speed, stability, geo-targeting, and compatibility with your tools using real residential IPs.
Is the WeProxies free trial really free?
Yes. The free trial gives you limited traffic to test our residential proxy network at no cost and with no obligation to upgrade.
Do I need a credit card to start the free trial?
No. You can request free trial access without providing any payment details.
What type of proxies can I test during the trial?
During the free trial, you can test residential proxies with rotating and static sessions, global IP coverage, and real routing behavior — the same infrastructure used by paying customers.
Is the free trial limited in features?
No. You test the same residential proxy network as paid users. Only the traffic amount is limited.
Can I request another free trial later?
Free trials are limited to one per user. This helps us keep the network clean and fair for everyone.