Privacy
Code Beautifier processes everything you paste entirely inside your browser. Your input never touches our servers during normal formatting, conversion, or validation.
Client-side processing
Every tool runs in local browser memory using JavaScript and the Web Crypto API. There are no server-side formatters. Files stay on your device unless you explicitly create a share link.
Share links
If you use the Share button, the output is stored in Cloudflare KV and expires automatically after 7 days. Anyone with the link can view the content during that window. JWT Decoder disables sharing so tokens are never uploaded. Creating a link also sends us a private notification with the tool name, snippet size, country, and device type and browser (read from your browser's user-agent), never the contents or your IP.
Analytics
We use Cloudflare Web Analytics, which is cookieless and does not track individuals across sites. It never collects the contents of what you paste into tools. Once a day we read aggregate totals from it (page views, top pages, and countries) for an internal summary.
We also use DataFast, a privacy-focused analytics service, to count page views and see referrers, countries, and device types. It sets first-party cookies on this site: a random visitor id, the time of your first visit, and a visit count, each kept for up to a year, and a session id that expires after 30 minutes without activity. They hold no name, no email address, and nothing you paste. A one-time notice at the bottom of the page says so; dismissing it is remembered in this browser only. DataFast never receives the contents of what you paste into tools either. When a known search crawler or AI bot requests a page, our server reports that request to DataFast (the URL, the bot's user-agent and IP address, and the response status); requests from people are not reported this way.
If you click a sponsor or license checkout button, the anonymous DataFast visitor id from your browser is passed to Dodo Payments with the checkout, so a purchase can be credited to the channel that brought you here. We add nothing else: no tool contents and no personal details.
The first time you run a tool during a visit, your browser sends us that tool's name and nothing else. Our server adds the approximate city, region, and country that Cloudflare derives from the connection, plus the device type and browser from your browser's user-agent (for example, “iPhone · Safari”), and sends us a private Telegram notification. What you paste, the output, your options, and your IP address are never sent with it, and nothing about the visit is stored.
Share-link abuse handling
When you create a share link, we store the submitter IP alongside the snippet for abuse handling only. IPs are not shown on public share pages. To request removal, email takedown@codebeautifier.app.
Formatter API waitlist
If you join the Formatter API waitlist, we store your email address and optional use case in Cloudflare KV and use them only to contact you about the API. Each signup sends us a private Telegram notification with a masked email address (for example, d**@example.com), your use case, your country, and your device type and browser. To be removed, email feedback@codebeautifier.app.
Newsletter
The newsletter is optional and separate from the API waitlist; joining one never adds you to the other. If you subscribe, your email address is passed to Buttondown, the service that stores the list and sends the emails, together with a tag naming the page you subscribed from. Nothing else is collected. Subscriptions use double opt-in, so no email is sent until you confirm; open and click tracking are switched off; and every email carries a one-click unsubscribe that removes you from the list. Each new signup sends us a private Telegram notification with a masked address, your country, and your device type and browser. To have an address deleted entirely, email feedback@codebeautifier.app.
Local drafts & history
Per-tool drafts and recent input history are stored in this browser's localStorage only. They never leave your device and are cleared when you use the clear controls or wipe site data.
Local workspace (IndexedDB)
Named workspaces and their files live in this browser's IndexedDB. They are never synced to our servers — local only. Exporting a workspace builds a zip entirely in your browser; importing a zip writes only to local IndexedDB. Nothing is uploaded unless you explicitly create a share link. Manage workspaces at /workspace.
Accounts
There are none. Code Beautifier is fully stateless on the server except for opt-in share links and waitlist signups. Local drafts and workspaces stay on your device.