Developer
data tools
done right.
JSON formatting, JSONPath queries, Base64 encoding, SQL formatting, HTML preview and more — all free, all instant, right in your browser.
Everything you need — all in your browser
JSON, SQL, Base64, HTML — instant tools built for developers. Fast, free, and always available.
Format, minify, sort keys, escape and stringify JSON. Dual-panel with live tree view.
Query JSON with path expressions. Results update live as you type.
Convert JSON to Token-Optimized Object Notation. Save 30–60% on LLM token usage.
Compare two JSON objects side-by-side. See exactly what was added, removed or changed with full JSON paths.
Escape and unescape strings. Stringify and parse JSON with character diff.
Encode and decode Base64 and URL-safe Base64. Full Unicode support.
Encode and decode URLs using encodeURIComponent / decodeURIComponent.
Compress text to gzip or decompress gzip back to text. Base64 or Hex output.
Format and syntax-highlight SQL queries. Minify, uppercase and lowercase keywords.
Live sandboxed preview with desktop, tablet (768px) and mobile (375px) viewports.
How to use our tools
Step-by-step instructions for every tool on DataDesignTools.
JSON Formatter
The JSON Formatter lets you beautify, minify, sort and validate any JSON document instantly in your browser.
- Paste your JSON into the left editor panel, or click Paste to read from your clipboard.
- Click Format to pretty-print with 2-space indentation, or choose 4-space or tab from the indent dropdown.
- Use Minify to collapse the JSON to a single line — useful for API payloads or environment variables.
- Click Sort to sort all object keys alphabetically, making large documents easier to diff manually.
- If your JSON is broken (trailing commas, single quotes, unquoted keys), click Repair to auto-fix it.
- Switch to the Tree tab on the right panel to see a collapsible visual tree of your JSON structure.
JSONPath Evaluator
JSONPath is a query language for JSON, similar to XPath for XML. Use it to extract values, filter arrays, and navigate nested structures.
- Paste your JSON document into the left panel.
- Type a JSONPath expression in the path input field. The result updates automatically as you type.
- Use $ to refer to the root of the document.
- Use $.user.name to access a nested property.
- Use $.users[*].email to select a field from every element in an array.
- Use $.items[?(@.price > 10)] to filter array elements by a condition.
- Use $.. (recursive descent) to find a key at any depth, e.g. $..id.
JSON Diff
JSON Diff compares two JSON documents and shows exactly what changed — added keys, removed keys, and modified values — with full JSON path references.
- Paste your original JSON into the JSON A panel (left) and the updated JSON into JSON B panel (right).
- Click Compare. Both documents are formatted and compared automatically.
- The diff results appear at the bottom. Green rows are additions, red rows are removals, amber rows are changes.
- Each result shows the full JSON path (e.g.
$.user.address.city) so you can locate any change instantly. - Click any result row to scroll the diff view to that line and highlight it.
- Use Edit to return to the editors and adjust your JSON without losing your input.
- Click Copy Report to export a plain-text summary of all differences.
SQL Formatter
The SQL Formatter cleans up messy SQL queries with proper indentation, keyword casing, and syntax highlighting.
- Paste your SQL query into the editor, or type directly.
- Click Format to break the query onto multiple lines with keyword alignment.
- Use Upper or Lower to normalise keyword casing (e.g. SELECT vs select).
- Click Minify to collapse the query back to a single line.
- Enable Auto to format automatically as you type.
Base64 Encoder / Decoder
Base64 is an encoding scheme that converts binary or text data to a safe ASCII string. It is commonly used in authentication headers, data URIs, and email attachments.
- Paste your text into the input panel.
- Click Encode to convert it to Base64, or Decode to reverse a Base64 string back to text.
- Use URL-Safe mode to replace
+with-and/with_— required for use in URLs and JWT tokens. - Click Swap to instantly move the output back to the input for chaining operations.
- Full Unicode support: emoji and non-Latin scripts encode correctly.
Escape / Stringify
This tool handles JSON string escaping — useful when embedding JSON inside another JSON string, or when preparing text for inclusion in code.
- Escape adds JSON escape sequences: quotes become
\", newlines become\n, tabs become\t. - Unescape removes those escape sequences and restores the original text.
- Stringify double-encodes a JSON value as a quoted string literal, ready to embed inside another JSON document.
- Unstringify parses a double-encoded JSON string back to formatted JSON.
JSON → TOON
TOON (Token-Optimised Object Notation) compresses JSON into a compact format that uses far fewer tokens when sent to LLMs like GPT or Claude, saving cost.
- Paste your JSON into the left panel.
- The TOON output appears automatically on the right —
nullbecomes~,truebecomesT,falsebecomesF. - Object braces
{ }are removed; structure is inferred from indentation. - Arrays use a
*prefix per item instead of[ ]brackets. - Check the cost table below the output to see estimated token and cost savings per model.
- Click Copy TOON to copy the compact output for use in your LLM prompt.
HTML Preview
The HTML Preview tool renders your HTML live in a sandboxed iframe so you can see exactly how it looks across desktop, tablet, and mobile viewports.
- Paste or type your HTML into the editor panel.
- The preview updates automatically as you type.
- Use the Desktop button for full-width rendering.
- Click Tablet (768px) to preview at a tablet breakpoint.
- Click Mobile (375px) to preview at iPhone-sized width.
- Click ↗ New Tab to open the current HTML in a real browser tab, or ↓ Download to save it as an .html file.
URL Encoder / Decoder
URL encoding converts special characters into %XX percent-encoded sequences safe for use in URLs, query strings, and API requests.
- Paste your text or URL into the input panel on the left.
- Click Encode to convert special characters — spaces become
%20,&becomes%26, etc. - Click Decode to reverse a percent-encoded string back to readable text.
- Use ⇄ Swap to move the output back to the input for chaining — e.g. decode then re-encode.
- Full Unicode support: emoji and non-Latin scripts are correctly encoded.