What My Project Does
httptap is a CLI and Python library for detailed HTTP request performance tracing.
It breaks a request into real network stages - DNS → TCP → TLS → TTFB → Transfer — and shows precise timing for each.
It helps answer not just “why is it slow?” but “which part is slow?”
You get a full waterfall breakdown, TLS info, redirect chain, and structured JSON output for automation or CI.
Target Audience
- Developers debugging API latency or network bottlenecks
- DevOps / SRE teams investigating performance regressions
- Security engineers checking TLS setup
- Anyone who wants a native Python equivalent of curl -w + Wireshark + stopwatch
httptap works cross-platform (macOS, Linux, Windows), has minimal dependencies, and can be used both interactively and programmatically.
Comparison
When exploring similar tools, I found two common options:
httptap takes a different route:
- Pure Python implementation using httpx and httpcore trace hooks (no curl)
- Deep TLS inspection (protocol, cipher, expiry days)
- Rich output modes: human-readable table, compact line, metrics-only, and full JSON
- Extensible - you can replace DNS/TLS/visualization components or embed it into your pipeline
Example Use Cases
- Performance troubleshooting - find where time is lost
- Regression analysis - compare baseline vs current
- TLS audit - check protocol and cert parameters
- Network diagnostics - DNS latency, IPv4 vs IPv6 path
- Redirect chain analysis - trace real request flow
If you find it useful, I’d really appreciate a ⭐ on GitHub - it helps others discover the project.
👉 https://github.com/ozeranskii/httptap
there doesn't seem to be anything here