Key takeaways
- LoadFocus and JMeter are not rivals: LoadFocus runs your existing JMeter test plan (.jmx) on cloud machines, so the real question is where the same script should run.
- JMeter is free open-source software. What you pay for is the machines, the setup and the time of whoever runs distributed tests.
- Run JMeter yourself when you need full control or a protocol your cloud setup does not cover. Run it through LoadFocus when the limit is load generators, regions or sharing results.
- Decide by who will run the tests routinely and how much load they need, not by a feature checklist.
LoadFocus vs JMeter: what is the difference?
Apache JMeter is an open-source load testing application. LoadFocus is a cloud platform that runs JMeter scripts (and k6 scripts) from its own load generators. That makes this an enterprise load testing decision about where one script runs, not a choice between two engines: the same .jmx file can run on your laptop, on your own servers or from the LoadFocus cloud. The sections below say what JMeter documents, what LoadFocus documents on its own pages, and where each fits. Facts were read from jmeter.apache.org and loadfocus.com on 2026-10-23.
Side-by-side comparison
| Question | Apache JMeter (self-run) | LoadFocus (JMeter in the cloud) |
|---|---|---|
| What is it? | Open-source Java application, current release 5.6.3, requires Java 8 or later | Cloud testing platform that runs JMeter and k6 scripts and has no-code tests |
| Your script | A .jmx test plan | The same .jmx, uploaded; you set virtual users, duration and ramp-up in the browser without editing it |
| Where the load comes from | Machines you provide | Load generators LoadFocus starts for each run and shuts down afterwards, in 25 cloud regions |
| Going beyond one machine | Distributed mode: a controller drives remote JMeter servers over RMI; each server runs the full plan | Distributed execution is managed for you; no controller or firewall setup |
| Protocols | HTTP(S), SOAP/REST, FTP, JDBC, LDAP, JMS, mail, TCP, native commands and more | HTTP, JDBC, JMS, MQTT and gRPC for JMeter tests, per the JMeter product page |
| Results | CSV/JTL files and a generated HTML dashboard | Live charts during the run, pass/fail thresholds, trends across runs, AI analysis of finished tests |
| CI/CD | Run in CLI mode from any pipeline | GitHub Action, Jenkins plugin and a verdict API |
| Cost | No licence | Free plan plus paid plans (see loadfocus.com/pricing) |
What Apache JMeter gives you
JMeter’s own site describes a full test IDE for recording, building and debugging a plan, a CLI mode for running it, and a “complete and ready to present dynamic HTML report”. It lists protocol support for web (HTTP, HTTPS), SOAP and REST web services, FTP, databases through JDBC, LDAP, JMS message queues, mail (SMTP, POP3, IMAP), TCP, native commands and Java objects. It is open-source software under the Apache licence and needs Java 8 or later.
Two practices from the manual matter at enterprise scale. First, the user manual says to run load tests in CLI (non-GUI) mode, not from the GUI, which is for building and debugging. A typical run is jmeter -n -t plan.jmx -l results.jtl -e -o report/, where -e -o generates the dashboard (the output folder must be empty or not exist yet). Second, the HTML dashboard includes an APDEX table, a statistics table with three configurable percentiles (90, 95 and 99 by default), an error table and charts for response times, active threads, throughput and response codes. There is more in the post on starting JMeter in non-GUI mode.
Scaling JMeter yourself
Distributed testing is built in, but you operate it. A JMeter client (controller) can drive any number of remote JMeter servers, and it sends the test plan to all of them. The manual lists the conditions: every node runs exactly the same JMeter version and should use the same Java version, data files such as CSVs are not sent and must exist on each server, nodes need a keystore for RMI over SSL (or SSL disabled), and the client needs the right ports open in both directions because RMI also makes a reverse connection to return results. If many servers are used, the client itself can become overloaded.
The manual also states that JMeter does not split the load between servers: each one runs the full plan. Set 1,000 threads on 6 servers and you inject 6,000. This is the arithmetic to check before every distributed run. For a hands-on walk-through see running a JMeter distributed test in the cloud, and how many threads one machine can run. That second post is from 2013 and its figures are for the hardware of the time: measure your own machine.
Running the same script on LoadFocus
The LoadFocus JMeter page describes the flow: upload an existing .jmx file, set virtual users, duration and ramp-up for each run without editing the script, and LoadFocus provisions load generators, distributes the threads across them, streams results back during the run and shuts the machines down at the end. It states that thread groups, timers, assertions, JSR223 samplers and plugins run as they do locally, that CSV data files can be uploaded, and that the script’s think times and pacing are kept. Regions are chosen per test; on the Pro and Enterprise plans you also choose each region’s share of the users (the page’s example is 60% Europe, 40% US East).
Limits come from the plan. The free plan runs up to 10 virtual users for 60 seconds; paid plans scale from 250 up to 20,000 concurrent virtual users per test; the Enterprise plan runs up to 20,000 users for up to 5 hours with up to 20 tests in parallel (loadfocus.com/jmeter-load-testing and /pricing, 2026-10-23). Take the current prices from the pricing page.
Because the page says plugins run as they do locally, the safe approach is still to run your own script once at low load first. LoadFocus also offers a JMeter script validator among its free tools, and an AI test generator that builds JMeter or k6 scripts from a plain-English description.
Reporting and CI/CD
JMeter writes raw results and can turn them into the HTML dashboard described above. That suits teams that keep results in their own pipeline, and any BI tool can read a JTL/CSV file.
On LoadFocus, results are shown live during the run, with response time, latency, hits and throughput per second, standard deviation and the 50th, 90th and 99th percentiles. Error and response-code charts show when errors occurred and how many virtual users were active at that moment. You can set per-test thresholds on maximum P95 and P99 response time, maximum error rate and minimum throughput, and each finished run gets a pass or fail. A Trend tab plots P95, error rate and throughput across runs. Any finished test can get an AI analysis (3 a month on the free plan; the paid plans have more), and paid plans export a printable report.
For pipelines, the product page lists a GitHub Action that fails a deploy when a threshold is breached, a verdict API and a Jenkins plugin that can mark builds unstable or failed. A self-run JMeter fits any CI system too, because CLI mode is just a command: you build the report, the pass/fail rule and the artifact storage yourself.
Where self-run JMeter is the better choice
Be plain about it: running JMeter yourself is the better fit in several cases.
- The system under test is only reachable inside your network. Cloud load generators come from the internet, so a private service needs your own generators.
- You need a protocol or sampler outside the list on the LoadFocus JMeter page. JMeter’s own list is broader, and a custom plugin you wrote may not exist in the cloud.
- You want zero per-run cost and have spare machines and someone who maintains them.
- You want to debug a script. Build and debug in the JMeter GUI at one or a few users either way.
Where a managed cloud run helps
- The limit is the load generator. If one machine cannot produce the load, the alternative to hand-building distributed mode is uploading the script and choosing a user count.
- You need traffic from several regions in one test, with a chosen split.
- Non-authors need to read results. Shareable results, thresholds and a verdict API are easier to hand around than a JTL file.
- You want load tests to gate a release without running generator machines between releases.
Decision checklist for enterprise teams
- Is the target reachable from the public internet? If not, plan your own generators.
- Does the script use anything outside standard samplers and the protocols above? Test it on the cloud at low load before deciding.
- What peak load do you need, and for how long? Compare it with the limits on the pricing page, and with what your own machines can generate.
- Who reads the results: only the engineers, or product and management too?
- Who maintains the generator machines, Java versions and plugin versions if you self-host?
Many enterprises end up with both: scripts are written and debugged locally in JMeter, and the large or multi-region runs go through the cloud. That works well because the script does not change. The wider tool choice is covered in open source vs commercial load testing tools, and k6 vs JMeter compares the two scripting approaches.
Frequently Asked Questions
Is LoadFocus a replacement for JMeter?
No. LoadFocus runs JMeter scripts, so you keep writing them in JMeter. The platform adds cloud load generators, region selection and result tooling around the same .jmx file. It also runs k6 scripts and no-code tests.
Can LoadFocus run my existing JMeter scripts?
Yes. You upload the .jmx file and set virtual users, duration and ramp-up in the browser. The JMeter page says plugins and standard elements run as they do locally; run the script once at low load to confirm yours behaves the same.
Is JMeter free?
Yes. Apache JMeter is open-source software and has no licence fee. The costs are the machines that generate the load, the Java and plugin maintenance, and the engineering time to run distributed tests.
Which Java version does JMeter need?
Java 8 or later, according to the JMeter manual. The current release on the download page is 5.6.3.
What are the limits of running JMeter on a single machine?
They depend on the script, the heap size and the hardware, so there is no fixed number. LoadFocus’s own page says local JMeter “caps out at a few hundred threads”, which is a rough guide only. Measure your own machine with a realistic script.
How does distributed JMeter work?
One JMeter client controls several remote JMeter servers and sends them the test plan. Each server runs the full plan, so thread counts multiply: 1,000 threads on 6 servers is 6,000 threads. All nodes need the same JMeter version.
Sources
- Apache JMeter home page and user manual: jmeter.apache.org, pages “Getting started”, “Remote testing” and “Generating dashboard” (read 2026-10-23); release 5.6.3 on jmeter.apache.org/download_jmeter.cgi (2026-10-23)
- LoadFocus product pages: loadfocus.com/load-testing, loadfocus.com/jmeter-load-testing, loadfocus.com/pricing and loadfocus.com/index.md (read 2026-10-23)