Skip to content
devprohacks.in

Privacy · last updated 18 Oct 2026

Your data never leaves your browser

Short version: we can't see your usage, because it's never sent to us. Here's the long version, in plain words.

What happens to what you paste or drop

  • Your text or file is read and priced by JavaScript running on this page, on your device.
  • There is no endpoint on our server that accepts usage data. The page's Content Security Policy (connect-src 'self' plus our stats counter) blocks the page's scripts from connecting to any other server.
  • We don't store your input in cookies or local storage. Close the tab and it's gone.
  • PNG images are drawn in your browser and saved straight to your device.

Reports and the command-line tool

  • Log files you drop on the home page (Claude Code, Codex, OpenCode) are read in this tab. Only totals are kept in memory; message text is never stored.
  • npx tokenreceipt reads your logs on your own machine. If you ask it to open the report, it puts a summary (token totals per model and per day, and your 25 biggest sessions as numbers only: no prompts, paths, project names or ids) after the # in the /report link. Browsers never send that part of a link to a server, so we never see it.
  • The tool downloads today's prices from /api/prices. That request carries no usage data; like any page view it reaches our server logs as a normal request.

Share links

When you copy a share link, the link itself contains only what's printed on the receipt: total input, output and cache token counts, the API-equivalent total, its label (for example "Claude Sonnet 5.5 + 2 more"), the period label (filled in from your file's first and last date, which you can edit or clear), the optional plan price you typed, and which comparison models you picked. It never contains raw logs, file names, project names, dates per row or per-model breakdowns.

Anyone with the link can see that receipt. When someone opens it, or when a site like X shows a preview, our server reads those totals from the link to draw the page and preview image. We don't store them in any database or file; a rendered preview image is cached on our server for up to 30 minutes after it was last requested, so repeat previews load quickly, and sites that show the preview may keep their own copy. Our web server logs drop query strings and record share links as /r/[redacted].

Analytics

We run our own copy of GoatCounter at stats.devprohacks.in. It uses no cookies and doesn't track you across sites. It records page paths and titles (share links are counted as just /r with the title "Shared receipt"), the referring site, browser and screen size, and country derived from your IP (the IP itself isn't stored), plus button events such as "receipt generated" with the input format (for example "ccusage"). It never receives token counts, costs, model lists or anything you pasted.

Waitlist, alerts and payments

  • If you join the waitlist, we store your email, the plan you picked and the date in a file on our server. We use it only to tell you when that plan opens. Ask us to delete it any time.
  • If you opt in to price alerts, we store your email, the alert types and model names you ticked, the date, and which version of the wording you agreed to, in a file on our server. Alerts aren't live and we send nothing yet; when they launch, the first email asks you to confirm and unconfirmed addresses are deleted. Your usage is never part of it.
  • If paid plans open, payments are processed by Razorpay under their privacy policy. We receive the order and payment IDs, the amount and the plan, never your card details.

Hosting

The site runs on our own server behind Cloudflare, which processes requests (including IP addresses) to deliver and protect the site. Our web server keeps standard access logs (IP address, time, page path with share links redacted, and browser user agent) for security and debugging, and deletes them on a rolling basis.

Your rights and contact

Email hello@devprohacks.in to access or delete anything we hold about you (in practice, a waitlist or alerts email). We'll answer within 30 days. If you're in India, this policy is written with the Digital Personal Data Protection Act, 2023 in mind; if you're in the EU or UK, you also have GDPR rights.