Free data tools
A complete set of data processing tools that run entirely in your browser. Format and validate JSON, convert between CSV and JSON, encode or decode Base64, percent-encode URLs, generate cryptographic hashes, and create UUIDs. All processing runs locally.
Every tool uses standard browser APIs and runs in memory. Your data is processed locally and the result appears in the same tab.
Read the complete data tools guide
Why these data tools run in your browser
Formatting, encoding, and hashing are small, well-defined jobs. JSON.parse, btoa, encodeURIComponent, and crypto.subtle.digest are built into every modern browser, so typical inputs are processed in the same tab as you type.
Hosted formatters work differently: they receive your input on their servers to process it, and what happens to it there depends on that service's logging and retention.
Here the text you paste sits in a textarea, JavaScript processes it, and the result appears in another textarea. The site's Content Security Policy sets connect-src 'none', which blocks fetch, XHR, and WebSocket requests from the page. Our servers are not involved at any point.
How the data tools work
The JSON formatter uses the browser's built-in JSON.parse and JSON.stringify, the same parser that runs on every JavaScript engine. Base64 uses btoa and atob, with a wrapper for handling Unicode correctly. URL encoding uses encodeURIComponent. CSV parsing is a hand-rolled state machine that follows RFC 4180.
Hashing and UUIDs are slightly different: they rely on the Web Crypto API, which is the standardised browser interface to cryptographic primitives. crypto.subtle.digest computes SHA-256, SHA-512, and SHA-1 using the browser's native implementation (often hardware-accelerated), and MD5 is computed by a bundled JavaScript implementation because Web Crypto does not provide it. crypto.randomUUID generates RFC 9562 v4 UUIDs from a cryptographically secure random source.
In-browser data tools vs the alternatives
| Approach | Processes locally | Setup | Best for |
|---|---|---|---|
| In-browser (this site) | Yes | None | Quick one-off checks while you work |
| Hosted online formatters | No | None | Sample data, public JSON |
| Command-line tools | Yes | Install + learn syntax | Scripting, repeated transforms in CI |
For a quick check during development (formatting a webhook payload, hashing a string, generating a few UUIDs for a database seed), in-browser is the fastest option. For anything you want to automate, command-line tools are the right choice. Hosted formatters suit sample or public data.
When to use these tools
- Inspecting an API response? Pretty-print and validate the JSON, then move structured rows between formats with the CSV and JSON converter.
- Verifying file integrity after a download? Generate SHA-256, SHA-512 or SHA-1 checksums locally and compare them to the published value.
- Embedding a small image inline or moving binary through a text-only channel? Use the Base64 encoder and decoder, and reach for the URL percent-encoder when adding query strings.
- Seeding a database or building a fresh test fixture? Pull a batch of identifiers from the UUID v4 generator.
Frequently asked questions
- Are these data tools free?
- Yes. Every data tool is free to use as often as you like, with nothing to sign up for.
- Is my data sent to a server?
- Every tool runs as JavaScript inside your browser tab. The JSON you paste, the CSV you convert and the string you hash are processed there. Our servers are not involved at any point.
- Can I use a file instead of pasted text?
- The JSON formatter, the CSV converter, and the URL tools take pasted text. The Base64 file and image pages and the two file hash pages accept a dropped or chosen file up to 10 MB.
- How are the SHA hashes computed?
- The hash generator calls crypto.subtle.digest, the browser's native Web Crypto implementation. SHA-256 and SHA-512 follow FIPS 180-4, so the hex digest matches what sha256sum or OpenSSL prints for the same bytes.
- Where do the UUIDs come from?
- The UUID generator uses crypto.randomUUID, the browser's standardised UUID v4 generator. It draws on a cryptographically secure random source. Output follows RFC 9562, which replaced RFC 4122.
- Will the CSV converter handle quoted fields and embedded commas?
- Yes. The parser handles RFC 4180-style quoting: double-quoted fields, escaped quotes inside fields (a doubled quote character), and commas inside quoted fields. It also handles CRLF and LF line endings.
- Why is Base64 longer than the original input?
- By design. Base64 encodes every 3 bytes as 4 printable characters, so the output is always about 33 percent longer. The point isn't to compress, it's to make binary data safe to transmit through text-only channels like email or JSON.
- Do these tools work offline?
- Once a tool's page has loaded, yes, in that tab. Everything the tool needs arrives with the page, so you can disconnect and keep formatting, converting, and hashing until you close or reload the tab or open another page. Opening or reloading a page needs a connection, because the site installs no service worker and the browser checks each page with the server as it opens.