To compare staging with production in BackstopJS, set each scenario’s url to the staging page and its referenceUrl to the matching production page. Run backstop reference to capture production, then backstop test to compare staging against those screenshots. Review the visual report before approving any intentional changes.
Set up BackstopJS for a production-to-staging comparison
BackstopJS captures pages in a browser and compares the resulting images. In this workflow, production supplies the baseline; staging is the environment being tested. The project README documents backstop init as the setup step and describes the reference, test, and approval commands. See the BackstopJS project README for version-specific details.
- Install BackstopJS in your project, or use the existing project installation.
- Run
backstop initto initialize its configuration if the project does not already have one. - Define scenarios for the routes you need to check. Give each scenario a stable label, a staging
url, and a productionreferenceUrl. - Specify at least one viewport for each scenario, then choose whether to capture the whole document, the viewport, or a specific element.
- Run
backstop referenceto capture the production pages, followed bybackstop testto capture and compare the staging pages. - Inspect the report. If a difference is intentional and accepted, run
backstop approveto make the latest test captures the new reference baseline.
Configure scenarios and capture scope
Use the correct URL for each environment
In a scenario, url is the page BackstopJS captures during testing. referenceUrl is the corresponding page used when backstop reference creates or refreshes the baseline. For example, the staging and production URLs should represent the same route, not two unrelated pages. Keep scenario labels stable and descriptive so reports and screenshot filenames remain easy to identify.
Choose what each scenario captures
Match capture scope to the risk you want to detect:
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →#1 Best Overall
- Website Testing Software Developer Website Tester. This Quality Assurance: My Superpower is for men and women into website testing. Great for a website tester who test and evaluate websites or web applications.
- Are you a software developer in programming? Are you a web tester who ensure websites functionality? Then this website testing design is for you. Ideal website tester apparel for a computer programmer.
- Lightweight, form-fitting laptop sleeve that protects your laptop from daily wear and tear
- Faux fur-lined interior and padded zipper binding prevent scratches while keeping your device secure with a top-loading zippered enclosure and two sliders
- Designed for on-the-go use with a slim profile that easily slides into backpacks, totes, and carry-on bags
documentcaptures the whole page, useful when changes may affect content below the fold.viewportcaptures the currently visible area at the configured viewport.- An element selector limits capture to a component or region, useful when the check is intentionally local.
Choose viewports that reflect the layouts you need to verify. Routes, viewports, and capture scope are coverage decisions; no single configuration fits every site.
Refresh baselines without hiding real regressions
After backstop test, review the visual report and determine whether each difference is expected. A changed baseline is not proof that staging is correct: it only changes what later runs compare against. Approving promotes the latest test captures into the reference collection. The BackstopJS README describes this behavior as: “Approving changes will update your reference files with the results from your last test.”
Rank #2
- Website Testing Software Developer Website Tester. This Test Like A Boss is for men and women into website testing. Great for a website tester who test and evaluate websites or web applications.
- Are you a software developer in programming? Are you a web tester who ensure websites functionality? Then this website testing design is for you. Ideal website tester apparel for a computer programmer.
- Lightweight, form-fitting laptop sleeve that protects your laptop from daily wear and tear
- Faux fur-lined interior and padded zipper binding prevent scratches while keeping your device secure with a top-loading zippered enclosure and two sliders
- Designed for on-the-go use with a slim profile that easily slides into backpacks, totes, and carry-on bags
- Approve when the visual change is intentional and has been reviewed.
- Do not approve merely to make a failing comparison disappear; first investigate unexpected shifts, missing content, or layout changes.
- When production itself changes and should become the new comparison target, refresh the reference captures with
backstop referencebefore testing staging again.
Keep screenshot rendering consistent
Browser and operating-environment differences can produce visual variation unrelated to the code under review. Run comparisons in a consistent rendering environment; the BackstopJS README recommends Docker when cross-machine rendering differences are a concern. If BackstopJS runs in Docker, localhost inside the container may not reach a service on the host. The README gives host.docker.internal as an alternative on Mac and Windows.
Troubleshoot common comparison problems
The report shows broad or unexpected differences
Check that the staging url and production referenceUrl point to equivalent routes, and that the same viewport and capture scope are being used. Confirm that the rendering environment is consistent before treating differences as application changes.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errorsRank #3
- Website Testing Software Developer Website Tester. This Quality Assurance: My Superpower is for men and women into website testing. Great for a website tester who test and evaluate websites or web applications.
- Are you a software developer in programming? Are you a web tester who ensure websites functionality? Then this website testing design is for you. Ideal website tester apparel for a computer programmer.
- Lightweight, form-fitting laptop sleeve that protects your laptop from daily wear and tear
- Faux fur-lined interior and padded zipper binding prevent scratches while keeping your device secure with a top-loading zippered enclosure and two sliders
- Designed for on-the-go use with a slim profile that easily slides into backpacks, totes, and carry-on bags
BackstopJS cannot reach a local site in Docker
A container’s localhost refers to the container, not necessarily the host machine. On Mac and Windows, try host.docker.internal for a host service, as documented in the project README.
Later tests compare against the wrong appearance
Check whether someone ran backstop approve: approval replaces the reference collection with the latest test captures. If the intended baseline is production, recapture it with backstop reference.
Rank #4
- Website Testing Software Developer Website Tester. This Test Like A Boss is for men and women into website testing. Great for a website tester who test and evaluate websites or web applications.
- Are you a software developer in programming? Are you a web tester who ensure websites functionality? Then this website testing design is for you. Ideal website tester apparel for a computer programmer.
- Lightweight, form-fitting laptop sleeve that protects your laptop from daily wear and tear
- Faux fur-lined interior and padded zipper binding prevent scratches while keeping your device secure with a top-loading zippered enclosure and two sliders
- Designed for on-the-go use with a slim profile that easily slides into backpacks, totes, and carry-on bags
Use reporting and CI deliberately
BackstopJS documents reporting and CI options, but a visual diff alone does not determine whether a change should block release. Decide which routes and viewports are release-critical, who reviews differences, and what counts as an acceptable change. Keep intentional updates reviewable rather than treating baseline approval as an automatic pass.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Or skip the browser setup
For a one-call screenshot workflow, ScreenshotNeo is a website screenshot API and MCP server. This example captures a page as WebP; its API accepts a URL and can return PNG, JPEG, WebP, or PDF. See the ScreenshotNeo documentation for request options.
Recommended Free Tools
Quick Recap
Best Value
- 【PD3.2】This is the POWER-Z product page. This tester is the latest version and can support PD3.2.
- 【Larger Display】It has a larger LCD display (1.54 inches) than previous generaion and can support gravity rotation. The high contrast UI makes it easier to get what you need.
- 【Multiple Tests】This tester can support multiple tests, including voltage/current detection, capacity/energy test, E-marker test, PDO test, protocol test, etc.
- 【More Powerful】This tester integrates ARM Cortex-M4 processor and 20 bit ADC. It can support up to 50V 6A (240W in PD) and USB PD protocol analyzer. The PC software can obtain 10 million pieces of data at a time.
- 【Designed for USB-C】It's equipped with two USB-C ports for current input & output and an additional HID port (USB-C) for connecting to PC & power supply.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://staging.example.com -o shot.webp
Unlike BackstopJS, this is a hosted screenshot capture call, not a staging-versus-production visual-diff workflow. ScreenshotNeo accepts cookie banners and removes known consent platforms, newsletter popups, and chat widgets before capture; those steps can be turned off. Bot checks, blank pages, and failed loads are never billed, and responses identify the page verdict and billing status. Its MCP server lets AI agents use screenshot tools. The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000.
Sign up for ScreenshotNeo’s free plan.
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.

