Buy residential proxies

  • 220+ Countries
  • 90M+ Residential IPs
  • 99,9% Uptime
  • ~0,7 Response time

Avoid restrictions and blocks with the fastest residential proxies in the industry. Use the industry’s most advanced proxy infrastructure.

Quick start
  • Static and rotating residential proxies
  • Unlimited concurrent sessions
  • Target any country, state, city, ASN
  • HTTP/HTTPS/SOCKS5

How to get started

  • Register on the website
  • Select the required amount of traffic
  • Open the generator and set the connection settings: GEO, protocol
  • Get authorization data to get started
  • Connect to the proxy server
How to get started using 2Captcha proxy service

Residential proxy price

1 GB$0

Price$0/GBDiscount 0%Buy residential proxyWe accept these payment methods:We support Visa, Mastercard, Airtm, PayPal, Alipay, BTC, USDT payment methods

Proxy plans is directly linked to the volume of gigabytes you purchase. The more gigabytes you procure, the greater the discount you unlock! It's that simple. Unlock discounts with bulk proxy purchases!

  • Flexible rotation options
  • API access
  • SOCKS5 supported
  • Unlimited traffic

Rotated and static resident proxies worldwide

Real residential IPs worldwide. Wide proxy pool covers locations across the world. The network of rotated (dynamic) and static (sticky) resident proxies covers more than 220 countries and the set of IP addresses exceeds the mark of 90 million. Access information you need, no matter the location.

  • United States
    United States2,752,824 IPs
  • Brazil
    Brazil12,629,978 IPs
  • France
    France5,187,963 IPs
  • Russia
    Russia3,484,926 IPs
  • Canada
    Canada3,693,481 IPs
  • Germany
    Germany2,227,198 IPs
  • Australia
    Australia265,445 IPs
  • Great Britain
    Great Britain1,274,731 IPs

Largest and most reliable residential proxy network

Residential proxies uses an IP address belonging to a real device connected to the internet. It belongs to a real user, not a proxy server. Residential proxies are harder to detect and block thus using it provides a higher level of anonymity and security than datacenter proxies. It is also helpful if you need to bypass restrictions and blocks based on IP address.

  • Rotating proxy

    Proxy architecture is unique in its ability to provide rotating residential proxies with one hop connectivity, preventing bottlenecks in the traffic flow.

  • Additional security

    Choose between HTTP, fully encrypted HTTPS, or the fast and dependable SOCKS5 protocol.

  • Ethically sourced proxies

    Residential proxies come from legitimate sources

  • Most stable residential proxy network

    Highest success rates of any global IPs provider

  • Best residential proxy infrastructure

    Unlimited scale and customizing possibilities from any city or country in the world

  • Fastest residential proxies

    Top residential proxy IP network speeds

Residential proxies use cases

Unlock global data with local appearances. Residential proxies let you access geo-restricted information and collect data from specific regions, giving you a wider and more accurate view. Stay anonymous and avoid online tracking. Protect your privacy and online activities by masking your true IP address with a trusted residential proxy network.

  • Review monitoring

    Use stable and reliable residential proxy network to monitor reviews all over the world without any IP blocks.

  • Ad verification

    Rotating residential proxies is the most effective tool to check how ads are displayed to different audiences globally.

  • Cybersecurity

    Residential IPs are great for identifying threats, testing applications, or monitoring websites in different locations.

  • Travel fare aggregation

    Buy residential proxies, harvest real-time localized data, and provide your customers only with new and relevant travel offers.

Buy residential proxies

  • Access any website and extract the data you need
  • Avoid website blocks by acting like a regular user
  • Bypass GEO restricted content and access localized data
  • Enjoy faster speeds with one hop connectivity
Quick start

Code examples

Effortlessly incorporate proxy into your projects. We ensure a seamless integration of our products into your infrastructure, making the process as effortless as possible. With support for multiple languages and readily available code examples, a swift and uncomplicated start to your web project is guaranteed.

<?php

$username = 'ACCOUNTNAME';
$password = 'PASSWORD';
$PROXY_PORT = 9999;
$PROXY_DNS = 'xx.xx.xx.xx';

