01 · Page weightHow heavy is each tool?
Every tool in the workshop is a single HTML file with inline CSS and JavaScript. No frameworks, no bundlers, no webpack, no tree-shaking. The file you download is the file that runs. Here are the real sizes, measured with wc -c against the deployed files.
| Tool | HTML size | Gzipped | What fits inside |
|---|---|---|---|
| HEIC Liberator | 38 KB | ~9 KB | UI + drag-drop logic (libheif loaded on demand) |
| Image Smusher | 40 KB | ~10 KB | Canvas-based compression for PNG, JPG, WebP, AVIF |
| Favicon Foundry | 41 KB | ~11 KB | Canvas resizer + in-browser ICO writer + ZIP builder |
| JSON Fixer | 49 KB | ~12 KB | Parser, formatter, tree view, JSONC stripping |
| Timestamp Converter | 54 KB | ~13 KB | Full IANA timezone list + parsers for 5 formats |
| Format Flipper | 97 KB | ~28 KB | 9 format parsers bundled inline (JSON, YAML, TOML, CSV, TSV, XML, MD, HTML, SQL) |
For comparison: a typical "free online tool" site running on a JavaScript framework with ads and analytics delivers 800 KB to 3 MB of JavaScript on first load. Tooly's heaviest tool is Format Flipper at 28 KB gzipped — and it parses nine file formats in nine different directions.
Why this matters
A 30 KB page loads on a 3G connection in roughly 200 ms. A 3 MB single-page app takes 8-15 seconds on the same connection. If you're on an office Wi-Fi with 50 Mbps, you won't notice. If you're on the subway in Brooklyn or a train in rural Germany, you absolutely will.
Tools should work when your internet is bad. That's when you need them most.
02 · Upload bytesHow many of your bytes leave your device?
The easy benchmark. For every tool in the workshop, the answer is the same: zero. Not "encrypted," not "we delete them after processing," not "GDPR compliant." Zero bytes of your files ever leave your browser.
This isn't a privacy promise. It's an architectural fact. There is literally no server in the pipeline that could receive your file. Netlify serves a static HTML file to your browser; from that moment forward, the tool runs on your machine. Tooly couldn't see your files if we wanted to.
03 · Task latencyHow fast does the work finish?
This is the harder honest benchmark, because it depends on your device. Compressing a 4K image on a 2024 MacBook is wildly different from the same task on a 2019 Android phone. Instead of making a number up, the page below runs an actual benchmark in your browser right now.
canvas.toBlob('image/webp', 0.85). JSON parse builds a 50 KB synthetic document then runs JSON.parse. Timezone math runs 1000 conversions across 10 different IANA zones using the same logic Timestamp Converter uses. All times via performance.now().
A server-based tool has to add network latency to every operation: 100-300 ms round-trip on a good connection, more on mobile. Tooly's latency is exactly what your browser takes — nothing more. For most tasks in the workshop that means under 50 ms, which is faster than the blink of an eye.
04 · Where we're not the fastestHonest caveats.
Three places where Tooly is measurably slower than the best paid alternative:
| Task | Tooly | Best paid alternative | Why |
|---|---|---|---|
| Image compression ratio | Canvas + default WebP/AVIF encoder | Squoosh's ported MozJPEG / libavif at highest effort | Browser encoders optimize for speed, not peak ratio. For ~5% better compression, Squoosh is still the answer. |
| Big HEIC batches | libheif.js in-browser (~500ms per photo) | Native iOS Photos.app or cloud service | Browser WASM is impressive but no match for native hardware HEIC decode. Good enough for <50 files. |
| Huge JSON docs | Native JSON.parse in main thread |
Server-streaming parser (e.g. oboe.js) on Node backend |
Files over 50 MB will freeze the tab briefly. We're not a data pipeline. |
The workshop is optimized for the 95% case: tasks that happen ten times a week, on files measured in megabytes not gigabytes, where spending three minutes searching for the right tool costs more than the task itself. If you're processing a thousand images nightly, you want a command-line pipeline, not a browser tab. Tooly doesn't pretend otherwise.
05 · The real benchmarkWhat actually matters.
Raw speed numbers are fun to quote, but they're not the point. The real benchmark is: how quickly does the tool stop wasting your time? That breaks down into five questions that no performance monitor can measure for you:
- Does it work on the first try, or do I have to read the docs?
- Do I have to create an account, confirm an email, or watch an ad before my task?
- Will my files leave my device? Are there privacy implications I have to think about?
- Is the output what I expected, or is it technically correct but practically wrong (cropped, stripped, re-encoded weirdly)?
- If I come back in a month, will the site still work? Will the tool still be free? Will the UI have been replaced by a paid tier?
Tooly's answer to every one of those is no-friction by design. That's the benchmark we actually care about. The page-weight and latency numbers are just the easy-to-measure shadow of that larger commitment.