k6 was created by Load Impact (later renamed k6) in Gothenburg, Sweden, and acquired by Grafana Labs in 2021. The tool was built to make load testing accessible to developers, not just performance specialists.
Traditional load testing tools often use XML configuration or custom DSLs that are hard to learn. k6 tests are written in JavaScript (or TypeScript), using a clean API that feels natural to any web developer. You define scenarios with virtual users, set ramp-up patterns, and write checks to validate responses. Tests run from the command line with a single binary — no JVM or external dependencies needed.
Under the hood, k6 is written in Go, which gives it excellent performance. A single machine can simulate thousands of virtual users with minimal resource consumption. The tool speaks HTTP/1.1, HTTP/2, WebSocket, and gRPC natively. Extensions written in Go can add support for other protocols like SQL, Kafka, and Redis.
k6 integrates naturally with CI/CD pipelines. You can set performance thresholds and fail the pipeline if response times exceed your SLA. Results can be sent to Grafana Cloud, InfluxDB, Prometheus, Datadog, or other observability platforms for analysis.
The Grafana Cloud k6 offering adds distributed load testing from multiple geographic locations, along with a web UI for managing and analyzing tests. The project has over 25,000 GitHub stars. It’s used by teams at GitLab, Microsoft, and Red Hat for everything from API performance testing to full browser-based load testing.