$urlToGet = 'http://ip-api.com/json';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $urlToGet);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_PROXYPORT, $PROXY_PORT);
curl_setopt($ch, CURLOPT_PROXYTYPE, 'HTTP');
curl_setopt($ch, CURLOPT_PROXY, $PROXY_DNS);
curl_setopt($ch, CURLOPT_PROXYUSERPWD, $username.':'.$password);
$data = curl_exec($ch);
curl_close($ch);

echo $data;
?>
const axios = require('axios');
const username = 'ACCOUNTNAME';
const password = 'PASSWORD';
const PROXY_DNS = 'xx.xx.xx.xx';
const PROXY_PORT = 9999;

axios
  .get('http://ip-api.com/json', {
    proxy: {
      protocol: 'http',
      host: PROXY_DNS,
      port: PROXY_PORT,
      auth: {
        username,
        password,
      },
    },
  })
  .then((res) => {
    console.log(res.data);
  })
  .catch((err) => console.error(err));
using System;
using System.Net;
using System.Net.Http;
using System.Threading.Tasks;

namespace ProxyHttpExample
{
    public static class Program
    {
        private const string Username = "ACCOUNTNAME";
        private const string Password = "PASSWORD";
        private const string ProxyDns = "http://xx.xx.xx.xx:9999";
        private const string UrlToGet = "http://ip-api.com/json";

        public static async Task Main()
        {
            using var httpClient = new HttpClient(new HttpClientHandler
            {
        Proxy = new WebProxy
        {
          Address = new Uri(ProxyDns),
          Credentials = new NetworkCredential(Username, Password),
        }
            });

            using var responseMessage = await httpClient.GetAsync(UrlToGet);

            var contentString = await responseMessage.Content.ReadAsStringAsync();

            Console.WriteLine("Response:" + Environment.NewLine + contentString);
            Console.ReadKey(true);
        }
    }
}
package main

import (
  "net/url"
  "net/http"
  "fmt"
  "io/ioutil"
  "os"
)

const(
  proxyUrlTemplate = "http://%s:%s@%s:%s"
)

const (
  username = "ACCOUNTNAME"
  password = "PASSWORD"

  PROXY_DNS = "xx.xx.xx.xx"
  PROXY_PORT = "9999"

  urlToGet = "http://ip-api.com/json"
)

func main() {
  proxy := fmt.Sprintf(proxyUrlTemplate, username, password, PROXY_DNS, PROXY_PORT)
  proxyURL, err := url.Parse(proxy)
  if err != nil {
    fmt.Printf("failed to form proxy URL: %v", err)
    os.Exit(1)
  }

  u, err := url.Parse(urlToGet)
  if err != nil {
    fmt.Printf("failed to form GET request URL: %v", err)
    os.Exit(1)
  }

  transport := &http.Transport{Proxy: http.ProxyURL(proxyURL)}
  client := &http.Client{Transport: transport}

  request, err := http.NewRequest("GET", u.String(), nil)
  if err != nil {
    fmt.Printf("failed to form GET request: %v", err)
    os.Exit(1)
  }

  response, err := client.Do(request)
  if err != nil {
    fmt.Printf("failed to perform GET request: %v", err)
    os.Exit(1)
  }

  responseBodyBytes, err := ioutil.ReadAll(response.Body)
  if err != nil {
    fmt.Printf("could not read response body bytes: %v", err)
    os.Exit(1)
  }
  fmt.Printf("Response: %s ", string(responseBodyBytes))
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.*;

public class Application {
    private static String USERNAME = "ACCOUNTNAME";
    private static String PASSWORD = "PASSWORD";

    private static String PROXY_DNS = "xx.xx.xx.xx";
    private static int PROXY_PORT = 9999;

    private static String URL_TO_GET = "http://ip-api.com/json";

    public static void main(String[] args) throws IOException {
        final Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(PROXY_DNS, PROXY_PORT));
        Authenticator.setDefault(
                new Authenticator() {
                    public PasswordAuthentication getPasswordAuthentication() {
                        return new PasswordAuthentication(
                                USERNAME, PASSWORD.toCharArray()
                        );
                    }
                }
        );

        final URL url = new URL(URL_TO_GET);
        final URLConnection urlConnection = url.openConnection(proxy);

        final BufferedReader bufferedReader = new BufferedReader(
                new InputStreamReader(urlConnection.getInputStream()));
        final StringBuilder response = new StringBuilder();

        String inputLine;
        while ((inputLine = bufferedReader.readLine()) != null) {
            response.append(inputLine);
        }
        bufferedReader.close();

        System.out.println(String.format("Response: %s", response.toString()));
    }
}
#!/usr/bin/env perl

