Chrome extension Free to start · no account needed

Bulk full-page screenshots from a list of URLs.

Paste your URLs, pick the device sizes you need, and BatchScroll captures every page from top to bottom. Download a tidy ZIP with a CSV report for every URL, or one merged PDF with Pro. It all runs inside your own browser.

  • Free plan: 25 URLs per batch
  • No account or sign-up
  • Screenshots never leave your computer

Chrome shows a permission warning when you add BatchScroll. Here's what it means.

Illustration of the BatchScroll app A list of URLs on the left with Desktop 1440 and Mobile 390 selected; on the right a batch of 48 screenshots in progress with full-page thumbnails and ZIP, PDF, CSV and JSON export buttons. BatchScroll BatchScroll Pro License URLs 24 valid · 1 duplicate removed https://shop.example.com/ https://shop.example.com/pricing https://shop.example.com/products/lamp https://shop.example.com/cart https://blog.example.com/launch-week https://blog.example.com/changelog https://docs.example.com/start https://docs.example.com/api … Import file Open tabs Sitemap.xml Device sizes Desktop 1440 Mobile 390 Tablet 768 Laptop 1280 + Custom Full page Hide cookie banners Capture 48 screenshots Capturing… 31 of 48 done Pause Cancel shop.example.com/ Desktop 1440 · 1440×5320 Done · 200 shop.example.com/ Mobile 390 · 780×14210 Done · 200 /pricing Desktop 1440 · 1440×3880 Done · 200 /pricing Mobile 390 · 780×9644 Done · 200 /products/lamp Desktop 1440 · 1440×6112 Done · 200 Capturing… /products/lamp Mobile 390 Stitching Loading… /cart Desktop 1440 Scrolling to load Queued /cart Mobile 390 Queued Export 31 screenshots JSON CSV PDF ZIP
  • 5 device presetsDesktop, laptop, tablet and mobile
  • 1,000 URLsper batch on Pro (25 on Free)
  • 60,000 pxmaximum page height on Pro
  • 0 uploadseverything is processed locally
How it works

From a list of links to a folder of screenshots

No scripts, no command line, no screenshot-by-screenshot clicking. Three steps, and BatchScroll does the scrolling, stitching and naming.

  1. Add your URLs

    Paste a list — one per line. BatchScroll adds a missing https://, skips invalid lines and removes duplicates. Or pull URLs in from a file, your open tabs or a sitemap.

    • Paste
    • .txt / .csv file
    • Open tabs
    • sitemap.xml
  2. Choose sizes and options

    Pick Desktop 1920, Desktop 1440, Laptop 1280, Tablet 768 or Mobile 390 — or add custom widths on Pro. Capture the full page or just the first screen, and fine-tune delay, scroll-to-load, timeout and retries.

    • Full page or first screen
    • Delay
    • Scroll-to-load
    • Retries
  3. Capture and export

    BatchScroll works through the list in its own browser window, so your tabs stay untouched. Then download a ZIP of images with a CSV report, or a single merged PDF.

    • ZIP + CSV report
    • PDF
    • JSON
Reliability

Built to finish the batch

A long list shouldn't stop at page one or quietly skip the pages that fail. BatchScroll keeps going, picks up where it stopped and tells you what happened to every URL — on the free plan too.

  • Retries without stopping

    A page that fails to load is retried automatically (0–3 times, your choice) while the rest of the batch keeps going. Retry failed then re-runs only the pages that still failed.

  • Continue where it stopped

    Canceled the batch, closed the capture window or closed BatchScroll halfway? Open it again and Continue captures the remaining URLs, keeping every screenshot already taken.

  • A report row for every URL

    The CSV report lists each screenshot with its status, HTTP status code, final URL, image size and, when a page fails, the error code and reason. Export it on its own, even when every page failed.

  • Error pages are captured too

    A page that answers 404, 500 or 401 is still screenshotted, with its status code in the report — so a batch also shows you which pages are broken. Only pages that can't load at all, or aren't web pages, get an error row with the reason.

  • Cut-off pages are flagged

    A page taller than the maximum height (15,000 px on Free, up to 60,000 px on Pro) is cut there, marked Truncated in the results and truncated=true in the CSV — never passed off as complete.

  • Fast first-screen mode

    Turn off Full page to capture only what fits in the device's screen: one screenshot per page with no scrolling or stitching, so long lists finish sooner.

