Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minuteSelenium Grid 4 runs WebDriver tests on remote browser instances, so a test suite can run in parallel across machines and browser or operating-system combinations. For a first setup, run Grid in Standalone mode on one machine; move to Hub/Node when you need browser capacity across multiple machines. A session runs only when its requested capabilities match a browser slot registered in the Grid.
What Selenium Grid does
Grid routes WebDriver commands from a client to remote browser instances. It is useful when you need concurrent test sessions, or need to exercise a site on different browsers or operating systems without running every browser locally. Grid distributes execution; it does not make a test suite parallel by itself. Your test runner must submit independent WebDriver sessions concurrently.
The basic flow is: a client requests a session with browser capabilities; the Router receives the request; the New Session Queue holds it until it can be served; the Distributor finds a matching available slot; a Node starts and runs the browser session; and the Session Map keeps track of the session ID and its Node so later commands reach the right browser. See Selenium’s Grid architecture documentation for the component model. That page was last modified in 2022, so check it against the Grid release you deploy.
Choose a deployment mode
| Mode | Use it when | Trade-off |
|---|---|---|
| Standalone | You need a simple Grid on one machine for development, evaluation, or a small test workload. | Grid and browser capacity are on the same machine; it does not distribute execution across separate hosts. |
| Hub/Node | You need one Grid entry point connected to browser Nodes on multiple machines, potentially with different operating systems or browser versions. | You must start and operate the Hub and register Nodes, then ensure requested capabilities match their slots. |
| Separate components or containerized Nodes | You need a more distributed deployment or want small Nodes that can be isolated and managed as containers. | More deployment and operations decisions are required. Selenium recommends Docker as one way to run smaller Nodes and isolate failures. |
Choose based on the browser and OS combinations you must test, the number of simultaneous sessions your test runner will request, the machines and resources available, and how much operational complexity your team can support. There is no universal best topology.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
#1 Best Overall
Prerequisites
Selenium’s official Grid getting-started guide lists Java 11 or higher, installed browsers, browser drivers, and the Selenium Server JAR. Selenium Manager can configure drivers when it is enabled with --selenium-manager true. Use a Selenium Server JAR version that matches the Grid release you intend to run; the command below uses a version placeholder because the correct current filename depends on the release you download.
- Install Java 11 or newer and confirm it is on your PATH with
java -version. - Install the browsers the Grid should provide. In a multi-machine Grid, install the required browsers on the corresponding Nodes.
- Download the Selenium Server JAR for the release you plan to use.
- Install compatible browser drivers, or enable Selenium Manager as documented for your version.
Start a local Standalone Grid
- Open a terminal in the directory containing the Selenium Server JAR.
- Start Grid:
java -jar selenium-server-<version>.jar standalone. - Keep the process running. Open http://localhost:4444 to view the Grid UI.
- Configure your WebDriver client to use
http://localhost:4444as the remote Grid endpoint and request a browser capability available on that machine.
For example, the following Python client starts a remote Chrome session. It assumes the Selenium Python package is installed and that the local Grid has a Chrome slot available:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
driver = webdriver.Remote(
command_executor="http://localhost:4444",
options=options,
)
try:
driver.get("https://example.com")
print(driver.title)
finally:
driver.quit()
The client must close each session with quit(), including after a test failure, so the browser slot is released for subsequent work.
Rank #2
Connect multiple machines with Hub and Nodes
For a multi-machine arrangement, start a Hub as the central entry point, then start a Node on each machine that will provide browser capacity. The official quick-start documentation describes this Hub/Node pattern and the option to run Grid components separately for more distributed deployments. Exact command-line options can vary with the Selenium Server version, so use the official getting-started steps for the version you are installing rather than copying a command from a different release.
- Choose and install the Selenium Server release on the Hub and Nodes.
- Start the Hub using the documented command for that release.
- Start each Node with its browser and driver available, and configure it to register with the Hub address.
- Check the Grid UI and confirm that the expected browser slots appear.
- Point WebDriver clients at the Hub endpoint, not an individual Node, and request capabilities that correspond to registered slots.
The Hub is the client-facing entry point; Nodes provide execution capacity. A request cannot be assigned merely because a Node is online: the Distributor needs a slot matching the request’s browser and other requested capabilities.
Run tests in parallel and match capabilities
Grid can serve multiple sessions when matching slots are available. To obtain parallel execution, configure your test runner to run independent tests concurrently and connect each worker to the Grid. Set the runner’s worker count in line with measured Grid capacity; asking for more sessions than available matching slots causes requests to wait in the New Session Queue rather than creating capacity.
Rank #3
Keep browser capabilities aligned with what is registered on the Grid. If you request a browser or platform combination no Node can provide, the request cannot be assigned. Start with the browser name and platform requirements your Nodes actually support, then add only capabilities needed by the test. Grid architecture and matching behavior are described in Selenium’s architecture documentation.
Plan capacity by measuring your workload
Selenium’s setup guide offers planning guidance, not a performance guarantee or benchmark. It says to expect around 1 GB of RAM per browser session, that a Node’s default maximum concurrent sessions is based on its CPU count, and that Safari is limited to one concurrent session per Node. The guide gives no publication year for these figures. Actual resource use and useful concurrency depend on your browser mix, test workload, and host, so measure rather than treating defaults as targets.
Free tools Windows power users keep installed
One-click scans. No signup required.
- Begin with a small number of concurrent sessions and observe CPU, memory, session creation, and test completion under representative tests.
- Increase concurrency in controlled steps, watching for resource pressure, slow session creation, or unstable tests.
- Use small Nodes where practical to isolate failures; Selenium identifies Docker as a useful way to run smaller Nodes.
- Revisit Node concurrency and runner worker counts when browsers, tests, or host resources change.
Docker, Kubernetes, and version-specific options
Selenium’s getting-started guide recommends Docker as a way to run smaller Nodes and isolate failures. The CLI reference documents mappings from Docker and Kubernetes image names to browser stereotypes, but warns that its option list could be outdated if options change before the documentation does. Verify flags and configuration against the version you deploy.
Rank #4
A Selenium release article dated February 22, 2026 describes Dynamic Grid support in Kubernetes for Grid 4.41.0: browser Pods are created for session requests and removed when sessions close. Treat this as release-specific functionality, not a promise that every Grid version or Kubernetes configuration supports it. Check the Selenium 4.41.0 release article and current documentation before adopting that setup.
Protect and operate the Grid
Selenium warns that an exposed Grid can let third parties access internal web applications and files or run custom binaries. Do not make the Grid endpoint reachable beyond its intended users without appropriate network restrictions. Apply access controls suited to your environment, such as limiting which networks or hosts can connect, and avoid exposing an unauthenticated Grid directly to the public internet.
When a session fails, use the Grid’s observability facilities and logs to understand what happened across the deployed components. Selenium’s observability documentation explains how observability can help operators understand and debug Grid internals. The useful diagnostic evidence depends on which components you run, the logs you retain, and the test workload.
Best Value
Troubleshoot common setup problems
| Symptom | Likely cause | What to check |
|---|---|---|
| Server will not start | Java is missing or older than the documented Java 11 prerequisite, or the JAR path/name is wrong. | Run java -version, confirm the downloaded JAR filename, and run the command from the correct directory. |
| Browser session cannot be created | The browser or driver is missing, driver setup is unavailable, or a requested capability has no matching slot. | Confirm browser installation and driver configuration on the relevant machine; check the Grid UI for registered slots; align client capabilities to them. |
| Node does not appear in the Grid | The Node cannot reach the Hub or is configured with the wrong Hub address or version-specific options. | Check network reachability and the Node’s startup output, then compare its registration configuration with documentation for the deployed release. |
| Tests wait for sessions | All matching slots are occupied, or no free slot satisfies the requested capabilities. | Inspect active sessions and available slots, reduce runner concurrency, or add capacity with the required browser configuration. |
| Sessions become slow or unstable under load | Concurrency may exceed what the host can support for the actual workload. | Measure CPU and RAM during representative runs; reduce concurrent sessions or distribute work across additional appropriately configured Nodes. |
| Grid is unreachable from a client | The client is using the wrong endpoint, the Grid process is stopped, or network controls prevent the connection. | Confirm the Hub or Standalone process is running, use the intended endpoint, and check connectivity from the client host. |
Or skip the browser setup
If the job is to capture a website rather than run browser automation tests, ScreenshotNeo is a website screenshot API and MCP server. A single GET request returns a PNG, JPEG, WebP, or PDF; its clean-shot steps can accept consent banners and remove more than 60 known consent platforms, newsletter popups, and chat widgets. Those steps can each be turned off. Bot checks and CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and responses report page verdict and billing status in headers. Its MCP server provides take_screenshot, get_page_info, and capture_pdf for Claude, Cursor, and other MCP clients.
For a direct capture, create an API key and use the documented endpoint; see the ScreenshotNeo API documentation for options and response details.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
ScreenshotNeo includes 1,000 screenshots a month free with no card; paid plans start at $5 for 3,000 shots. That is a screenshot service, not a replacement for Grid’s multi-browser WebDriver test orchestration. Sign up free for 1,000 screenshots a month, with no card required.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Clear out junk files and repair common Windows errorsFree Scan →




