Website | Source

k6 is a modern load-testing tool, built on our years of experience in the performance and testing industries. It's built to be powerful, extensible, and full-featured. The key design goal is to provide the best developer experience.

Its core features are:

This is what load testing looks like in the 21st century.

Example script

    import http from "k6/http";
    import { check, sleep } from "k6";

    // Test configuration
    export const options = {
      thresholds: {
        // Assert that 99% of requests finish within 3000ms.
        http_req_duration: ["p(99) < 3000"],
      },
      // Ramp the number of virtual users up and down
      stages: [
        { duration: "30s", target: 15 },
        { duration: "1m", target: 15 },
        { duration: "20s", target: 0 },
      ],
    };

    // Simulated user behavior
    export default function () {
      let res = http.get("https://quickpizza.grafana.com");
      // Validate response status
      check(res, { "status was 200": (r) => r.status == 200 });
      sleep(1);
    }

You can run scripts like this on the CLI, or in your CI, or across a Kubernetes cluster.


Tags: tool   testing   load testing   ecmascript  

Last modified 11 September 2026