Load test your web applications using a modern and open source CLI tool
L

Load test your web applications using a modern and open source CLI tool

Load test your web applications using a modern and open source CLI tool

CLI
10,349 stars
N/A forks
N/A contributors

README

Project documentation from GitHub

Load Testing Without the Headache: Meet oha

Ever needed to throw some serious traffic at your web app to see how it holds up, but dreaded setting up a complex load testing tool? You're not alone. Many of the classic tools feel like they're from a different era of the web—heavy, complicated, or wrapped in a SaaS paywall. Sometimes you just want a simple, scriptable command to answer the question: "Will this endpoint buckle under pressure?"

Enter oha, a modern, open-source HTTP load testing tool built for the command line. It's like finding a power drill that's both incredibly effective and surprisingly pleasant to use. It’s fast, it’s straightforward, and it gives you the clarity you need without the noise.

What It Does

oha is a CLI tool written in Rust that generates a high volume of HTTP requests to a target URL. You give it a web address, tell it how many connections and requests you want, and it floods the target while meticulously reporting back on how things are going. It measures all the critical metrics: total requests, success rate, latency distribution, and requests per second.

Think of it as ab (ApacheBench) but with a significant upgrade in features, usability, and performance.

Why It's Cool

So why reach for oha over other tools? A few things make it stand out:

  • It's Seriously Fast: Being written in Rust and built on the async tokio runtime, oha itself has a tiny footprint and can generate a massive amount of load without breaking a sweat. This means the bottleneck is your application, not your testing tool.
  • Beautiful, Real-Time TUI: This is the killer feature for me. When you run a test, oha presents a clean, auto-refreshing terminal interface. You watch the requests-per-second counter climb, see the latency percentiles update live, and get an immediate visual sense of stability (or chaos). No more waiting for a final wall of text.
  • Practical Features Out of the Box: It includes things you immediately need: support for HTTP/1.1 and HTTP/2, the ability to set custom headers (great for auth tokens), a simple way to send a JSON body (-n for "no tui" mode is also handy for scripting).
  • Zero Fuss Installation: It's a single binary. Download it and run it. No dependencies, no runtime, no complicated setup.

How to Try It

Getting started takes about a minute. The easiest way is to grab the pre-built binary for your system from the GitHub Releases page.

For macOS users wi

Did you like this issue?

Join our weekly newsletter

Related Projects

Love discovering amazing projects?

Help us continue bringing you the best open-source discoveries every week.

Back to Projects
Last updated: Jan 14, 2026