The benchmark, in full

Across 8 real pages, scored with the original server unreachable, CopyAnySite averages 98.87% pixel fidelity and is best or tied on 8 of 8 rows — against SingleFile 87.93%, wget 87.4% and monolith 83.44%. The harness and the raw numbers are in the repository, so you can re-run it.

Fidelity claims about website copiers are usually unfalsifiable, because the copy is judged while the original server is still there to fill in the gaps. This page exists to be the opposite: one command, published inputs, published per-run outputs, and the losing rows left in.

Offline fidelity by page — median of 3 runs. Higher is better; remote requests should be zero.
PageCopyAnySiteSingleFilemonolithwget -p -k
arthize.comagency site 99.97%2 remote · 1124 KBbest 99.84%0 remote · 501 KB 99.24%8 remote · 2209 KB 99.24%8 remote · 1069 KB
linear.appanimation-heavy marketing 99.64%1 remote · 6718 KBbest 88.28%0 remote · 2296 KB 98.88%266 remote · 25157 KB 84.2%324 remote · 4311 KB
news.ycombinator.comtable layout 100%0 remote · 47 KBbest 95.86%0 remote · 43 KB 100%0 remote · 55 KBbest 100%0 remote · 52 KBbest
Travlia (WP theme demo)commercial theme 98.39%1 remote · 31042 KBbest 74.64%0 remote · 7501 KB 84.54%84 remote · 80993 KB 66%89 remote · 49182 KB
wikipedia.orgcontent-heavy article 100%0 remote · 1033 KBbest 99.99%0 remote · 450 KB 99.92%7 remote · 932 KB 99.87%9 remote · 685 KB
stripe.comgradients, heavy JS 95.99%0 remote · 49526 KBbest 65.55%0 remote · 5302 KB 49.03%0 remote · 90611 KB 56.86%122 remote · 649 KB
heyclicky.comliquid-glass SVG filters 98.71%0 remote · 31224 KBbest 81.41%0 remote · 1715 KB 71.6%0 remote · 27553 KB 96.17%1 remote · 20573 KB
tailwindcss.comutility CSS docs 98.25%0 remote · 14605 KBbest 97.84%0 remote · 9346 KB 64.27%0 remote · 19055 KB 96.88%1 remote · 11527 KB
Average8 sites · 3 runs each 98.87%best on 8 of 8 87.93%best on 0 of 8 83.44%best on 1 of 8 87.4%best on 1 of 8

How it is measured

Same page, same moment
Every tool captures the same URL in the same session, after the page has been scrolled to the bottom and back so lazy content exists.
Original server unreachable
Each copy is opened with requests to the original host blocked. A copy that still fetches from the site it copied is not a copy, so anything that only renders online scores as missing.
Pixel scoring
The rebuilt page is rendered at 1440×900 and compared to the live page with pixelmatch at a 0.1 threshold; the score is the share of matching pixels.
Three runs, median kept
Each site/tool pair runs three times and the median is reported, because animation and ad slots move between loads.
Rows we lose stay in
The table is written from the raw JSON by the build. Nothing is filtered, including the pages where a competitor ties or beats us.

Reproducing it

git clone https://github.com/bytepassperks/sitegrab
cd sitegrab && npm install
RUNS=3 npm run bench:rivals

The run needs monolith, wget and SingleFile's CLI on the path; the harness installs its own Chromium through Playwright. Numbers move by a few hundredths between machines and by more than that when a site ships a redesign.

What this does not prove

It is our benchmark, and it measures the thing we build for: rebuilding a browser-rendered page so it survives without its origin. It says nothing about crawl speed, whole-site mirroring depth, or archival formats like WARC — HTTrack and wget are built for mirroring and will out-crawl us. On pages with no fonts, no JavaScript and no external media, everything ties at or near 100% and the comparison is meaningless.

Questions

Is the CopyAnySite benchmark independent?
No — we wrote it and we run it, and it favours what we optimise for: offline-faithful rebuilds of browser-rendered pages. What makes it checkable rather than marketing is that the harness, the site list and the raw per-run numbers are all in the public repository, so anyone can run npm run bench:rivals and get their own figures.
Which tools are compared?
SingleFile (browser extension), monolith (CLI), and wget -p -k (CLI mirroring). All three are free and open source, and all three are run with the settings their own documentation recommends for a complete offline copy.
Why does a competitor sometimes score 100%?
On pages with no webfonts, no JavaScript rendering and no external media — a plain table layout, for instance — there is nothing hard to rebuild, so every serious tool lands at or near 100%. The differences only appear on animation-heavy marketing pages and theme-built sites.
What do "remote" and "KB" mean in the table?
Remote is the number of requests the finished copy still makes to the internet when opened; KB is the size of the saved file. A tool can buy a higher score with a much larger file, so both are reported next to the score rather than hidden.

Tool-by-tool comparisons · The free options, measured · Download the extension