Guide

How to Set Up a Mobile Proxy: Browser, Android, iOS, and Python

A step-by-step setup guide for mobile proxies across Chrome, Firefox, Android, iOS, and Python. Covers FoxyProxy, Super Proxy, Shadowrocket, the requests library, and Playwright, with verification steps and common fixes.

NK
Narmin Kamilsoy Author
12 min read
How to Set Up a Mobile Proxy: Browser, Android, iOS, and Python

Setting up a mobile proxy is straightforward once you understand three things: which protocol you need (HTTP or SOCKS5), which tool or environment you are configuring, and how to verify the proxy is working after setup. This guide covers mobile proxy setup for the four most common scenarios: browser-based use in Chrome and Firefox, Android devices, iOS devices, and Python-based scraping with the requests library and Playwright.

The steps in each section apply directly to Power Proxy credentials, which are delivered in host:port:username:password format. The same format works with every tool covered here.

Before You Start: Understanding Your Proxy Credentials

When you receive mobile proxy credentials from a provider, they typically follow this format:

host:port:username:password

Example: proxy.powerproxy.io:8080:user123:pass456

You will use these four values across every setup method in this guide. Some tools ask you to enter them in separate fields, others accept the combined format directly. Keep your credentials accessible before you begin.

HTTP vs SOCKS5: Which Protocol to Use

Most mobile proxy providers offer two protocols on separate ports. The right choice depends on what you are doing:

Protocol Traffic Coverage App Support Best For
HTTP HTTP and HTTPS only Most browsers + tools Web scraping, browser use
SOCKS5 All TCP traffic Requires app or extension Native apps, full-device routing

Android's built-in Wi-Fi proxy and iOS's native proxy setting only support HTTP. For SOCKS5, you need a third-party app on mobile or a browser extension on desktop.

Set Up a Mobile Proxy in Chrome and Firefox

Browsers do not have their own proxy configuration panel in the same way as system settings. Chrome uses the operating system proxy, which means you need a browser extension to configure a proxy independently of the system. Firefox has its own built-in proxy panel that works without extensions.

Set Up a Mobile Proxy in Chrome (FoxyProxy)

FoxyProxy is the most widely recommended proxy extension for Chrome in 2026. SwitchyOmega has limited support under Manifest V3, which Chrome began enforcing in 2024, and is no longer available through the Chrome Web Store in its original form. Community-maintained forks such as ZeroOmega exist on GitHub but require manual installation. For most users, FoxyProxy is the more practical choice.

Step 1 Install FoxyProxy. Open the Chrome Web Store and search for FoxyProxy Standard. Click Add to Chrome and confirm the installation.
Step 2 Open FoxyProxy Options. Click the FoxyProxy icon in the Chrome extensions bar and select Options from the dropdown menu.
Step 3 Add a New Proxy. In the Options panel, click Add under the Proxies tab. Fill in: Title (e.g., Power Proxy NL), Type (HTTP or SOCKS5), Hostname, Port, Username, and Password.
Step 4 Activate the Proxy. Click Save. Then click the FoxyProxy icon and select the proxy profile you just created. The icon will change color to indicate the proxy is active.
Step 5 Verify. Open a new tab and visit whatismyipaddress.com. The displayed IP and location should match your proxy provider's location, not your real IP.

Set Up a Mobile Proxy in Firefox

Firefox has a built-in proxy panel that supports both HTTP and SOCKS5 without needing an extension. This makes Firefox the simpler option for direct proxy configuration.

Step 1 Open Network Settings. In Firefox, go to Settings and scroll down to Network Settings at the bottom of the General section. Click Settings.
Step 2 Configure Manual Proxy. Select Manual proxy configuration. For HTTP: enter host and port in the HTTP Proxy field. For SOCKS5: enter in the SOCKS Host field and select SOCKS v5. Enable Proxy DNS when using SOCKS v5.
Step 3 Enter Credentials and Save. Click OK. Firefox will prompt for username and password when you first make a request through the proxy.

DNS leak risk: When using SOCKS5 in Firefox, enable the "Proxy DNS when using SOCKS v5" checkbox. Without it, DNS queries are resolved locally by your ISP, which can reveal domain-level browsing activity even when your IP is masked.

Set Up a Mobile Proxy on Android

Android offers three methods for mobile proxy setup: native Wi-Fi settings, a per-app proxy app, and APN settings for mobile data. Each has specific limitations you should understand before choosing.

Method Works On Authentication Protocols
Native Wi-Fi Wi-Fi only Not supported HTTP only
Super Proxy app Wi-Fi + mobile data Supported HTTP + SOCKS5
APN settings Mobile data only Limited HTTP only

Method 1: Native Wi-Fi Proxy Settings

This is the built-in Android proxy configuration. It is quick to set up but limited: HTTP only, no authentication, Wi-Fi only, and many modern mobile apps bypass it entirely by maintaining their own network stack.