Features

Screenshots you can actually hand to a client

Pixel-accurate, full-length captures with the details that matter for QA, audits and reports.

Real device sizes, not a resized window

BatchScroll renders each page with Chrome's own engine at the exact viewport width, pixel density and user agent of the device you pick — so responsive breakpoints switch exactly where they should.

  • Desktop 1920 & 1440 and Laptop 1280 at 1× pixel ratio
  • Tablet 768 and Mobile 390 at 2× with iPad and iPhone user agents and touch
  • Custom widths from 240 to 3840 px on Pro
  • Up to 4 sizes in one batch on Pro (1 on Free)
Desktop, laptop, tablet and mobile device sizes Desktop 1920 · 1440 Laptop 1280 Tablet 768 Mobile 390
  • True full-page capture

    The whole page from top to bottom in one image, with fixed headers kept at the top instead of repeated down the page. Extra-tall pages are saved as numbered parts.

  • Handles lazy-loaded content

    Scroll-to-load triggers lazy images and sections before capture, then BatchScroll waits your chosen delay and for web fonts to finish loading.

  • ZIP with a CSV report

    Every ZIP includes report.csv, one row per screenshot: status, HTTP status code, final URL after redirects, page title, image size, a truncated flag, and the error reason when a page fails — ready for any spreadsheet.

  • One merged PDF Pro

    Merge a whole batch into a single PDF, in list order — fitted to the screenshot width, or laid out on A4 pages for client reports, printing and sign-off.

  • Hide cookie banners & chat Pro

    One switch hides common consent pop-ups and chat launchers — OneTrust, Cookiebot, Intercom, Drift and more — so they don't cover your content.

  • Custom CSS injection Pro

    Apply your own CSS before each page renders: hide a staging banner, pause animations or mask content that changes on every load.

  • File names your way Pro

    Build names from tokens like {host}, {path}, {preset}, {date} and {title}. The default keeps files sorted in list order.

  • Parallel loading Pro

    Load up to 3 pages at the same time to speed up lists of slow-loading sites, with JPEG output and pages up to 60,000 px tall.

  • Pause, resume, keep your results

    Pause a batch and resume it when you're ready. Results are saved locally, so the results grid and the ZIP, CSV and PDF exports still work after you reload BatchScroll.

Use cases

One tool, a lot of tedious work saved

Whenever you need more than a couple of screenshots, BatchScroll turns an afternoon of clicking into a single run.

  • QA testers

    Visual regression checks

    Capture every key page at every breakpoint before and after a release, and you have a clean before-and-after set to compare. HTTP statuses and error codes in the report flag broken pages right away.

  • SEO auditors

    Site audits

    Load a site's sitemap.xml (Pro) and keep a visual record of every page next to its final URL, redirect and status code in the CSV.

  • Agencies

    Client reports

    Turn a list of client pages into one PDF (Pro) for sign-off, recurring reports or proposals — no stitching in an image editor.

  • Designers

    Design reviews

    See how real pages render at desktop, tablet and mobile widths, with consistent full-page images ready for feedback.

  • Everyone

    Archiving

    Keep dated, full-length records of your pages or competitors' landing pages, with {date} in the file name (Pro).

Private by design

Your screenshots never leave your computer.

BatchScroll has no servers that see your pages. It renders, captures and packages everything inside Chrome on your machine.

Read the privacy policy →

  • No account, no analytics, no tracking. We don't know which URLs you capture.
  • Stored locally. Results live in the extension's own storage until you clear them or uninstall. Starting a new batch replaces them; BatchScroll asks first if some weren't downloaded yet.
  • No background traffic. BatchScroll only goes online on its own to check a Pro license key with Gumroad, or to download a sitemap you ask it to import.
Pricing

Free to start. Pro from $4.99/month.

Use the free plan as long as you like. When your lists get longer, pay monthly or once — both unlock the same Pro features.

Free

For quick checks and small sites.

$0forever

No account or credit card.

  • 25 URLs per batch
  • 1 device size per batch, any of the 5 presets
  • Full-page or first-screen PNG, up to 15,000 px tall
  • ZIP with a per-URL CSV report, CSV export
  • Import from paste, .txt/.csv files and open tabs
  • Retries, Retry failed and Continue for interrupted batches
  • Delay and scroll-to-load
