All essentials

Choose a folder. Only PDFs are opened, and only to count their pages.

Free tool

Folder Inventory

List a whole folder as a tree with file sizes, modified dates and PDF page counts, and export it as CSV. Bad or encrypted PDFs are reported, and the run carries on.

Drop a folder here

Sub-folders included · any file type

Good to know

  • Modified dates are what the browser reports for the file, which copying or syncing can change.
  • PDFs are opened one at a time with progress shown, and only to count pages.
  • Sub-folders are walked and their structure is kept in the list.

Your files stay on your machine

This tool runs entirely inside your browser tab. Nothing is uploaded, stored, or sent to a server — close the tab and every trace is gone.

These are the free ones — see the full suite

How big a file can it take?

There is no upload, so there is no upload limit — but the work happens in this tab, which means your browser’s memory is the budget. Nothing here will refuse a file for being large; a big enough one simply gets slow and, eventually, reloads the tab. The figures below are rules of thumb on a desktop browser, not enforced caps. On a phone or tablet, expect a good deal less.

  • Files are read one at a time and released, so it is the single largest PDF that binds: comfortable to about 200 MB each.
  • Non-PDF files cost almost nothing, so a folder of many thousands is fine. Page counting sets the time.

Password-protected PDFs are declined whatever their size — unlock the file first. If a run does die on a long document, splitting it into volumes and working through them one at a time is the reliable way round it.

Built on open source

The Essentials tools do their work in your browser using these open-source libraries, used under the licenses below. Each remains the copyright of its authors.

  • pdf-lib — MIT · creates and edits the PDFs you download
  • pdf.js — Apache-2.0 · reads your PDF and renders the page previews
  • SheetJS (xlsx) — Apache-2.0 · reads Excel workbooks — .xlsx, .xls, .xlsb and .ods
  • hyparquet — MIT · reads Apache Parquet files
  • hyparquet-compressors — MIT · the Parquet codecs beyond Snappy — Gzip, Zstd, Brotli, LZ4
  • JSZip — MIT · bundles multi-file results into one ZIP
  • Tesseract.js — Apache-2.0 · reads the text on scanned pages in OCR PDF, with its self-hosted engine and English data
  • exifr — MIT · reads photo dates, locations and orientation
  • geotiff.js — MIT · reads GeoTIFF elevation models
  • LERC — Apache-2.0 · decodes LERC-compressed GeoTIFFs, through geotiff.js
  • zstddec (with Zstandard) — MIT, BSD-3-Clause · decodes Zstandard-compressed GeoTIFFs, through geotiff.js
  • pako — MIT, Zlib · compresses and decompresses data inside pdf-lib, JSZip, PizZip and geotiff.js
  • shpjs — MIT · reads zipped Shapefiles
  • docxtemplater — MIT · fills the fields in Word templates
  • PizZip — MIT · opens Word templates for filling
  • jsdiff — BSD-3-Clause · finds the word changes in PDF Compare
  • msgreader — Apache-2.0 · reads Outlook .msg files
  • Lucide — ISC · the icons throughout these tools
  • React — MIT · the interface itself
  • Next.js — MIT · builds and serves these pages

pdf.js ships fallback fonts contributed by Foxit Software, redistributed here as part of pdf.js. JSZip is dual-licensed; it is used here under the MIT license.