← thingsthingsthings.studio

Journal Thing — Privacy Policy

This policy applies to the Journal Thing apps for iOS, macOS, watchOS, Android, and Wear OS and to the Journal Thing web journal at journalthing.com/app, published by Things Things Things LLC ("we", "us", "our"), the controller responsible for the processing described here. Our business address is 1401 Dean St Apt 1, Brooklyn, NY 11216, United States. Contact us at hello@journalthing.com. Sections below say which platform they describe when the two differ. It is specific to the apps — the Things Things Things website privacy policy covers thingsthingsthings.studio separately.

What we collect

Your journal content is local by default. Sync and dictation send data only when you use them. We also collect limited app-usage analytics:

What stays on your device

Everything you create in the app is written to local storage on your iPhone, iPad, Mac, or Android device, and stays there:

On iPhone, iPad and Android, deleting the app removes its local storage. On Mac, moving the app to Trash does not remove its journal data; local data must be removed separately. Exported backups can remain wherever you saved them. The Apple Watch app and home-screen widgets use journal data from your devices. Wear OS keeps a phone-provided snapshot, unsent entries waiting for the phone, and recoverable dictation drafts. Its local data is excluded from Android cloud backup and device transfer. Watch dictation uses the optional cloud service described below; Wear OS asks for cloud-dictation consent separately. Journal content is never included in analytics. We receive content through optional hosted sync, dictation processing, or feedback you choose to send, as described below.

Earlier iCloud copies

Journal Thing no longer offers iCloud sync. An iCloud copy created by an earlier version is left untouched, and your local journal stays on your device. You can remove an earlier iCloud copy through your Apple Account's iCloud storage controls in iOS Settings. Apple's handling of that copy is governed by Apple's Privacy Policy.

Journal Thing Sync — iPhone, iPad, Mac, Android, and web (optional, off by default)

Journal Thing Sync keeps one journal current across iPhone, iPad, Mac, Android, and the web journal at journalthing.com/app. When you sign in:

Turning sync off does not delete the copy on our server. Disconnecting signs this device out and stops syncing; the journal already in your account stays there. To erase it, use Settings → Your Data → Journal Thing Sync → "Delete sync account" on iPhone or iPad, Settings → Sync → "Delete sync account" on Mac, Settings → Your Data → Sync & Backup → "Delete sync account" on Android, or Settings → Security → Delete Account in the web journal. Each permanently deletes your account and the journal and photos stored in it, and signs this device out. The journal on your device is not touched. You can also email hello@journalthing.com from the address you signed in with, or follow the steps at journalthing.com/delete-account.

The web journal

journalthing.com/app is the same journal in a browser, available once you sign in to Journal Thing Sync. It keeps your display preferences, recent searches, and the reply address you type into its feedback form in your browser's local storage. It uses the same limited analytics and crash reporting as the apps, with the same opt-out switch in its Settings, and its feedback form works like the in-app one. When analytics is on, Google Analytics sets first-party cookies named _ga and _ga_<container ID>, which hold a random client ID, and Firebase keeps a random installation ID in your browser's IndexedDB storage. They are set only after analytics is allowed, and they are not used for advertising. Turning analytics off stops these events; clearing the site's data in your browser removes the cookies and stored ID. Older journalthing.com email-and-password accounts are separate from Journal Thing Sync accounts. The current web journal's Delete Account action deletes the signed-in Sync account; it does not delete a separate legacy account. For a legacy account, email hello@journalthing.com from its registered address so we can verify and handle the request.

Test and reviewer service

Builds labeled sandbox use a separate test service with separate accounts, journal records, photos and purchase-verification state. Production accounts and purchases do not grant access to that service. Its sync is still optional and copies journal data to the service when enabled; use an empty test profile and synthetic entries. The processing and privacy controls described in this policy also apply to the test service. Deleting a test account does not delete a separate production account.

Voice dictation (optional)

