VPN vs PAC modes

The two ways the app captures traffic — a system VPN tunnel or a Wi-Fi proxy (PAC) — when to use each, and a screen recording of the VPN toggle flow.

BusymateHelper captures traffic two ways — a system VPN tunnel or a Wi-Fi PAC proxy — and they're mutually exclusive: only one runs at a time. Both stream to the same dashboard; they differ in where capture happens and what they cover.

The two modes at a glance

VPNPAC
What it isAn on-device system tunnel (NEPacketTunnelProvider)Your Wi-Fi's auto-proxy pointed at a Busymate server
Where capture runsOn the device, in-processOn the Busymate proxy server
CoversAll traffic — Wi-Fi and cellularWi-Fi traffic only
Survives backgroundingYes (tunnel stays up)Yes (it's a Wi-Fi setting, not an app process)
BreakpointsSupported (on-device, in the tunnel extension)Supported (server-side, on the proxy)
VPNDeviceOn-devicetunnelInternetcapture herePACDeviceBusymateproxyInternetover Wi-Ficapture here

When to use each

Use VPN when:

  • You need to capture everything, including cellular and non-browser app traffic.
  • You're debugging on the go, away from a trusted Wi-Fi network.
  • You want capture without touching iOS network settings.

Use PAC when:

  • You're on Wi-Fi and only care about Wi-Fi traffic.
  • You want a lightweight path that keeps working reliably in the background.
  • You'd rather the heavy lifting (decryption, breakpoints, scripts) happen off-device, on the proxy server.

Breakpoints work in both modes. Pausing and editing a live request is no longer PAC-only — VPN mode runs the same breakpoint cycle inside the on-device tunnel extension. (See Inspect & breakpoints.)

What each looks like on the home screen

The big animated app icon is the live indicator: it spins while connecting, settles into a steady green ring when capture is on, and shows a VPN or PAC badge for the active path.

Below the device name, the home screen shows the controls for the currently selected mode:

VPN mode

A Status row with a toggle. Flip it on and you'll see a brief "Syncing…" then "Connected", and a VPN badge appears in the iOS status bar and Control Center — every request from then on, on Wi-Fi or cellular, streams to your dashboard. Flip it off to stop. While VPN is on, PAC can't be detected (iOS hides the Wi-Fi proxy config behind the tunnel), so the PAC status reads "Unavailable — VPN active."

This 50-second screen recording shows the whole VPN flow on a phone with no Wi-Fi — toggling Status on, the green Connected ring and the system VPN badge appearing, and capture running over cellular:

PAC mode

A grouped card showing the live Status and the URL for this device, of the form:

http://<port>.busymate.net

To activate it, point your Wi-Fi's proxy at that URL:

Settings → Wi-Fi → (your network) → Configure Proxy → Automatic

Paste the URL into the Auto field. Tapping the in-app Settings link pre-copies the URL to your clipboard, and the app's How to set up Wi-Fi PAC button walks you through it. The card's status flips to Active the moment iOS starts routing through it.

Tip: For the full step-by-step — certificate trust, the Configure Proxy flow, and a screen recording of the whole setup — see Set up Wi-Fi PAC.

Note: The PAC URL only becomes real after the device gets its assigned port from the server — usually a few seconds after pairing. Until then the URL shows <allocating> and the status reads "Waiting for port…".

Switching modes

The two modes are mutually exclusive and the app keeps them honest:

  • Turning VPN on disables the PAC controls; turning it off lets PAC be read again.
  • Configuring your Wi-Fi to point at this device's PAC URL automatically stops the VPN — the app detects the live PAC routing and steps the tunnel down.

The selected mode is also a per-device preference you can set from the dashboard's Devices tab; the home screen follows whatever's set, in real time.

Tip: For the exact reconciliation rules — how the app decides which mode "wins" and how presence is reported in each — see iOS connection modes and PAC presence.