Step 1 Open Settings and go to Network & Internet (or Connections on Samsung devices).
Step 2 Tap Wi-Fi, then tap the gear icon or long-press your connected network. Tap Advanced options.
Step 3 Change the Proxy dropdown from None to Manual. Enter your proxy hostname and port. Tap Save.

Important limitation: The built-in Wi-Fi proxy does not support username and password authentication. If your proxy requires credentials, use Method 2 (Super Proxy) instead. Many modern apps including Instagram, TikTok, and Facebook maintain their own network connections and bypass the system proxy.

Method 2: Super Proxy App (Recommended)

Super Proxy, developed by SCHELER Software, has over 1 million downloads on the Play Store. It creates a local VPN tunnel to route most device traffic through your proxy without requiring root access. It supports HTTP and SOCKS5, handles authentication, and works on both Wi-Fi and mobile data.

Step 1 Install Super Proxy. Search for Super Proxy by SCHELER Software on the Google Play Store and install it.
Step 2 Add a Proxy Profile. Open the app and tap the + button. Enter a profile name and select the protocol (HTTP or SOCKS5).
Step 3 Enter Your Credentials. Enter each part in its corresponding field: Server/Host, Port, Username, Password.
Step 4 Activate and Verify. Return to the main screen, select your profile, and tap Start. Tap OK when Android asks permission to create a VPN connection. Visit whatismyipaddress.com to confirm your IP has changed.

Traffic coverage: Super Proxy routes most TCP traffic through the proxy tunnel. UDP traffic, used by some games, VoIP applications, and apps that use the QUIC protocol, typically bypasses the proxy. For complete system-level coverage on all traffic types, a rooted device with ProxyDroid is the only Android option.

Method 3: APN Settings (Mobile Data)

APN settings allow proxy configuration for mobile data connections. This method has significant limitations: most carriers only support HTTP, authentication is often not supported, and some carriers ignore or overwrite APN proxy fields entirely.

Step 1 Go to Settings > Connections > Mobile Network (or Settings > Network & Internet > Internet on stock Android). Tap Access Point Names.
Step 2 Tap your active APN to edit it. Enter your proxy host in the Proxy field and port in the Port field.
Step 3 Save and toggle mobile data off and on.

Carrier limitations: Some carriers block APN proxy fields, do not support authentication, or automatically reset APN settings to carrier defaults. If mobile data stops working after this change, clear the proxy fields and restore the original APN. For reliable mobile data proxying, use Super Proxy instead.

Set Up a Mobile Proxy on iOS

iOS supports HTTP proxy configuration natively through Wi-Fi settings. For SOCKS5 or proxying on mobile data, you need a third-party app such as Shadowrocket.

Method 1: Native iOS Wi-Fi Proxy Settings

Step 1 Open Wi-Fi Settings. Go to Settings > Wi-Fi. Tap the blue information icon next to your connected network.
Step 2 Configure HTTP Proxy. Scroll to the HTTP Proxy section. Tap Configure Proxy and select Manual.
Step 3 Enter Proxy Details. Fill in Server and Port. Toggle Authentication on and enter your username and password.
Step 4 Save and Test. Tap Save. Open Safari and visit whatismyipaddress.com to verify.

iOS native proxy limitations: The native iOS proxy only covers Wi-Fi traffic and only supports HTTP. Proxy settings are per-network and can reset after major iOS updates. For SOCKS5 or mobile data proxying, use Shadowrocket.

Method 2: Shadowrocket (SOCKS5 and Mobile Data)

Shadowrocket, developed by Shadow Launch Technology, is a one-time purchase ($2.99 on the App Store) that supports HTTP, HTTPS, SOCKS5, and several other protocols. It uses iOS Network Extension to route device traffic through the proxy, including on mobile data.

Step 1 Purchase and install Shadowrocket from the App Store.
Step 2 Open the app and tap the + icon to add a new server. Select the proxy type (HTTP or SOCKS5).
Step 3 Enter your host, port, username, and password. Tap Done.
Step 4 Tap the toggle on the main screen to activate. Visit whatismyipaddress.com to confirm.

For standard HTTP proxies without SOCKS5 requirements, Potatso Lite is a free alternative on the App Store that handles basic proxy routing on iOS.

Set Up a Mobile Proxy in Python Requests

The Python requests library accepts proxy configuration through a proxies dictionary that maps protocols to proxy URLs. This is the standard way to route HTTP and HTTPS requests through a mobile proxy in Python scripts and scrapers.

Basic Proxy Setup

import requests proxies = { 'http': 'http://username:[email protected]:8080', 'https': 'http://username:[email protected]:8080', } response = requests.get('https://whatismyipaddress.com', proxies=proxies) print(response.status_code)

Using a Session for Multiple Requests

For scraping workflows that make multiple requests, using a Session object is more efficient. The proxy is set once and applied to all subsequent requests automatically:

import requests session = requests.Session() session.proxies = { 'http': 'http://username:[email protected]:8080', 'https': 'http://username:[email protected]:8080', } r1 = session.get('https://example.com/page1') r2 = session.get('https://example.com/page2')