On Mac, dictation runs on your device. The app downloads a Whisper speech model from Hugging Face when you request it, then transcribes recordings locally. The model download requires an internet connection; the download provider receives the network information needed to deliver it. Your Mac dictation audio is not sent to our transcription relay or OpenAI. Local recordings and unfinished dictation drafts may remain on this Mac while transcription is pending. You can remove the downloaded model in Settings → Dictate.

On iPhone, iPad, Apple Watch, Android, Wear OS, and the web, voice dictation uses our optional cloud service. While you dictate, your audio is sent over an encrypted connection to our transcription relay, hosted by Cloudflare, and forwarded to OpenAI's speech-to-text service, which returns the text in real time. About that audio:

Cloudflare also processes network metadata, such as IP addresses, request times, and URLs, to deliver and secure our service. We have not enabled stored Worker request logs or log exports. Cloudflare's operational metadata is separate from dictation content and follows its own privacy and retention practices; we do not promise that all network metadata disappears when a transcription request ends.

Limited app-usage analytics

Journal Thing sends PostHog and Google Analytics for Firebase a small, allowlisted set of product-usage events to help us understand whether features are useful and where the app needs work. These may include app launches, coarse session duration, feature interactions, app version, platform, OS version, and broad device type. We attach an app-scoped random installation ID so we can count sessions without using your name, email, account ID, or an advertising identifier, and we ask PostHog not to derive a location from your network address. Google Analytics does estimate an approximate location, as described below. Crash reporting uses its own random installation ID for session-health records, described under Crash reports.

Android events include app opening, onboarding completion, entry creation or deletion, setting or clearing a mood, adding, removing or tapping a tag, completed dictation, attaching a photo, performing a search, and opening Rewind. A journal summary sends only entry, tag and mood-day counts. Other properties can say whether a prompt was used, which built-in mood pack was used (all custom packs share one generic category), and the feature where an interaction happened. These events record occurrences, not the content involved.

These app-usage events never include journal entries, titles, prompt text, names, mood ratings, tag names, todos, daily intentions, search text, typed text, dates from your journal, locations, photos, audio, transcripts, or other content you create. We do not use autocapture, session replay, advertising profiles, or tracking across other companies' apps or websites.

Google Analytics for Firebase. The same allowlisted events, with the same properties, also go to Google Analytics for Firebase, operated by Google LLC (United States), which processes them for us as a service provider under the Google Analytics data processing terms. Firebase adds its own standard events for first open (first visit on the web), session start, and engagement time, together with app version, OS version, and device model. It identifies the installation with its own random app-instance ID; the web journal uses a random client ID and Firebase installation ID instead, described under "The web journal". Google receives your network IP address with each request and uses it to estimate an approximate location, such as country and region; Google Analytics does not log or store the IP address itself. We have turned off granular location and device data collection. We never send Google your name, email address, account ID, user properties, an advertising identifier, or Apple's identifier for vendor. We do not turn on Google signals or ad personalization: advertising storage, ad user data, and ad personalization consent are always denied. We do not record automatic screen views. Only the versions distributed through the App Store, Google Play, and journalthing.com send these events; development builds do not.

We use analytics only to improve and operate Journal Thing. The events are processed for us by PostHog, Inc. (United States) under contractual limits that prohibit selling the data or using it for its own advertising. PostHog stores these event records. Our current plan lists a 12-month query window. That window limits access to older events when enforced; it is not a promise that stored events are deleted after 12 months. We have not confirmed a fixed deadline for deletion of all stored copies. Google Analytics keeps event-level data for 2 months under our data-retention setting, and Google deletes data under its data processing terms; aggregated reports built from those events can remain after that. Turning analytics off stops future collection from that device; it does not delete events already sent.

You can turn this off. Settings → Security → "Share anonymous analytics" stops PostHog and Google Analytics usage events and Sentry crash reports and session-health records on that device. The switch does not stop RevenueCat purchase management or its purchase and subscription reporting, described below.