use LWP::Simple qw( $ua get );

my $username = 'ACCOUNTNAME';
my $password = 'PASSWORD';

my $PROXY_DNS = 'xx.xx.xx.xx:9999';

my $urlToGet = 'http://ip-api.com/json';

$ua->proxy('http', sprintf('http://%s:%s@%s', $username, $password, $PROXY_DNS));

my $contents = get($urlToGet);
print "Response: $contents"
#!/usr/bin/env python3

import requests

username = "ACCOUNTNAME"
password = "PASSWORD"
PROXY_DNS = "xx.xx.xx.xx:9999"
urlToGet = "http://ip-api.com/json"
proxy = {"http":"http://{}:{}@{}".format(username, password, PROXY_DNS)}
r = requests.get(urlToGet , proxies=proxy)

print("Response:{}".format(r.text))
#!/usr/bin/env bash

export USERNAME=ACCOUNTNAME
export PASSWORD=PASSWORD
export PROXY_DNS=xx.xx.xx.xx:9999
curl -x http://$USERNAME:$PASSWORD@$PROXY_DNS http://ip-api.com/json && echo
Imports System.IO
Imports System.Net

Module Module1

    Private Const Username As String = "ACCOUNTNAME"
    Private Const Password As String = "PASSWORD"
    Private Const PROXY_DNS As String = "http://xx.xx.xx.xx:9999"
    Private Const UrlToGet As String = "http://ip-api.com/json"

    Sub Main()
        Dim httpWebRequest = CType(WebRequest.Create(UrlToGet), HttpWebRequest)
        Dim webProxy = New WebProxy(New Uri(PROXY_DNS)) With {
                .Credentials = New NetworkCredential(Username, Password)
                }
        httpWebRequest.Proxy = webProxy
        Dim httpWebResponse = CType(httpWebRequest.GetResponse(), HttpWebResponse)
        Dim responseStream = httpWebResponse.GetResponseStream()

        If responseStream Is Nothing Then
            Return
        End If

        Dim responseString = New StreamReader(responseStream).ReadToEnd()
        Console.WriteLine($"Response:
{responseString}")
        Console.ReadKey()
    End Sub

End Module

What are residential proxies

2Captcha residential proxies

Residential Proxy network is a proxy network that contains real IP addresses provided by Internet Service Providers (ISPs). These IP addresses are attached to physical locations across the globe at a country or a city level. Requests coming from residential proxies stand out for their legitimacy, allowing you to gather public data efficiently. Find out more about what residential proxies meaning from the article.

FAQ

How do I generate a proxy configuration?
  1. Go to the configurator block on the Proxy page.
  2. Choose the type from:
    • State (Province) - City - targeting by State and City
    • ISP - targeting by Internet Service Provider
  3. Choose the Geo-position setting:
    • Global Mix - Geo is picked randomly
    • Europe Mix - Geo is picked randomly in Europe
    • Asia Mix - Geo is picked randomly in Asia
    • City Mix - City is picked randomly
  4. Set the "IP duration" setting based on your needs. It states for how long will the proxy be valid from 0 (every new requests goes via a new IP address) to 120 minutes. We recommend to set 3 minutes.
  5. Press Generate button and check the actual proxy configuration.
How can I change the IP address manually?
- You can change the setting of the proxy (Geo settings for example) or you can set the IP duration to 0 so the IP is changed every time you use it.
"IP duration (0 - 120 Min)" does this mean that after 2 hours (120 Min) the proxies will stop working? If yes, is there a way to change it?
- No, there is no way to keep the session for longer than 120 minutes
  • «GDPR» logo
  • «SSL secured» logo
  • «Google privacy policy» logo
  • «S/MIME» logo
  • «CCPA» logo