Coming soon to the Chrome Web Store
Cancel anytime

Pro Monthly

For projects, busy months and trying Pro.

$4.99/ month

Renews monthly until you cancel. After you cancel, Pro stays on until the end of the month you paid for.

  • 1,000 URLs per batch
  • Up to 4 device sizes, incl. custom widths (240–3840 px)
  • PNG or JPEG, pages up to 60,000 px tall
  • One merged PDF, JSON report, plus ZIP and CSV
  • Up to 3 pages loaded in parallel
  • Hide cookie banners & chat widgets
  • Custom CSS and file-name patterns
  • Import from sitemap.xml

5 activations · free updates · 14-day refund on your first payment

Subscribe — $4.99/month
Launch price

Pro Lifetime

For agencies, QA teams and SEO audits. Pay once, keep Pro.

$29one-time

Launch price, then $39 for new purchases. Your license is never affected by a later price change.

  • 1,000 URLs per batch
  • Up to 4 device sizes, incl. custom widths (240–3840 px)
  • PNG or JPEG, pages up to 60,000 px tall
  • One merged PDF, JSON report, plus ZIP and CSV
  • Up to 3 pages loaded in parallel
  • Hide cookie banners & chat widgets
  • Custom CSS and file-name patterns
  • Import from sitemap.xml

5 activations · free updates · 14-day refund

Buy Lifetime — $29

Checkout is handled by Gumroad. Your license key arrives with the receipt — paste it into BatchScroll to unlock Pro. Pro Monthly renews automatically; cancel anytime in your Gumroad library. Using a work Chrome managed by IT? Try the free plan first.

Compare plans

CapabilityFreePro Monthly or Lifetime
URLs per batch251,000
Device sizes per batch1Up to 4 (incl. custom widths)
Custom width (240–3840 px)Not includedIncluded
Image formatPNGPNG, JPEG
ExportsZIP (with report.csv), CSVZIP, merged PDF, CSV, JSON
Max page height15,000 pxUp to 60,000 px (adjustable)
Pages loaded in parallel1Up to 3
Hide cookie banners & chat widgetsNot includedIncluded
Custom CSS injectionNot includedIncluded
Custom file-name patternDefault patternIncluded
Import sitemap.xmlNot includedIncluded
Import .txt/.csv, paste, add open tabsIncludedIncluded
Delay, scroll-to-load, retriesIncludedIncluded
Retry failed, Continue interrupted batchesIncludedIncluded
Per-URL CSV report (status, HTTP code, error reason, truncated flag)IncludedIncluded
Full page or first screen onlyIncludedIncluded
LicenseNo key neededGumroad license key · 5 activations
Price$0$4.99/month Monthly, cancel anytime$29 one-time Lifetime (launch price, then $39)
FAQ

Questions, answered

Can't find what you need? Email moonlight89kg@gmail.com.

Why does BatchScroll need the “debugger” permission?

Chrome's debugger API (the Chrome DevTools Protocol) is what lets an extension render a page at an exact device size and capture it beyond the visible part of the screen. BatchScroll uses it to set the viewport, pixel density and user agent, scroll the page so lazy images load, read its title and HTTP status for your report, and take the full-page screenshot.

It attaches only to tabs in its own capture window, only while a batch is running, and detaches after each page. It doesn't touch your other tabs.

Why does Chrome warn that BatchScroll can “read and change all your data on all websites”?

When you add BatchScroll, Chrome lists two warnings: “Read and change all your data on all websites” and “Access the page debugger backend”. Chrome shows both lines for every extension that uses the debugger permission, because that permission could in principle be used on any tab.

BatchScroll uses it only on the tabs of its own capture window, during a batch you start, and detaches after each page. Your other tabs are never touched, and page content is never uploaded. The privacy policy lists exactly what it does with the permission.

Why does Chrome say BatchScroll “started debugging this browser”?

Chrome shows that notice whenever an extension uses the debugger API — it's expected and disappears when the batch ends. If you click Cancel on it, Chrome disconnects BatchScroll and the batch pauses; just resume it when you're ready.

Where are my screenshots stored?