Regional consent controls. We are introducing explicit opt-in for optional analytics and crash reports in the European Economic Area, the United Kingdom, Gibraltar, Jersey, Guernsey and the Isle of Man. In versions with these controls, reporting stays off until you turn it on in Settings when you are in those places. Elsewhere it is on by default after country resolution, and you can turn it off. Session-health records are also opt-in for users in California: they stay off there until you turn reporting on in Settings, and they stay off if the app cannot tell which US state you are in. An existing opt-out is respected everywhere; an older default-on setting is not treated as consent. If country cannot be determined, reporting stays off unless you have explicitly enabled it.

To apply this default, updated versions request a country estimate, and a state or region where available, from our existing Cloudflare service, based on the network IP address, at launch and when returning to the app. The app keeps them only in memory and does not send them or the lookup response to PostHog, Google Analytics, or Sentry. Our service does not log or store the lookup. VPNs and proxies can affect this estimate.

Rollout notice. Older installed versions and the web journal before its consent update may still enable reporting by default. You can turn it off in Settings → Security → "Share anonymous analytics". Publishing this policy does not update an installed app.

Crash reports

If Journal Thing crashes or hits an internal error, a diagnostic report is sent to Sentry (Functional Software, Inc., United States), which processes it for us as a service provider. A report contains technical details such as stack symbols, app version, OS version, device model, the affected feature and operation, a fixed error category, HTTP status family, bounded retry count, and approved app-operation breadcrumbs — never journal entries, titles, tag names, search text, or other content you create, and never an advertising identifier. Updated versions also send Sentry session-health records: when the app started and ended, whether that session crashed, and the app version. In the iPhone, iPad, Mac and Android apps, these records are tied to the app's random installation ID, not to your name, email or account; the web journal's records carry no installation ID. Sentry does not store your IP address. We use these records to see how often each version crashes. Crash reports received during our current Sentry trial have a 90-day retention period in its live service. If the account moves to the free Developer plan, newly received reports have a 30-day period; earlier reports keep the period assigned when received. Sentry deletes individual events after their retention period. Backup copies follow a separate schedule: Sentry deletes them 90 days after each backup is created, so copies may remain after an event leaves the live service. See Sentry's plan retention periods and backup deletion practices. The Settings → Security analytics switch turns crash reporting off along with analytics; it does not erase reports already sent.

No sale of data, ads, or cross-app tracking

We do not sell or rent personal data. We do not show ads, use IDFA or Google signals, or combine Journal Thing data with data from other companies' apps, websites, or offline properties for advertising or ad measurement. We share data only with service providers—Supabase for Journal Thing Sync, Cloudflare for our web service and relay, OpenAI for transcription, RevenueCat for purchase management, PostHog and Google (Google Analytics for Firebase) for limited app-usage analytics, Sentry for crash reports, Resend for feedback and letter delivery, and Hostinger for our support mailbox—or when law requires it. Those providers must protect the data and may use it only to provide their service to us.

Device permissions

Backups you create

Journal Thing can export a backup file of your journal, which you can optionally protect with a passphrase. Backup files are created on your device and go wherever you save or share them using the system's file picker or share sheet. If you choose a passphrase, only you have it — we cannot recover a backup whose passphrase has been lost.

Android's automatic journal snapshots are device-only. Android cloud backup and device transfer exclude the journal databases, their SQLite sidecars, recovery copies and local snapshots. To keep a copy outside the device, export a backup to a location you control or enable hosted sync. Uninstalling, clearing app storage or losing the device can remove local copies. If a newer journal database must be preserved for recovery, the app explains how to export it; that recovery ZIP is unencrypted and is intended for support-assisted recovery, not normal backup import.

Purchases

Feedback and support

