GEO targeted local proxies

Choose GEO and connect to local proxies from 50+ Countries. Proxies available in United States, France, Germany, UK, Netherlands and many more.

  • Unblock collecting the data you need
  • Perform load balancing for efficient network traffic distribution
  • City, state, country, ZIP, and ASN level targeting - Free!
  • #1 Proxy network
Buy local proxy

No credit card required

  • Local proxies
  • GEO proxies
  • Any proxy server location
  • Local SSL proxy

The best customer experience provided by leading local proxy network

  • «G2» rating - 4.5 out of 5 stars
  • «SourceForge» rating - 4.5 out of 5 stars
  • «Captchathecat» rating - 9.8 out of 10 stars

Buy GEO proxies

1 GB$6

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

Service offer top-tier local proxy services designed to meet your needs. Whether you want to purchase a proxy server or need a local IP address, our solutions provide secure and high-speed connections. Choose from a range of options for buying local proxies, and enjoy seamless access to the content and privacy you require.

  • Rotating
  • Traffic never expires
  • Sticky sessions
  • Unlimited data

Purchase GEO proxy plans

  • $6/ 1 GB
    0% Off
    $6Price per 1GB
    Order now
  • $60
    $50/ 10 GB
    16.7% Off
    $5Price per 1GB
    Order now
  • $180
    $120/ 30 GB
    33.3% Off
    $4Price per 1GB
    Order now
  • Popular Plan
    $600
    $300/ 100 GB
    50% Off
    $3Price per 1GB
    Order now
  • $1,200
    $558/ 200 GB
    53.5% Off
    $2.79Price per 1GB
    Order now
  • $6,000
    $2,490/ 1 TB
    58.5% Off
    $2.49Price per 1GB
    Order now
  • $18,000
    $6,570/ 3 TB
    63.5% Off
    $2.19Price per 1GB
    Order now
  • $30,000
    $9,950/ 5 TB
    66.8% Off
    $1.99Price per 1GB
    Order now

Most popular GEO proxy locations

We provide high-quality GEO proxy services customized to scraping requirements. Select from various GEO-targeted proxy options.

  • Residential IPs
  • Mobile IPs
  • Datacenter IPs
  • ISP IPs

Local proxies by largest IP count

Explore local network service with extensive IP coverage in key regions. With proxies in major cities and states, we ensure reliable access and secure browsing, tailored to your needs.

CityIP countProtocolsIP versionBandwidth
New York, USA70144HTTP/SOCKS5IPV4/IPV6Unlimited
London, UK62114HTTP/SOCKS5IPV4/IPV6Unlimited
Tokyo, Japan38388HTTP/SOCKS5IPV4/IPV6Unlimited
Los Angeles, USA25998HTTP/SOCKS5IPV4/IPV6Unlimited
Singapore23721HTTP/SOCKS5IPV4/IPV6Unlimited
Paris, France22176HTTP/SOCKS5IPV4/IPV6Unlimited
Dubai, UAE19381HTTP/SOCKS5IPV4/IPV6Unlimited
Sydney, Australia16240HTTP/SOCKS5IPV4/IPV6Unlimited
Berlin, Germany15221HTTP/SOCKS5IPV4/IPV6Unlimited
Mumbai, India13206HTTP/SOCKS5IPV4/IPV6Unlimited
  • Powered by an award-winning GEO proxy infrastructure

    Award-winning proxy infrastructure with 120+ million IPs and precise targeting by country, city, ZIP Code, carrier, and ASN, making it ideal for developers.

  • Local proxies from any country in the world

    Access over 120 million residential IP worldwide, ensuring seamless data collection without blocks or Captchas. Whether you're scraping for best sellers, pricing, product reviews, or news, 2Proxy stands as the most trusted proxy network in the industry. Unlike other providers, we deliver reliable performance at scale, even during peak times, when it matters most.

  • GEO proxies for data scraping needs

    Leverage the best local proxy network to browse anonymously and collect public web data with GEO-targeted IPs. Our reliable proxy infrastructure is trusted by over 15K+ businesses, offering a 99.99% success rate. Explore a range of automated web data collection tools from the best local proxy network. GEO proxies ensure seamless and secure data access, helping you bypass access restrictions and host resolution issues effortlessly.

Use cases

  • Review monitoring

    Utilize 2Captcha's robust and reliable Residential IPs in the US to monitor reviews worldwide without hitting IP restrictions.

  • Travel Fare Aggregation

    Scrape data from mobile-only apps and platforms. Hide scraping activities from target mobile applications and websites.

  • Brand Protection

    Deploy 2Captcha's premium Datacenter Proxies to collect data on counterfeit sites and domain squatting, protecting your brand from threats.

  • Cybersecurity

    Effortlessly gather data while avoiding detection by potential threats. Access global data to gain insights and make informed security decisions.

Best local proxy servers

  • #1 Leading local proxy service
  • #1 Performing United States proxy speeds
  • Trusted by 20,000+ businesses
  • Trusted by 2M users

Buy local 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

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
How is the data encrypted when passing through your residential proxies? Are there any specific encryption protocols you use?
We are utilizing those protocols: HTTP, HTTPS and SOCKS5. We don't use any more protocols.
How can I test before I buy?
Unfortunately, we can't provide a trial or free traffic for a proxy.
What is the maximum threads your proxy could handle?
We don't limit the number of threads you use.
Do you somehow limit traffic? Any blocked sites may be?
You will not be able to use proxy with paypal.com and web.telegram.org
Where is your service available?
Worldwide, except China.
Is there any due date for the purchased traffic?
Yes, you should use prepaid traffic within 3 months.
How is IP changing: strictly on time or sometimes when there are no requests?
The IP-address is changed strictly according to the time set in the settings, unless something unpredictable happens (user turned off the PC, disconnection, etc.).
Will the sessions be interrupted when the IP address changes?
When the IP address duration is over, the new IP address is instantly assigned.
How can I change the IP from time to time?
Use IP duration for setting the time of proxy work.
How can I generate a bulk proxy list?
You can use 'Generate proxy list' function to get a list of proxy with unique IP addresses.
Will I have guaranteed unique IP addresses using your 'Generate proxy list' function?
The nature of residential proxy doesn't allow us to check all of it at the moment you requested the list because it's dynamic in nature. This depends on the geo-settings of your proxy list. If you try to get, say, 1000 IP out of the city with 100 devices, obviously we will not be able to provide that amount of devices online, so please keep that in mind when you set up the geolocation.
How is traffic counted: separately or incoming plus outgoing?
Traffic is calculated as the sum of incoming and outgoing traffic. We are aware that some services claim that they count only outgoing, but we tested it and have serious doubts about that being so.
Could you block my account for anything?
Please be aware that we have the right to disable an account if we receive a complaint from our payment processor.
What is your policy regarding data logging? How is it stored and protected?
We don't log anything.
Do you somehow track the traffic or websites visited via proxy? Do you disclose this personal information to someone?
No, we don't track anything, and we have no KYC, so it's safe to say we have zero information about customers. So we can't disclose any information about customers, as we store none of it.
  • «GDPR» logo
  • «SSL secured» logo
  • «Google privacy policy» logo
  • «S/MIME» logo
  • «CCPA» logo