Free tools Windows power users keep installed
One-click scans. No signup required.
To add wkhtmltoimage to PATH: install wkhtmltopdf for your operating system, locate the executable with which wkhtmltoimage (Linux/macOS) or where wkhtmltoimage (Windows), add its containing directory to PATH, open a new shell or restart the service that runs your code, and verify with wkhtmltoimage --version. If a wrapper such as IMGKit still cannot find it, pass the executable’s absolute path in the wrapper configuration. Running that absolute command directly tells you whether the problem is executable discovery or rendering.
What wkhtmltoimage is and what “PATH” controls
wkhtmltoimage is the command-line HTML-to-image converter from the wkhtmltopdf project. Its invocation is:
wkhtmltoimage [OPTIONS]... <input file> <output file>
When you type wkhtmltoimage, the operating system searches each directory listed in the current process’s PATH variable. A shell may find the program while an IDE, web worker, scheduler, container, or service cannot, because those processes often receive a different environment. The project’s stable 0.12.6 series was released on June 11, 2020; package names and installation locations vary by distribution and installer.
Install wkhtmltoimage first
Windows
Install the Windows package from the wkhtmltopdf project. The executable is commonly under a directory such as C:Program Fileswkhtmltopdfbin, but confirm the actual location rather than assuming it. The installation also includes support files such as wkhtmltox.dll; applications using the shared library must be able to discover that DLL as well.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
#1 Best Overall
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
Linux
Use your distribution’s package manager or a wkhtmltopdf project Linux package appropriate for your distribution and architecture. Package-managed installations often place the binary in /usr/bin or /usr/local/bin. Confirm the installed path with the command below.
macOS
Install the macOS package supplied by the project, then locate the executable. Depending on the installer, it may be under /usr/local/bin, /opt/homebrew/bin, or another directory. Do not add a directory until you have verified that it contains an executable named wkhtmltoimage.
Find the executable and verify it
Linux and macOS
- Open the same user account and shell that will run the conversion.
- Run
which wkhtmltoimage. A successful result is an absolute path such as/opt/wkhtmltox/bin/wkhtmltoimage. - Run the returned path directly, for example
/opt/wkhtmltox/bin/wkhtmltoimage --version. - Confirm that the output reports a version instead of “command not found” or a permission error.
If which returns nothing, search the filesystem using your operating system’s file-search tools, then check that the candidate is executable. A common non-system installation can be exposed temporarily with:
export PATH="/opt/wkhtmltox/bin:$PATH"
Windows Command Prompt
- Open a new Command Prompt.
- Run
where wkhtmltoimage. - Run the returned path directly, for example
"C:Program Fileswkhtmltopdfbinwkhtmltoimage.exe" --version.
Windows PowerShell
Use Get-Command wkhtmltoimage or where.exe wkhtmltoimage to discover the executable. Quote paths containing spaces when invoking them.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteAdd the containing directory to PATH
Linux and macOS: current shell versus persistent configuration
For a test in the current shell, prepend the directory:
Rank #2
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
export PATH="/opt/wkhtmltox/bin:$PATH"
To make it persistent, add that export to the startup file actually used by the account, such as ~/.profile, ~/.bashrc, or the relevant Z shell profile. A noninteractive service may not read any of these files, so set PATH in the service definition, container image, CI runner, or process manager instead. Start a new shell after editing the file and run:
command -v wkhtmltoimage
wkhtmltoimage --version
Windows: user or system PATH
- Open System Properties and choose Advanced → Environment Variables.
- Under User variables (only your account) or System variables (all accounts), select Path and choose Edit.
- Add the directory containing
wkhtmltoimage.exe, not the executable filename itself. - Save every dialog.
- Close and reopen Command Prompt, PowerShell, your IDE, worker, or service. Existing processes retain the old PATH.
- Run
where wkhtmltoimageandwkhtmltoimage --versionagain.
If a PHP or another shared-library integration reports a missing wkhtmltox.dll, ensure the directory containing that DLL is discoverable through PATH and that its architecture matches the host process.
Use an absolute path with IMGKit and similar wrappers
PATH is convenient for interactive work, but an absolute path is usually more reliable for virtual environments, services, CI jobs, containers, and schedulers. IMGKit documents an explicit configuration option:
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemsconfig = imgkit.config(wkhtmltoimage='/opt/bin/wkhtmltoimage', xvfb='/opt/bin/xvfb-run')
imgkit.from_url('https://example.com', 'out.png', config=config)
Replace /opt/bin/wkhtmltoimage with the result from which or where. Keep the path in application configuration or an environment variable so deployments can change it without editing code. If your wrapper has separate settings for wkhtmltopdf and wkhtmltoimage, configure the image executable explicitly.
Rank #3
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
A diagnostic sequence that separates PATH errors from rendering errors
- Discover the binary with
which wkhtmltoimageorwhere wkhtmltoimage. - Run its absolute path with
--version. - Run a minimal conversion directly, for example
/opt/bin/wkhtmltoimage https://example.com test.png(quote a Windows path). - Compare the environment seen by the failing application with your terminal: print PATH from the service, IDE, worker, or container.
- Check execute permissions on Unix and executable/DLL architecture on Windows.
- Restart the process after every PATH change.
- If direct execution succeeds but the wrapper fails, configure the absolute path.
- If direct execution starts but conversion fails, investigate page loading, JavaScript, local files, or resource errors instead of PATH.
Important command-line options for runtime failures
| Option | Use | Example |
|---|---|---|
--version |
Confirm the executable starts and report its version. | wkhtmltoimage --version |
--help, --extended-help |
List supported options for the installed build. | wkhtmltoimage --extended-help |
--debug-javascript |
Show JavaScript diagnostics. | wkhtmltoimage --debug-javascript page.html out.png |
--log-level <level> |
Control diagnostic verbosity. | wkhtmltoimage --log-level info page.html out.png |
--enable-local-file-access |
Allow local resources when the document requires them. | wkhtmltoimage --enable-local-file-access page.html out.png |
--allow <path> |
Permit access to a narrowly specified local directory. | wkhtmltoimage --allow /srv/site/assets page.html out.png |
--load-error-handling abort|skip|ignore |
Choose behavior for failed page loads. | wkhtmltoimage --load-error-handling abort page.html out.png |
--enable-javascript / --disable-javascript |
Control script execution. | wkhtmltoimage --enable-javascript page.html out.png |
--javascript-delay <milliseconds> |
Wait for client-side rendering to finish. | wkhtmltoimage --javascript-delay 2000 page.html out.png |
Common errors and precise fixes
“command not found” or “No wkhtmltoimage executable found”
The failing process cannot see the binary directory. Locate it, add that directory to PATH, restart the process, or pass the absolute path to IMGKit. Do not add a file path where a directory is expected.
It works in a terminal but not in an IDE, service, or worker
The process inherited a different environment. Log or print PATH from inside the failing process, then set PATH in the service unit, task runner, container, or IDE launch configuration. Restart the process completely; reloading only application code may not refresh environment variables.
The binary is found but permission is denied
On Unix, inspect ownership and execute bits, then grant only the required execute permission. Also verify that the filesystem is not mounted with execution disabled. On Windows, check that security software has not quarantined the executable.
Images or CSS from local files are missing
Modern builds restrict local-file access unless enabled. Use --enable-local-file-access only when needed, or prefer --allow with the specific asset directory. Avoid granting broad filesystem access.
JavaScript content is incomplete
Confirm JavaScript is enabled, run with --debug-javascript, and add a measured --javascript-delay when the page populates asynchronously. A longer delay cannot fix a script error or an unreachable API; inspect the diagnostic output and network dependencies.
Rank #4
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
The command starts, then exits with a segmentation fault
This is a runtime problem, not PATH discovery. Run the exact command printed by the wrapper directly, capture its logs, and test the installed build against a minimal local page. IMGKit notes that some versions can fail this way; upgrading, changing the package build, or isolating the renderer may be necessary.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Windows reports a missing DLL or architecture mismatch
Ensure wkhtmltox.dll is discoverable, and that the executable, DLL, Python/runtime, and operating system all use compatible 32-bit or 64-bit architectures. Open a new shell after changing PATH.
Security and operational practices
The wkhtmltopdf project warns not to use its tools with untrusted HTML unless user-supplied HTML and JavaScript are sanitized; otherwise the renderer can enable a complete server takeover. Treat wkhtmltoimage the same way.
- Reject or sanitize untrusted HTML, CSS, and JavaScript before rendering.
- Run the renderer in a low-privilege account or isolated container.
- Use narrowly scoped
--allowdirectories instead of broad local-file access. - Restrict outbound network access when pages do not need it.
- Pin and document the installed version so upgrades are deliberate.
- Set conversion timeouts and resource limits in the calling service.
Choosing PATH or an explicit path
| Approach | Best for | Trade-off |
|---|---|---|
| Global or account PATH | Interactive commands and several applications on one host. | Every process must inherit the correct environment; upgrades can change the active binary. |
| Absolute application path | Services, CI, containers, virtual environments, and reproducible deployments. | Configuration must be updated when the binary moves. |
| Bundled or pinned binary | Teams needing predictable renderer behavior across hosts. | You own patching, packaging, and security review. |
Or skip the browser setup
If your goal is a reliable website screenshot rather than maintaining a local wkhtmltoimage installation, ScreenshotNeo provides a single HTTP request and also an MCP server for Claude, Cursor, and other MCP clients. It accepts consent banners before capture and removes more than 60 known consent platforms, newsletter popups, and chat widgets; bot checks, CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers identify the page verdict and billing status.
Using the API documented at https://screenshotneo.com/docs/:
Recommended Free Tools
cURL
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
Best Value
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
Python
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
Node.js
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
Features include full-page and element capture, device presets, custom viewport and retina scale, PDF output, custom CSS and JavaScript, selector waits, network-idle waits, request blocking, headers, cookies, authorization, geolocation, timezone, transparent backgrounds, resizing, chosen cache TTLs, signed links, asynchronous webhooks, bulk capture of up to 100 URLs per call, usage reporting, and an OpenAPI specification. Every feature is on every plan: 1,000 screenshots per month are free with no card; paid plans start at $5 for 3,000 screenshots. Create a free ScreenshotNeo account.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Frequently Asked Questions
Does changing PATH affect already running services?
No. A process keeps the environment it received at startup. Restart the service, worker, IDE, container, or scheduler after changing PATH.
Should PATH contain the executable or its folder?
Add the folder that contains wkhtmltoimage or wkhtmltoimage.exe. The command name is then resolved inside that folder.
How can I prove the wrapper is using the expected binary?
Run the absolute executable with --version, then configure that same absolute path in the wrapper and log the configuration at startup.
Is wkhtmltoimage safe for arbitrary user HTML?
No. Sanitize or reject untrusted HTML and JavaScript, isolate the renderer, and limit local-file and network access.
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.

