Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For most PHP apps, start with Spatie Browsershot: it offers a concise URL-to-image interface using Puppeteer and headless Chrome. Choose chrome-php/chrome if you want to control Chrome or Chromium more directly from PHP. Laravel apps that meet its current requirements can consider Spatie Laravel Screenshot for its driver interface. If you would rather not install and operate a browser runtime, ScreenshotNeo is the hosted API alternative.

Best PHP packages and services for URL screenshots

Option What it does Choose it when
ScreenshotNeo Hosted screenshot API and MCP server; one GET request returns an image or PDF. You want to avoid setting up a browser runtime, or want clean captures with explicit page and billing verdicts.
Spatie Browsershot PHP interface that uses Puppeteer to control headless Chrome. You want a fluent URL-to-image or PDF workflow and can deploy Node.js, Puppeteer, and Chrome.
chrome-php/chrome Direct PHP control of Chrome or Chromium. You need documented browser/page controls such as screenshot clips or full-page capture.
Spatie Laravel Screenshot Laravel-focused driver interface with Browsershot and Cloudflare Browser Rendering options. You are using a compatible Laravel application and want a driver abstraction.

A URL screenshot is rendered by a browser engine, not converted by PHP alone. A package choice therefore also determines how the browser is installed, configured, and operated. The options below are compared on documented features and requirements, not on benchmarked speed, reliability, or image fidelity.

Spatie Browsershot: the concise general-purpose choice

Browsershot uses Puppeteer to control headless Google Chrome. Its documented entry point can save a URL as an image, and it can also render provided HTML. It can return page HTML after JavaScript execution and report requests initiated by a page. See the Browsershot introduction for usage details.

At the research check on October 3, 2026, Packagist listed version 5.4.0, published May 26, 2026, with PHP ^8.2 and an MIT license. These are registry details for that release, not a guarantee about later versions. The package uses Puppeteer and headless Chrome; its README says Puppeteer must be installed for the test suite. Confirm the installation steps for your selected version.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Elebase USB to USB C Adapter for iPhone 18 Pro Max,USBC Car Charger Adapter
  • 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.

Useful capture controls

  • PNG is the documented default image output.
  • Full-page capture, device scale settings, and mobile or device emulation are documented.
  • You can wait for page state or a selector, and inject JavaScript or CSS.
  • Image manipulation uses the optional spatie/image dependency, version 3 or higher.

Browsershot is a strong fit when the application can run the required Node.js/Puppeteer and Chrome stack. Account for that runtime alongside PHP dependencies rather than treating Composer installation as the entire deployment.

chrome-php/chrome: direct control of Chrome from PHP

The project documents installing the library with Composer and using it to create a browser, navigate to a URL, wait for navigation, and save a screenshot. Its listed requirements are PHP 7.4–8.5 and an installed Chrome or Chromium executable version 65 or newer. The project says it is tested on Linux and compatible with macOS and Windows; validate your own operating system and deployment configuration.

Documented output and browser controls

  • Screenshot formats include PNG, JPEG, and WebP; JPEG and WebP quality can be set.
  • A clip can capture a selected page area.
  • Full-page capture is available using captureBeyondViewport with a full-page clip.
  • The library also exposes JavaScript evaluation, mouse and keyboard emulation, and PDF output.

Choose this library when those lower-level browser operations are useful or when you prefer not to use Browsershot’s Puppeteer layer. It still depends on an installed, compatible Chrome or Chromium executable.

Rank #2
Anker USB-C Hub, 5-in-1 USB Hub for Laptops, 4K HDMI Multiport Adapter
  • 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.

Spatie Laravel Screenshot: Laravel’s driver-based option

Spatie Laravel Screenshot is specifically for Laravel and documents a driver interface with Browsershot and Cloudflare Browser Rendering options. Its requirements page lists PHP 8.4 or later and Laravel 12 or later. Its Browsershot driver requires Node.js and a Chrome or Chromium binary; its Cloudflare driver uses Cloudflare’s Browser Rendering API. Check the package’s current requirements before adding it.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

This can suit a Laravel app that meets those requirements and benefits from choosing between the documented drivers. A hosted browser may reduce the need to operate a local browser, but assess the provider’s own operational, privacy, and cost terms; the package documentation does not establish those terms.

How to choose for your PHP application

Check PHP and framework compatibility

The versions documented at the October 3, 2026 research check differ: Browsershot 5.4.0 lists PHP ^8.2; chrome-php/chrome lists PHP 7.4–8.5; Laravel Screenshot lists PHP 8.4+ and Laravel 12+. Confirm constraints for the exact release you plan to install.

