Format JSON, decode tokens, and clean up code on paste

Copy JSON, a JWT, or CSS and Klipto offers the right action — pretty-print, minify, strip tags, decode Base64/URL/JWT — on paste, offline.

Klipto pretty-prints, minifies and decodes what you copied, at the moment you paste it. Copy a JSON payload, a JWT or a CSS rule, and the action you want is already in the paste preview, one tap away from ⌘V.

Nothing has to open first. No browser tab, no second developer utility app, no pbpaste | base64 -D in a terminal you then have to clear. Klipto recognizes JSON, HTML, CSS, plain code and encoded strings on copy, so the chip row is built before you look at it. All of it runs on the Mac with the network off.

At a glance

  • JSON, four actions: Pretty, Minify, Keys (the top-level field names), Escape (wrap a document as a JSON string).
  • HTML: Minify, Strip tags, and two list conversions, to plain lines or Markdown bullets.
  • CSS: Minify, plus the same light cleanup steps.
  • Decode on sight: JWT, Base64, percent-encoded URLs, escaped JSON strings.
  • Nothing is uploaded: a production token never leaves the machine. One-time $19.99, updates included.

The actions follow what you copied

Two rules govern the chips. JSON actions replace each other, because Pretty and Minify are the same document written two ways. The cleanup steps stack instead, so you can collapse spaces and then drop blank lines on one paste.

The Anti-LLM chip is missing from JSON, HTML, CSS and code on purpose. It strips colons and semicolons out of prose, which would turn color: red into color red. Code sets get whitespace and invisible-character cleanup only.

JSON. Pretty indents {"a":1,"b":2} into readable lines. Minify collapses it back. Keys lists the top-level field names, one per line, which is the fastest way to see the shape of a payload someone sent you. Escape turns {"a":1} into "{\"a\":1}" for the times you have to put JSON inside JSON.

HTML and CSS stop at minify and strip. There is no pretty-printer for either one, and I am not going to pretend otherwise. Proper formatting needs a real parser, and a regex that guesses at nesting will eventually mangle a template. Minify collapses the whitespace, Strip tags turns <b>hi</b> into hi, and the list chips turn <ul><li>a</li><li>b</li></ul> into plain lines or - a / - b.

Code that is not JSON, HTML or CSS gets cleanup with no case changes, so identifiers survive: one-line, collapse spaces, remove blank lines, dedupe, sort, strip invisible characters, un-HTML, plus the encode steps.

Decode without a debugger site

Copy the opaque string and Klipto works out the encoding for you. The step where you have to know whether it is Base64, a JWT or percent-encoding disappears, and only the matching decode appears in the row.

JWT: the token decodes to its readable header and payload, so you can check the claims and the expiry in the preview. Base64: VGhpcyBpcyBhIHNlY3JldA== becomes This is a secret. URL: hello%20world%21 becomes hello world!. Unescape: "{\"a\":1}" unwraps back to {"a":1}.

Why the offline part matters for tokens

A JWT carries claims. A payload dump carries customer data. Pasting either into a web formatter hands it to whoever runs that site, and you get to hope their logs are clean. Klipto never sends it, because there is no server in the path. The app reaches the network only to check for updates.

DevUtils, Boop and OK JSON are good apps, and they are destinations. You open one, paste in, pick a tool, copy out, then return to the editor. Klipto puts the same actions in the popup you already opened to paste. For one-off formatting with nothing installed, try it free in your browser.

The same preview handles color conversion, case, links and text cleanup across 22 content types.

Frequently asked questions

How do I pretty-print JSON on a Mac without a website?

Copy the JSON, open Klipto's paste preview, and tap Pretty. The indented version pastes with ⌘V. The transform runs on-device, so the payload never leaves your Mac.

Can Klipto format HTML or CSS properly?

No. It minifies both and strips HTML tags, and that is the full extent of it. Proper re-indentation needs a real parser, which Klipto does not ship.

How do I decode a JWT on a Mac?

Copy the token. Klipto detects it and offers Decode JWT, showing the header and payload as readable JSON in the preview. No debugger site is involved.

How do I decode Base64 from the clipboard?

Copy the encoded string and tap the decode chip. Klipto recognizes Base64 by itself, so you skip pbpaste | base64 -D and the terminal history that comes with it.

Is it safe to paste a JWT into an online formatter?

Only if you trust that site with the contents, which can include credentials and personal data. A local transform removes the question, since nothing is transmitted.

What does extracting JSON keys give me?

The top-level field names, one per line. Copy a response body, tap Keys, and you get name and age from {"name":…,"age":…} without reading the whole thing.

Does it work with the network off?

Yes. Every transform on this page is computed locally on macOS 14 or later, in an app of about 11 MB with no Electron.

Get Klipto for Mac

Free for 14 days · no card, no account required · 5 MB

Download Klipto