The in-app feedback form sends us the message you type, the email address you choose to enter (optional, so we can reply), and — only if you turn on the per-message toggle, which is off by default — a screenshot of the screen you were on (iPhone and iPad) or an image you choose (Mac). On Mac, you select a screenshot yourself, cover any private details, and confirm your review before attaching it. Screenshots can show your journal, so please check them before sending. On iPhone, iPad, and Mac, diagnostic details, including app version, OS version, device model, and language, are included only when you enable the separate diagnostics toggle for that message; it is off by default. Other platforms include basic technical context to help us reproduce problems. Feedback sent in the app reaches our support inbox through our email delivery provider (Resend, United States). On Mac, reports with screenshots and reports sent without a signed-in Journal Thing account open a draft in your email app instead. You review and send that draft through your chosen email provider. On our current plan, Resend retains email and delivery logs for 30 days; its backups persist for seven days. See Resend's retention practices. Our support mailbox is hosted by Hostinger. We keep the inbox copy only as long as needed to respond and fix the issue; the Resend delivery window does not automatically delete that copy. Messages deleted into Hostinger's Trash may remain there for up to 30 days before permanent deletion, as described in Hostinger's deleted-email guidance. Email to hello@journalthing.com is handled with the same support-retention criteria.

When you delete your Journal Thing Sync account, messages from, to, or about that account's email address are permanently deleted from every folder of our support mailbox, Trash included, within 14 days. Mail that arrives after the deletion is new correspondence. Deleting the account does not remove Resend's copy of feedback you sent; that copy follows Resend's schedule above, up to 37 days in all.

The Journal Thing letter (optional)

If you sign up for the letter on journalthing.com, we store your email address, whether it is waiting for confirmation, confirmed, or unsubscribed, and the times of those changes. The list is kept in our Cloudflare database. To limit abuse, a one-way hash of your connection's IP address is kept for about a day; the address itself is not stored. We use your email only to send the letter, about once a month when something new ships. Nothing is sent until you confirm from the first email, and an unconfirmed sign-up is deleted seven days after its last confirmation email. The letter is sent through our email delivery provider (Resend, United States), which keeps your address in our contact list there and keeps its delivery logs on the schedule above. Every letter has an unsubscribe link that takes effect at once. After you unsubscribe we keep the address marked as unsubscribed so we do not write to it again; to have it deleted entirely, email hello@journalthing.com. The letter is separate from the app: signing up creates no Journal Thing account, and deleting a sync account does not remove a letter sign-up.

Apple's role

Children's privacy

Journal Thing is not directed to children under 13, and we do not knowingly collect personal information from children under 13. If you believe a child has provided personal information through Journal Thing Sync, analytics, or support, contact us and we will investigate and delete it where required.

Your rights

Rights such as access, correction, deletion, and portability normally apply to data a company holds about you. Unless you sign in to Journal Thing Sync, we do not hold a copy of your journal: entries live on your device. You can export them before removing the on-device copy. On Mac, moving the app to Trash does not remove its journal data; its local data must be removed separately. Earlier iCloud copies and exported backups also remain until you remove them separately.

If you signed in to Journal Thing Sync on any platform, we do hold a copy, and those rights apply to it. You can delete your sync account and its server-held journal with "Delete sync account" (Settings → Your Data on iPhone, iPad and Android; Settings → Sync on Mac) or, in the web journal, Settings → Security → Delete Account. This action removes the account; it does not keep the account while permanently erasing selected journal records. For a copy of your data or another privacy request, email hello@journalthing.com from the address you signed in with. Contact us about requests that the app does not support directly.

PostHog and Google Analytics app-usage analytics, and Sentry session-health records, are associated with random installation or client IDs rather than your name or account. Because we deliberately do not keep a lookup from your identity to those random IDs, an email address alone may not let us locate event-level analytics or session-health records for an individual installation.

Depending on your location and the applicable law, you may also have rights to restrict processing, object to processing, and receive a portable copy of personal data. Where processing relies on consent, you may withdraw it without affecting the lawfulness of earlier processing. Contact us to exercise these rights; some rights have legal limits or exceptions. People in the European Economic Area can complain to their local data-protection authority, and people in the United Kingdom can complain to the Information Commissioner's Office.

Retention and deletion

Changes to this policy

If this policy changes, we will revise the "Last updated" date above and describe any new data practice clearly before it ships.

Contact

Questions about this policy or about Journal Thing? Email hello@journalthing.com.