All sections

What we store

2 min readValidated October 12, 2026
View as Markdown

The complete list of everything a Kraftify account holds. Each row exists because something depends on it, and nothing is collected on the side. If a row below surprises you, that surprise is the point of the page.

Kept #

WhatWhyFor
Your emailAccount identifier: sign-in, billing notices, service announcements. Product news only with opt-inUntil you delete the account
OAuth profileProvider username, display name, avatar URL and account ID — only for OAuth sign-insUntil you delete the account
A hash of your passwordscrypt with per-password salt. Never stored or emailed backUntil you delete the account
Env key names and set-flagsSo the console can show what is configured. Values never reach us; no hashes eitherDeleted with the account
The billing recordTarget, node, renewal date. That is the invoice7 years, because tax law
SessionsRandom ids with a 30 day expiry, so staying signed in works. Expired ones are pruned30 days at most
Standing and roleWhether the account is active, banned or ended, and what it may doUntil you delete the account
Appeals, moderation and domain recordsYour words back to us, log entries naming the account, claims and requests1 year after the case closes
Mail and waitlist prefsWhich of the four mails you want, and the waitlist entryUntil you delete the account or unsubscribe
Credits balanceGranted testing money, drawn before anything could be dueUntil spent or the account goes
CorrespondenceEmails you send to legal, abuse, or privacyLife of the matter plus 1 year
Short-lived edge logsProxy and rate-limit entries, rotated automaticallyDays, not years

Never written #

WhatWhy not
Env secret valuesKey names and set-flags leave your browser. Values never reach us, and there is no endpoint that returns one
Console and query outputStreamed to your browser, dropped at the socket
Chat message historyRelayed for delivery. No history is stored
Crash dumps and plugin telemetryNo agent, no upload path, no setting to enable one

The env row is the one that should make you suspicious, so here is the whole argument. A database connection string is a credential. It is in the agent that wrote it and in the process that reads it, which means it is already in at least two places we do not control. Storing a third copy here would be the copy we could be asked to produce. So kraftify_set_env receives a key and a confirmation, and the value never reaches us.

Reading your own list #

The same manifest is printed by the dashboard, so you can check that it still matches this page rather than taking our word for it.

kraftify data manifest

Getting it all deleted #

kraftify account delete --confirm

Targets, their files and their env values go immediately. The billing record stays for the seven years above, because deleting it would be tax fraud rather than a privacy win.