On your computer only. While you work, screenshots are kept in the extension's local browser storage so your results survive a reload. Exports are saved through Chrome's normal download flow (your Downloads folder by default).

Click Clear results to delete them at any time; uninstalling BatchScroll removes everything it stored. Nothing is ever uploaded.

Can it capture pages I'm signed in to?

Yes. Captures run in a regular window of your own Chrome profile, so pages load with your existing sessions — handy for staging sites, dashboards and members-only pages. Those pages are never sent anywhere.

Are there pages it can't capture?

Chrome doesn't let extensions capture its own internal pages (chrome://) or the Chrome Web Store, and BatchScroll only accepts http:// and https:// addresses. Links to PDFs or other files (ZIP, CSV, installers…) aren't web pages: BatchScroll reports them as “Not a web page” instead of saving the file to your Downloads folder. Pages that answer with an error status, such as 404 or 500, are still captured, with the status in the CSV report. Pages that don't load at all are marked with an error and its reason in the results and the CSV report, and you can retry them with one click.

Does BatchScroll work in a work or school Chrome managed by IT?

Not always. BatchScroll needs Chrome's debugger API. From Chrome 155, Chrome blocks that API in browsers whose administrator restricts extension site access or disables screenshots, so BatchScroll can't capture there. Try the free plan first to check that capture works in your browser.

For IT administrators: allow BatchScroll with an ExtensionSettings entry for its extension ID that doesn't set runtime_blocked_hosts, and leave screenshots enabled (DisableScreenshots off). Force-installing the extension alone doesn't lift the block.

What happens if I paste more than 25 URLs on the Free plan?

BatchScroll shows a notice and captures the first 25. Pro raises the limit to 1,000 URLs per batch.

Is Pro a subscription?

It's your choice. Pro Monthly is a $4.99/month membership through Gumroad: it renews each month until you cancel, and you can cancel anytime in your Gumroad library. After you cancel, Pro stays active until the end of the month you already paid for. Pro Lifetime is a one-time payment of $29 (launch price) with free updates and no renewals. Both unlock exactly the same features.

You get a license key with your receipt; paste it into BatchScroll and it's verified with Gumroad. Each key includes 5 activations. Each new browser, Chrome profile or reinstall uses one, and removing the key from a browser doesn't free its activation. If you run out on your own browsers, email us and we'll reset them for free.

BatchScroll re-checks the key about once a week and keeps Pro working if you're offline for a while: up to 30 days with Lifetime, up to 14 days with Monthly, counted from the last successful check.

Will the price change?

Yes. $29 is the launch price of Pro Lifetime. After the launch period, Lifetime costs $39 for new purchases. If you buy at the launch price, you pay once and keep Pro with free updates: a later price change doesn't affect your license.

Pro Monthly is $4.99/month. If we ever change the monthly price, it applies to an existing subscription only after we've told you by email, and you can cancel before it does.

What happens when I cancel Pro Monthly?

Cancel anytime from your Gumroad library (or the link in your Gumroad receipt). Nothing changes right away: Pro stays active until the end of the month you've paid for. After that, BatchScroll switches back to the free plan. Your settings, screenshots and exports aren't touched, and you can subscribe again whenever you need Pro.

Can I switch from Monthly to Lifetime?

Yes. Buy Pro Lifetime, paste its license key into BatchScroll, then cancel your monthly membership in your Gumroad library. Monthly payments you've already made aren't credited toward Lifetime.

What if a batch stops halfway, or some pages fail?

Failed pages are retried automatically (you choose 0–3 retries) while the rest of the batch keeps going, and Retry failed runs only the pages that still failed. If you cancel, close the capture window or close BatchScroll mid-batch, Continue captures the remaining URLs and keeps every screenshot already taken, even after a reload.

Every page gets a row in the CSV report with its status, HTTP status code and, for failures, the error reason, so you can see exactly what happened to each URL.

Can I get a refund?

Yes. If Pro isn't right for you, ask for a refund within 14 days through Gumroad: for Pro Lifetime, within 14 days of purchase; for Pro Monthly, within 14 days of your first payment. Details are in the refund policy.

Stop screenshotting pages one by one.

Install BatchScroll for free, paste your URLs and let it handle the scrolling, stitching and naming.