SOCKS5 Proxy with Python Requests

# Install: pip install requests[socks] import requests proxies = { 'http': 'socks5://username:[email protected]:1080', 'https': 'socks5://username:[email protected]:1080', } response = requests.get('https://example.com', proxies=proxies)

URL-encoding special characters: If your proxy username or password contains special characters such as @, :, or #, you need to URL-encode them before embedding in the proxy URL. @ becomes %40, : becomes %3A, and # becomes %23. This is a common source of authentication failures.

Set Up a Mobile Proxy with Playwright

Playwright supports proxy configuration at both the browser launch level and the browser context level. Context-level configuration is more flexible for scraping workflows that need different IPs per session.

Browser-Level Proxy (Python)

from playwright.sync_api import sync_playwright with sync_playwright() as p: browser = p.chromium.launch( proxy={ 'server': 'http://proxy.powerproxy.io:8080', 'username': 'your_username', 'password': 'your_password', } ) page = browser.new_page() page.goto('https://whatismyipaddress.com') print(page.title()) browser.close()

Context-Level Proxy (Recommended for Scraping)

Context-level proxy configuration allows different sessions to use different proxies within the same browser instance. This is the recommended pattern for scraping workflows that require IP rotation:

from playwright.sync_api import sync_playwright with sync_playwright() as p: browser = p.chromium.launch() context = browser.new_context( proxy={ 'server': 'http://proxy.powerproxy.io:8080', 'username': 'your_username', 'password': 'your_password', } ) page = context.new_page() page.goto('https://example.com') context.close() browser.close()

Changing proxy mid-context: In Playwright, you cannot change the proxy on an existing context or page. To switch to a different IP, close the current context and create a new one. For sticky session workflows such as login flows, keep the same context for the full session duration to avoid triggering IP-change detection.

How to Verify Your Mobile Proxy Is Working

After completing any setup method, always verify the proxy is active before proceeding with your actual task. A proxy that appears configured but is not routing traffic correctly is a common source of wasted time.

Test Tool What to Check
IP address whatismyipaddress.com Should show proxy location
DNS leak dnsleaktest.com No ISP DNS servers in results
WebRTC leak browserleaks.com/webrtc No real IP visible (browser only)

In Firefox, you can disable WebRTC by going to about:config and setting media.peerconnection.enabled to false.

Common Mobile Proxy Setup Issues and Fixes

Issue Fix
Proxy works in browser but not in apps Use Super Proxy (Android) or Shadowrocket (iOS) to route traffic at the OS level.
Authentication keeps failing URL-encode special characters in credentials: @ becomes %40, : becomes %3A, # becomes %23. Also confirm you are using the correct port for the protocol.
Speed is slower than expected Try a proxy geographically closer to your target. Switching from HTTP to SOCKS5 can also help for non-browser traffic due to lower protocol overhead.
iOS proxy settings reset after switching networks iOS saves proxy settings per Wi-Fi network. Use Shadowrocket to maintain configuration across network changes.
Python requests ignores proxy for HTTPS Ensure both http and https keys are present in your proxies dictionary.
Playwright proxy not applying to all requests Use context-level proxy configuration and ensure all new pages are created from the proxied context.

Summary

Setting up a mobile proxy follows the same pattern across all environments: you need your host, port, username, and password, and you configure them in the tool-specific proxy field or proxies dictionary. The key differences between environments come down to protocol support and traffic coverage.

For browsers, FoxyProxy handles Chrome proxy management with full authentication support, while Firefox includes a built-in proxy panel. On Android, Super Proxy routes most TCP traffic on both Wi-Fi and mobile data through a local VPN tunnel. On iOS, the native proxy covers HTTP on Wi-Fi; Shadowrocket handles SOCKS5 and cellular data. In Python, the requests library accepts a proxies dictionary, and Playwright supports context-level proxy configuration that isolates sessions by IP.

After any setup, always verify with whatismyipaddress.com and dnsleaktest.com before proceeding. A correct IP with a DNS leak still exposes domain-level activity to your ISP, which is a gap worth closing before you begin your actual work.

99.9% Uptime ⚡ 200 Mbps HTTP / SOCKS5 / OpenVPN

Get Your Mobile Proxy Credentials

Power Proxy gives you real 4G and 5G mobile IPs with dedicated hardware, rotating and sticky session support, and HTTP, SOCKS5, and OpenVPN protocols. Your credentials arrive in host:port:username:password format, ready to paste into any tool in this guide.

Dedicated device HTTP + SOCKS5 + OpenVPN
Rotating & sticky sessions Geo-targeting

4.7 / 5 on Trustpilot ★★★★★  ·  1,200+ businesses

Related reading

How Mobile Proxies Reduce IP Bans

How CGNAT works, why mobile carrier IPs receive higher trust scores, and how mobile proxies compare to VPNs and residential proxies on ban resistance.

Read more →
Enjoyed this article? Share it with your network
NK
Written by

Narmin Kamilsoy

Contributing author sharing insights and stories on our blog.

WhatsApp Telegram