Rank #3
Sale
Anker USB C Hub, 7in1 Multi-Port USB Adapter, 4K@60Hz USBC to HDMI Splitter
  • 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.

Decide who operates the browser

Browsershot relies on Puppeteer and headless Chrome. The Laravel package’s Browsershot driver specifies Node.js plus Chrome or Chromium, while its Cloudflare driver uses a hosted browser-rendering API. chrome-php/chrome requires a local Chrome or Chromium executable. Include installation, configuration, updates, and runtime availability in your deployment decision.

Match the API to the capture controls you need

Browsershot documents full-page images, sizing, emulation, waits, and CSS/JavaScript injection. chrome-php/chrome documents output formats, clipping, full-page capture, and browser actions. Check the exact control against the version you use; a feature listed by a project is not a substitute for verifying its behavior on your pages.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose the integration style

Browsershot emphasizes a compact fluent interface; chrome-php/chrome exposes browser and page lifecycle operations; Laravel Screenshot adds a Laravel-oriented driver interface. These are differences in documented APIs, not measured claims about developer productivity.

Rank #4
Sale
UGREEN USB to USB C Adapter Combo 4-Pack, 10Gbps USB C Converter Space Gray
  • 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

ScreenshotNeo: a hosted alternative to installing Chrome

If you want a screenshot without deploying Puppeteer or a local Chrome executable, ScreenshotNeo offers a one-request API and an MCP server for AI agents. It accepts cookie or consent banners like a visitor and removes more than 60 known consent platforms, newsletter popups, and chat widgets before capture; each of those steps can be turned off. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers identify page verdict and billing status. Its MCP server provides take_screenshot, get_page_info, and capture_pdf tools for Claude, Cursor, and other MCP clients. All listed features are available on every plan.

One-call capture

Replace YOUR_API_KEY with your access key and the URL with the page you want to capture. The response is saved as an image; the documented API also supports PNG, JPEG, WebP, or PDF output. See the ScreenshotNeo API documentation for parameters 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 removes cookie banners, popups, and chat widgets before the shot; bot checks, blank pages, and failed loads are never billed; and its MCP server lets AI agents take screenshots. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Sign up for the free plan.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Deployment, performance, and reliability considerations

The reviewed package documentation establishes capabilities and runtime requirements, but not a comparative speed, reliability, or screenshot-fidelity winner. Rendering time and success depend on the target page and the environment as well as the library. Before choosing for production, test representative pages—including JavaScript-heavy pages, long pages, and pages with consent interfaces—using your actual deployment setup.

  • Verify that the browser executable and any required Node.js/Puppeteer components are installed where the PHP process runs.
  • Confirm the selected package’s PHP, framework, and browser requirements against the exact release and operating system.
  • Test how your chosen waits behave on pages that load dynamically; the documented availability of waits does not make every site’s load state identical.
  • Decide how your application handles navigation failures and incomplete pages, and monitor the resulting images rather than assuming a successful method call proves visual completeness.
  • For a hosted rendering service, separately evaluate its privacy, operational, and pricing terms; package driver documentation alone does not answer those questions.

Common setup problems and fixes

Chrome or Chromium executable is missing

Symptom: the package cannot launch a browser. Fix: install the required Chrome/Chromium binary in the runtime environment and configure the package to use its executable path if needed. For Browsershot, also verify its Puppeteer setup; for chrome-php/chrome, the project lists Chrome/Chromium 65+ as a requirement.

Best Value
Anker USB C Hub, 5-in-1 USBC to HDMI Splitter with 4K Display
  • 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.

Browsershot works locally but not on the server

Symptom: a local capture succeeds but deployment cannot render. Fix: compare the server’s PHP, Node.js, Puppeteer, and Chrome installation with the package’s requirements. Ensure the PHP worker can execute the browser and access its required files and resources.

The screenshot is blank or misses page content

Symptom: capture completes before client-rendered content or images appear. Fix: use the package’s documented wait options, such as waiting for a selector or page state in Browsershot, and test the target page’s actual rendering sequence. Full-page capture and image loading are separate concerns; confirm the desired content is present before saving.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A required control or format is unavailable

Symptom: a method or setting from an example is absent in the installed release. Fix: check the documentation for that exact version and verify whether the capability is supported by the selected library. The documented control sets differ between Browsershot and chrome-php/chrome.

Frequently Asked Questions

Do these PHP options provide comparative speed or reliability results?

No. The reviewed documentation describes features and requirements, not comparative performance or reliability benchmarks.

Can I use chrome-php/chrome without installing Chrome or Chromium?

No. Its documented requirements include an installed Chrome or Chromium executable.

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.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.