Skip to content

iPhone HTTPS Capture Not Working? Why Some Requests Don't Show Up

Only seeing CONNECT, missing an app's traffic, or getting empty 304 responses? Fix certificate trust, SSL pinning, HTTP/3 and VPN conflicts.

3 min readHTTPS Capture

You started capturing on your iPhone, but the request you care about is missing, the body is unreadable, or an app suddenly stops working. Most of these problems come from a few well-understood causes. This checklist uses HTTPS Capture, but the reasons apply to every iPhone packet sniffer.

1. You only see CONNECT requests and no real URLs

The CA certificate is installed but not trusted. Go to Settings → General → About → Certificate Trust Settings and turn on the HTTPS Capture certificate. In the app, the MitM page should show all three setup steps as complete. If you regenerated or imported a CA, the old profile no longer matches. Remove it and trust the new one. Full steps: install and trust the CA certificate.

2. One particular app shows no decrypted traffic

That app most likely uses certificate pinning (SSL pinning). It only accepts its own server certificate, so no capture tool’s CA works with it. This is common in banking, payment and some social apps. To keep the app working, HTTPS Capture notices when an app rejects its certificate and passes that host through without decryption for a while. Breaking pinning would require modifying the app, which is outside what an App Store tool can do.

3. Apple services are missing

Traffic to Apple domains (iCloud, App Store, Apple push and so on) is skipped by default, because it’s rarely what you want to debug and much of it is pinned. To include it, turn on Capture Apple Domains in Settings. Pinned Apple hosts are still passed through automatically.

4. Some requests from Google, YouTube or other apps never appear

These are probably HTTP/3 (QUIC) connections. HTTP/3 runs over UDP rather than TCP. HTTPS Capture forwards it untouched, so those requests don’t appear in the HTTP list. Many apps use HTTP/2 when HTTP/3 is unavailable, so the same feature may show up on another network.

5. Response bodies are empty with status 304

The app already has the file cached and asked the server “has it changed?” The answer 304 Not Modified has no body. Turn on Anticache in Settings. It removes the If-None-Match and If-Modified-Since headers from requests, so servers send full responses. This applies to new requests right away.

6. Your other VPN disconnected

iOS runs only one VPN at a time, and HTTPS Capture uses the VPN slot to see traffic. If you need traffic to go through a company or home proxy while capturing, add it under Settings → Upstream Proxy. HTTP, HTTPS and SOCKS5 proxies are supported, with optional authentication, and you can choose a direct-connection fallback if the proxy fails.

7. An app hangs or a request never finishes

  • Check for an active breakpoint. A red paused-requests badge on the Capture tab means a request is waiting for you. See breakpoints.
  • Turn off rules you no longer need (Request Map, Rewrite, Scripts, Server Replay) or switch to a clean Profile.
  • If one service misbehaves only while captured, try turning off HTTP/2 MITM in Settings to fall back to HTTP/1.1.

8. Requests are captured but not listed

  • A URL Filter whitelist may be on. Then only matching URLs are recorded, and everything else is still forwarded but not saved.
  • The list’s own filter (method, status, content type, duration) may be hiding rows. Clear it with the filter button.

9. DNS queries are not shown

DNS logging is off by default. Turn on DNS Capture in Settings and restart capture. See view DNS queries on iPhone.

Still stuck?

Stop and start capture again. If the problem continues, send feedback from Settings and describe the app and steps involved.

HTTPS Capture

Capture and decrypt HTTPS traffic on iPhone

App Store

Ready to try it?

HTTPS Capture · Capture and decrypt HTTPS traffic on iPhone

Free on the App Store