DiaryFast
Privacy, in detail

Where your journal is stored — and who can see it

Short answer: on your device, in your browser. The longer answer below covers every feature that sends anything anywhere, what our servers keep, what the encryption does and doesn't protect, and how to verify it yourself.

Updated · 5 min read · By the DiaryFast team

The short version

When you…What leaves your deviceWho receives itStored by us?
Write, edit, add a mood or photoNothing—No
Ask for an AI reply or report (default)That entry, conversation or report digestCloudflare → our server → OpenAI APINo — only a daily request count
Use your own API key (BYOK)The same textOpenAI or Anthropic directlyNo — it never reaches us
Add weather & placeCoordinates rounded to ~1 kmOpen-Meteo, BigDataCloudNo
Dictate with the microphoneAudioYour browser's speech service (e.g. Google in Chrome, Apple in Safari)No
Turn on encrypted syncCiphertext of each entryOur serverYes — encrypted; we can't read it
Sign in, buy Pro, weekly reminderYour emailOur server, Stripe (payment), Amazon SES (email delivery)Yes — email, key, plan

On your device: IndexedDB

DiaryFast is a web app. Entries, photos, moods, AI replies, conversations, action items and saved reports live in your browser's IndexedDB, a database each browser keeps per website. Three consequences people often don't expect:

  • One browser, one journal. Chrome and Safari on the same phone have separate journals, as do different browser profiles. A private/incognito window starts empty and forgets everything when closed.
  • Browser sync doesn't copy it. Signing in to Chrome or iCloud syncs bookmarks and passwords, not a site's IndexedDB. Use DiaryFast's own backup or encrypted sync.
  • Browsers can clear it. Clearing site data deletes the journal. Browsers may also evict website storage when the disk is nearly full, and Safari (iPhone, iPad and Mac) can delete storage of websites you haven't used for a while. DiaryFast asks the browser to treat its storage as persistent, and adding it to your Home Screen as an app helps on iPhone — but a backup is the only guarantee.

Photos are resized and re-encoded in the browser before they're saved, which drops their EXIF data, including the camera's GPS location.

Who can see it on your device

Anyone who can use your unlocked device and browser can open diaryfast.com/app and read the journal — unless you turn on the passphrase lock. So can browser extensions that you've allowed to read all websites, and malware. Keep your device locked, review extensions, and use the passphrase lock if others use the same computer.

What our servers receive and keep

DiaryFast runs on our own server behind Cloudflare. Here is everything that reaches it, and how long it's kept:

  • Page requests. Like any website, our host and Cloudflare keep standard request logs (IP address, URL, time, browser). They never contain journal text, because entries aren't sent with page requests.
  • AI requests. The text needed for the reply passes through and is forwarded to OpenAI. We don't write it to disk or logs. We keep a counter per day per hashed browser id and hashed IP for the free limit, deleted after 3 days. Cloudflare terminates HTTPS at its edge, so like all Cloudflare-protected sites the request is decrypted there in transit. If that matters to you, use your own API key: the request then goes from your browser straight to the AI provider.
  • Encrypted sync (optional, Pro). One row per entry: an id, a revision number, its modified time, a deleted flag, its size and the AES-GCM ciphertext. We can see how many items and bytes you store and when they change — not what they say.
  • Account (only for sync and the weekly reminder): email, sign-in sessions (180 days), your reminder day, and the public salt and check value of your sync passphrase. Sign-in links expire after 30 minutes and are deleted after a day.
  • Payments: email, license key, plan, amount and Stripe ids. Card details stay with Stripe. Payment records are kept for accounting.
  • Anonymous counters such as “an entry was posted today” — no content, no identifiers. Application logs record errors, never journal text, and are kept 30 days.

How the encryption works

Passphrase lock (on this device). Your passphrase is turned into a 256-bit key with PBKDF2-SHA-256 (310,000 iterations, random 16-byte salt) using the browser's built-in Web Crypto API. Each entry, and your saved AI reports, are encrypted with AES-256-GCM and a fresh 12-byte nonce. The passphrase is never stored; a small encrypted check value lets the app tell a wrong passphrase. While the journal is unlocked, entries are decrypted in memory — the lock protects data at rest, not a running, unlocked session.

Encrypted sync. A separate key is derived the same way from your sync passphrase and a salt stored with your account, so every device you sign in to derives the same key. Entries are encrypted in the browser before upload; our server only ever handles ciphertext.

Not encrypted: settings (including an API key you saved for BYOK), the list of which entries changed and when (sync metadata), and anything you send to the AI or export as JSON or PDF.

There is no recovery: if you forget a passphrase, neither you nor we can decrypt the data. Keep a JSON backup somewhere safe.

Check it yourself

  1. Open DiaryFast in Chrome or Edge on a computer, press F12 and open Application → IndexedDB → diaryfast. The entries store holds your entries — or only enc blobs once the lock is on.
  2. Open the Network tab and post an entry with AI replies turned off: no request carries your text. Turn replies on and you'll see one request to /api/ai.
  3. With BYOK on, the AI request goes to api.openai.com or api.anthropic.com instead.
  4. With sync on, look at a /api/sync/push request: the cipher field is base64 ciphertext.

Deleting your data

  • This device: Settings → Erase this device's journal (or clear the site's data in your browser).
  • Our server: Settings → Delete account removes your account, sessions and every encrypted sync copy immediately.
  • Weekly reminder: every email has a one-click unsubscribe link.
  • Payment records can't be deleted while we're required to keep them for accounting; ask through the contact page if you have questions.

The formal version of all this is the privacy policy.

Try it in DiaryFast. Free, no sign-up — your entries stay on your device.

Open privacy settings

Questions

Is DiaryFast end-to-end encrypted?

Sync is: entries are encrypted on your device with a key from your passphrase before upload. The journal on your device is encrypted at rest only if you turn on the passphrase lock. AI replies are not end-to-end encrypted, because the AI has to read the text.

Does OpenAI train on my entries?

DiaryFast uses OpenAI's API. OpenAI's API data policy says API data isn't used to train its models by default and may be kept up to 30 days for abuse monitoring. If you'd rather choose the provider and account yourself, use your own API key.

Can I use DiaryFast without anything leaving my device?

Yes. Turn off automatic AI replies in Settings and don't use weather, voice or sync. Everything else works offline.

Why not store everything on your server like other journal apps?

Because a journal is about as private as data gets. Keeping it on your device means a breach of our server can't expose it.

DiaryFast is a journaling and self-reflection tool, not therapy or medical advice. If you are in crisis, contact local emergency services or a crisis line (US & Canada: call or text 988; UK & Ireland: Samaritans 116 123; elsewhere: findahelpline.com).

DiaryFast Pro

Unlimited AI personas and CBT coaching, weekly and monthly AI reports, encrypted sync, unlimited voice and PDF export. Your journal always stays yours — free or Pro.

24-hour pass

$4.99 once

Everything in Pro for 24 hours from first use. Perfect for a full-month AI review and a PDF of your month. No subscription.

Pro monthly

$9.99 / month

All Pro features, billed monthly. Cancel any time in Settings → Manage subscription.

Secure payment by Stripe. Your key is shown right after payment and emailed to you. Refunds

I have a key

Lost your key?