Privacy Policy

Dial-In for iPhone — effective October 2026.

Dial-In is an espresso shot tracking app made under the PierDo name by the independent developer shown as the seller in its App Store listing. Free Core shot logging, CSV tools, and the deterministic Dial-In Coach work locally without an account. Dial-In Lab is an optional permanent local-toolkit purchase. Dial-In for iPhone has no account and no sign-in, and PierDo runs no server that receives your Dial-In data.

Local data

Espresso shot logs, bean profiles, equipment settings, preferences, deterministic Coach state, and Coach results are stored locally on your device using IndexedDB. If used, Dial-In Lab also stores recipe revisions, controlled-session pull snapshots and recaps, optional temperature/pressure/preinfusion/basket/puck-prep/water/roast/open-date/gear fields, multiple gear and maintenance profiles, and the last generated consistency/freshness report locally in IndexedDB. The free local Coach and every Free Core feature work without an account, RevenueCat, or a remote service.

Lab consistency and freshness outputs are descriptive local summaries, not scientific or safety measurements. When active Lab ownership is later refunded or revoked, existing Lab artifacts remain readable and exportable, but the app blocks new premium creation/editing and does not recompute new Lab analytics from later Free Core shots.

Dial-In excludes the folder where it keeps its local data (shots, beans, equipment, preferences, and Lab data) from iCloud and device backups. Records you delete are therefore not brought back by restoring a backup.

Purchases

Purchases are optional and are handled by Apple through the App Store. Dial-In uses RevenueCat, a purchase service, to check and restore what you bought. Apple processes your App Store purchases under its own terms and privacy policy.

When you discover, purchase, or restore Dial-In Lab, or buy a tip, the RevenueCat SDK and the App Store process purchase history and transaction information (including Apple transaction identifiers), device type and operating system version, and locale/currency as needed for purchase functionality, fraud prevention, and RevenueCat service analytics. RevenueCat does not receive Dial-In notes, bean/roaster/origin names, CSV or Lab export files, full shot history, or Lab recipes/sessions/advanced fields. RevenueCat may also receive technical information such as your IP address and a device identifier, as described in its privacy policy. Purchase history is encrypted in transit, is not processed only ephemerally, and is required only when you enter an optional purchase path.

Dial-In Lab is a separate non-consumable product, dial_in_lab_lifetime, with entitlement dial_in_lab. Its purchase and restore need no account or sign-in. RevenueCat creates an anonymous, install-scoped App User ID on your iPhone for this. Dial-In stores a namespaced SHA-256 binding of the current RevenueCat original App User ID with the exact product ID, schema version, and verification time; it does not persist the raw App User ID in Lab storage. A verified same-owner exact inactive/refund signal removes the cached unlock, while offline/error/unknown or a different RevenueCat owner cannot erase an established grant. An exact active restore may rebind the grant to the current App Store purchase owner. Advanced shot context is stored in the local Lab record keyed by shot ID rather than in the Free Core shot record.

Dial-In Lab is a one-time local unlock, not a subscription, and has no recurring charge. The App Store supplies the localized price before purchase, and the price shown by the App Store for your storefront is authoritative.

If a Lab purchase result is unresolved or a Lab purchase operation is still running, Dial-In blocks Delete All Data until you use Restore / check or the operation finishes. If you delete the app or its data, you can restore Dial-In Lab on the same Apple Account with Restore / check.

Apple and RevenueCat may retain purchase, fraud, tax, or audit records under their own policies and legal obligations. Delete All Data does not erase records those companies must legally retain.

Optional tips

Optional tips are repeatable App Store in-app purchases with preset localized amounts. They add no Lab access or other app features. RevenueCat processes tip transactions using the same purchase data described above. A separate local record stores the product, purchase-owner identifier, pre-purchase transaction identifiers and pending status so an uncertain result cannot start a duplicate payment. Tips are separate from Lab ownership.

Data deletion

Deleting one shot, deleting all shots, or replacing shots/beans from CSV also deletes the advanced Lab fields attached to the deleted core shots. Controlled-session recaps intentionally contain their own immutable dose/yield/time/grind/taste pull snapshots, so those saved recap measurements remain after a core shot deletion and are labelled as a deleted-shot saved snapshot in Lab. Delete All Data removes those session snapshots and recaps.

After you confirm Delete All Data, Dial-In stores a local-purge-pending marker so an interrupted purge resumes after restart, and atomically advances Lab entitlement/data generations so a late save cannot recreate cleared Lab content. Deleting the app removes local Lab data and may remove its cached offline grant. Dial-In has no account or server-side copy of your data to delete. To ask about purchase records held by Apple or RevenueCat, write to the contact address below.

Other collection and permissions

Age audience

Dial-In is intended for adults age 18 and older and is not directed to children.

Changes and contact

We may update this policy. Material changes will update the effective date above.

Privacy questions and deletion support: pierdo.dev@gmail.com.

← Back to PierDo