Website load test with k6

Find out how your server holds up when many people visit at once. The load test uses k6 to send 10 to 100 virtual users to your page for 30 to 120 seconds and reports response times, the error rate and how steady the server stays under load. Because it sends real traffic to your server, it runs only on domains you have verified, and it is part of our paid plans (from $5 for a 1-day pass).

For verified site owners. This test sends heavy traffic to your server, so it runs only on domains you have verified, as part of paid plans (from $5 for a 1-day pass). Sign in, open Domains, add your site and verify it with a DNS TXT record or a small verification file uploaded to your site's root folder. Sign in or create a free account, then verify your domain under Dashboard → Domains.

What this test checks

95th percentile response time

The response time that 95% of requests beat, which shows what your slowest visitors experience under load.

Error rate under load

The share of requests that time out or return an HTTP 4xx or 5xx status during the test.

Consistency

The 90th percentile compared with the average response time; a wide gap points to queueing or contention on the server.

Throughput

Total requests and requests per second served during the test.

Median and slowest response

The typical (median) response time and the single slowest response.

Test intensity

Whether the test was heavy enough to be representative: at least 50 users for at least 45 seconds.

How it works

  1. k6 runs on our test server in Virginia, USA: each virtual user requests your page, waits a random 3 to 10 seconds like a real visitor, and repeats.
  2. You choose 10–100 virtual users and a duration of 30–120 seconds; the defaults are 50 users for 45 seconds.
  3. Only the page's HTML is requested, not its images, CSS or JavaScript, with a 30-second timeout. Redirects are not followed, so every request stays on your verified host; test the final address of the page.
  4. Your domain is resolved once at the start and pinned to that public IP address, so DNS cannot switch the target to an internal host mid-test.
  5. Requests use the user agent WebPSQC-LoadTest/3.0, so you can find them in your server logs.

How it is scored

The score uses our item-weighted formula: a pass earns full credit, a warning half and a fail none, with p95 response time and error rate weighted 3×, consistency 2× and test intensity 1×. Grades follow our scale: A+ 95+, A 90+, B 80+, C 70+, D 60+, F below 60.

CheckGoodNeeds workPoor
95th percentile response time1 s or less1–2 sOver 2 s
Error rate0.1% or less0.1–1%Over 1%
Consistency (p90 ÷ average)2× or less2–3.2×Over 3.2×
Test intensity50+ users for 45+ seconds30+ users, but lighter or shorterUnder 30 users

Grades: A+ 95–100 · A 90–94 · B 80–89 · C 70–79 · D 60–69 · F below 60.

FAQ

How many concurrent users can my website handle?
Run the load test at increasing levels, for example 25, 50 and then 100 virtual users, and watch the 95th percentile response time and the error rate. The level at which p95 climbs past 1–2 seconds or errors pass 1% is roughly the current limit for that page. Each virtual user pauses 3–10 seconds between requests, like a person reading.
Is it safe to run a load test on my live website?
The test sends real traffic, up to 100 virtual users for up to 2 minutes, so run it when a short burst of extra load is acceptable. Only the HTML of one URL is requested, and the requests stop when the time is up. Because of this traffic, the test only runs on domains you have verified.
Will the load test show up in Google Analytics?
Usually not. k6 sends plain HTTP requests and does not run JavaScript, so tag-based analytics such as Google Analytics do not record the visits. Server logs and CDN analytics will show them with the user agent WebPSQC-LoadTest/3.0.
Why do I get errors during the load test?
Errors are timeouts or HTTP 4xx and 5xx responses. Common causes are too few PHP or application workers, exhausted database connections, and firewall, WAF or CDN rate limits that block many requests from one IP address. Check your server logs for the test window, then raise limits or allow the test's user agent if needed.
Do I need a paid plan for the load test?
Yes. Load tests and security scans are part of paid plans, from $5 for a 1-day pass, and they run only on domains you have verified. The other tests on Web-PSQC stay free.