Load Testing with Multiple Cloud Region Traffic Simulation
Simulate real users from 25+ AWS regions in one load test and compare response times by location. Runs in the LoadFocus cloud, no scripts needed.
Load test from several regions at once
One load generator in one data centre measures your server plus one network path. Real traffic comes from many places, and the slow requests are usually the ones that cross an ocean, miss the CDN, or hit a region your auto-scaling forgot. This template runs the same test from several LoadFocus cloud regions at the same time and shows response time and error rate per region, so you can see whether a slow p95 is your application or your geography.
Configuration
| Setting | Value | Why |
|---|---|---|
| Virtual users | 500 total, split across regions | Enough to expose a per-region bottleneck without needing the biggest plan. Raise it for the real capacity run. |
| Duration | 10 minutes | Long enough for auto-scaling and caches to react; the first two minutes are ramp-up. |
| Ramp-up | 120 s in 6 steps | Adds about 83 users every 20 seconds so you can read where the response-time curve bends. |
| Regions | 3 to 5, one per continent you serve | Pick the regions where your users actually are (GSC or analytics tells you); add one you do not serve as a control. |
| Requests | Your 3 to 5 most visited URLs | Home, a category or search page, one API call, one asset served by the CDN. Skip login flows on the first run. |
| Think time | 1 to 3 s between requests | Without it the test measures your server, not your users. |
Run this templateOpens the cloud test form with these values filled in. Free plan runs it at the free user limit; sign in or create a free account first.
The button prefills virtual users, duration and ramp-up on the cloud test form. Add your URLs, then pick the regions in the location selector (multi-region runs need a paid plan; the free plan runs from one region).
What to read in the results
- Response time by location. The Overview tab lets you switch between combined and per-location numbers. A region that is 300 ms slower at 10 users and 2 s slower at 400 is a network or CDN problem; one that matches the others until the ramp finishes and then diverges is a regional capacity problem.
- Error rate by status code. 5xx that only appears in one region points at a regional dependency (a single-region database, a rate limiter in front of one edge). 429s everywhere mean your CDN or WAF is throttling the test, not your origin.
- Throughput plateau. When adding users stops adding requests per second, you have found the ceiling for that region.
Pass/fail thresholds for this template
| Threshold | Target | What a breach means |
|---|---|---|
| p95 response time | < 800 ms | A user-facing page is starting to feel slow in at least one region. |
| Error rate | < 1% | Something breaks under load; check whether the errors cluster in one region. |
| Throughput | > 80% of the single-region run | A multi-region run should not lose throughput; if it does, a shared dependency is saturating. |
Set these on the test once and every run gets a PASS or FAIL verdict; the same verdict is available to CI through the API and the GitHub Action.
The same scenario as a k6 script
If you prefer scripts, upload this to a k6 cloud test. Regions are chosen in the LoadFocus UI, not in the script, so the script only describes the load shape.
import http from 'k6/http';
import { check, sleep } from 'k6';
export const options = {
stages: [
{ duration: '2m', target: 500 }, // ramp-up
{ duration: '8m', target: 500 }, // hold
],
thresholds: {
http_req_duration: ['p(95)<800'],
http_req_failed: ['rate<0.01'],
},
};
const pages = ['/', '/search?q=shoes', '/api/products?limit=20', '/static/app.css'];
export default function () {
const url = 'https://www.example.com' + pages[Math.floor(Math.random() * pages.length)];
const res = http.get(url);
check(res, { 'status is 200': (r) => r.status === 200 });
sleep(1 + Math.random() * 2);
}When to run it
- Before a launch or campaign that will bring traffic from a new market.
- After adding or moving a CDN, a region, or a database replica.
- On a schedule (weekly is enough) so a regional regression shows up as a red run in the Trend tab, not in support tickets.
FAQ on multi-region load testing
How many regions should I use?
Start with three: your two biggest markets and one you do not serve, as a control. Add more once the first run shows a clear difference between regions.
Does the free plan run multi-region tests?
The free plan runs from one region at a reduced user count. Multi-region runs and the 500-user configuration above need a paid plan.
Why is one region slower even at low load?
That is latency and routing, not capacity: distance to your origin, a CDN cache miss, or DNS pointing that region at a far-away endpoint. It shows up at 1 user and stays roughly constant as load grows.
Can I weight the traffic per region?
Yes. On paid plans the location selector lets you split the virtual users by percentage, for example 60% US, 30% EU, 10% APAC, to mirror your real audience.
How fast is your website?
Elevate its speed and SEO seamlessly with our Free Speed Test.Outgrown your testing tools?
Load test websites and APIs from 25+ cloud regions, monitor page speed and uptime, and get AI analysis that explains your results in plain English.Start for free→