HTTP Custom Configuration Guide for Setup, Settings and Config Files
Last updated: 3 August 2026
HTTP Custom configuration means loading a working .hc file into the HTTP Custom app and connecting through one of its four tunnel types: HTTP proxy, SSH, SSL, or DNS. Once you import the file and hit connect, the app routes your traffic through that tunnel instead of your carrier's normal data path. HTTP Custom is Android only, so if you're on iPhone this app won't install at all. The rest of this guide covers where to get a working config, what each setting does, and why yours might not be connecting.
What Is HTTP Custom
HTTP Custom is an Android tunneling app built by ePro Dev Team, listed on Google Play as an all in one tunnel VPN client with over 10 million downloads. It bundles four tunneling methods into one app: HTTP proxy, SSH, SSL, and DNS. Instead of picking a single protocol, you load a config file that tells the app which method to use and how to reach the server.
I list it on my HTTP Custom apps page alongside the .hc config files people have uploaded for South Africa, Kenya, Zambia, and Mozambique networks. It runs on Android 4.0.3 and above, needs no root access, and doesn't ask for a username or password unless the server you're connecting to requires one. There is no iOS version, and no official way to run it on iPhone.
Only import .hc files from sources you trust. A config file controls where your traffic goes. A malicious one can route your data through a server someone else controls, which defeats the entire point of using a tunnel app in the first place. Stick to configs from people or sites with a track record, and treat any file from an unfamiliar source the way you'd treat an unfamiliar APK.
How HTTP Custom Tunneling Works
The four tunnel types behave differently, and picking the right one for your network matters more than any other setting in the app.
HTTP proxy routes your traffic through a proxy endpoint that some networks leave open or zero rated. It's the fastest option when it works, since there's almost no encryption overhead, but networks patch these endpoints often. If your config stops connecting after a few days, this is usually why.
SSH wraps your traffic in an encrypted shell connection. It's slower than HTTP proxy but far more stable, because SSH ports are harder for networks to detect and block.
SSL adds a TLS layer on top of the tunnel, which is useful for getting past networks that specifically block plain SSH or HTTP traffic by inspecting packet headers.
DNS tunnels data through DNS queries. It's the slowest of the four by a wide margin, but DNS traffic is rarely blocked outright, so it's a fallback when the other three are dead on your network.
A config file also carries a payload, a block of custom HTTP request headers the app injects before the real connection starts. Payloads are how people get zero rated or free data endpoints to accept general internet traffic. If a config includes SNI settings, that's for spoofing the server name during the SSL handshake, which helps the connection slip past deep packet inspection on stricter networks.
Where to Get the HTTP Custom App and Config Files
You need two things before you configure anything: the APK and a working .hc file for your specific network.
Grab both from vpn4pros.com/apps/http-custom. The page lists configs by country and carrier (South Africa, Kenya, Zambia, Mozambique at the time of writing) and shows each file's protocol, size, and how recently it was uploaded. Recency matters here more than almost any other stat, since HTTP proxy configs in particular go stale fast.
If nothing on the list matches your carrier, use the request page to ask for one instead of guessing with an unrelated config, since a config built for a different network's proxy or SSH endpoint won't connect on yours.
HTTP Custom Config Files Download
Both the app and the config files live on the same page, sorted by country and carrier so you can find yours without scrolling through unrelated networks.
Got a config working that isn't listed yet? Uploads go live immediately and help the next person on your network.
How to Configure HTTP Custom Step by Step
1. Download the HTTP Custom APK and a .hc config file matching your network.
2. Open HTTP Custom and tap the menu icon.
3. Select Import Config, then choose the .hc file from your downloads.
4. Tap Connect and watch the log window for a successful handshake.
5. If it doesn't connect within 15 to 20 seconds, toggle mobile data off and on, then try connecting again. This clears a stuck VPN state that's a known quirk in the app.
Building an HTTP Custom Config Manually
If you'd rather build a config than import one, HTTP Custom's manual entry screen asks for the same core fields regardless of protocol:
- Server or host address
- Port
- Protocol type (HTTP proxy, SSH, SSL, or DNS)
- Payload, your custom header block
- Username and password, only if the server requires them
- SNI, if you're using SSL and need to spoof the destination
Fill these in through the app's settings menu, then save the result as your own .hc file for reuse.
A payload is a block of HTTP header lines, not a single string. Here's the general shape one follows, as an example only and not a working config:
GET / HTTP/1.1
Host: [zero-rated-host]
Connection: Keep-Alive
The Host value is swapped for whatever endpoint the config targets, and some payloads add extra headers on top of this. This is why a config built for one network's payload won't work on another: the header values only match what that specific network is set up to allow through.
Understanding HTTP Custom Settings
A few settings inside the app are worth understanding rather than leaving on default.
| Setting | What it controls |
|---|---|
| Payload | The custom HTTP header sent before the real request, used to get zero rated endpoints to carry general traffic |
| SNI | The server name presented during the SSL handshake, used to disguise the destination |
| DNS override | Replaces your carrier's default DNS resolver with one you specify, which can improve speed and reduce logging |
| VPN mode | Choose whether the tunnel covers your entire device or only selected apps, which helps conserve data |
| Lock server | Saves a config so it can't be edited accidentally, useful once you've found a stable setup |
Changing the DNS resolver is worth testing on its own even if your config otherwise works, since a slow default DNS server can make a fast tunnel feel sluggish for no reason related to the tunnel itself.
HTTP Custom vs Other Tunnel Apps
HTTP Custom isn't always the right pick. Here's when to reach for it and when another app on my full apps list serves you better.
Use HTTP Custom when:
- You want the fastest possible speeds and don't mind updating configs often
- Your network currently has an active, unpatched HTTP proxy endpoint
- You want to switch between SSH, SSL, and DNS tunneling without installing a second app
- You're comfortable building and testing your own configs
Switch to something else when:
- Your configs stop working within a day or two. Try Ha Tunnel Plus, which is harder for networks to patch.
- You want a simpler app with less setup involved. Ha Tunnel Plus or TLS Tunnel ask less of you.
- Your network has closed off HTTP proxy endpoints entirely. TLS Tunnel or Dark Tunnel handle that better.
- You're on an older or low end phone where HTTP Custom feels slow. HTTP Injector Lite is lighter on resources.
Common HTTP Custom Problems and Fixes
Config won't connect at all. The most common cause is a patched or expired config. Download a fresh one for your carrier and try again before checking anything else.
Connects, then drops after 10 to 20 minutes. This tends to happen with locked configs rather than direct input. Try switching to direct input of the server details instead of a locked file, or pull a newer upload.
Can't disconnect the VPN. Toggle mobile data off, then on, to force the connection closed. This is a known behavior in the app rather than something wrong with your config.
Battery drains faster than usual. Any always on tunnel VPN uses more battery than normal browsing. It's not specific to HTTP Custom, and there's no setting that fully eliminates it.
HTTP Custom Questions Answered
What file type does HTTP Custom use?
HTTP Custom uses .hc config files. Import one through the app's menu under Import Config.
Is HTTP Custom free?
The app itself is free. Some servers referenced in a config may require a login or premium access, depending on who set that server up.
Does HTTP Custom need root access?
No. It runs on unrooted Android devices from version 4.0.3 upward.
Is HTTP Custom available on iOS?
No. It's Android only, with no official iPhone version.
Why does my HTTP Custom config keep failing?
Networks patch HTTP proxy endpoints on a rolling basis, so a config that worked last week may simply be dead now. Pull a newer one rather than troubleshooting the old file.
Is it safe to import configs from random sources?
No. A config file directs your traffic to a specific server, so an untrustworthy one can intercept your data. Only use configs from sources you trust.
Can I use HTTP Custom on a network with no zero rated access?
Yes, through the SSH, SSL, or DNS tunnel types, though speeds will be lower than an active HTTP proxy endpoint.
Can HTTP Custom share its connection with other devices?
Yes, through hotspot or USB tethering, with the app providing the IP and port details needed to set that up.
I update the config list on my HTTP Custom page as new uploads come in, so check back if today's list doesn't have your network yet. Drop your questions in the comments below if something in this setup isn't working for you.