MAZAO PRIVATE STRENGTH LOG

Privacy Policy for Mazao

Last updated: 7 September 2026

Mazao is a workout tracking application published by Djinn Foundry S.L.

What we collect

Your training data never leaves the device. We do not receive your workout history, your body measurements, your notes, or anything you record. There are no user accounts and no advertising.

Three kinds of service data can leave the device. They are listed here in full. A complete core set of exercise illustrations and guidance is installed with the app, so opening an exercise contacts nobody and reveals nothing — not even that you opened it. Earlier releases loaded individual exercise images from a third-party host; that path remains removed, and Changes below records when it went.

Crash reports, in the version published on the store. The store build sends crash and error diagnostics to Sentry so that a crash can be fixed. A report contains the technical state of the failure - device model, operating system version, and the code path that failed. It does not contain your training data, and that is enforced mechanically, not assumed: before anything is sent, every report is rebuilt from a fixed allowlist of technical fields. Exception text, messages, breadcrumbs, navigation state, file paths, local variables and arbitrary attached data are removed rather than shortened. The remaining report contains the exception type and a scrubbed code path. Only failures are sent: the app does not sample performance traces or profiles from a normal session. Builds compiled without a Sentry key, including every debug build, send nothing.

Limited product analytics. During the alpha, these events are on by default and there is no control for them in Settings. The app sends two events to PostHog (EU servers):

Event What it carries
A workout was completed The number of workouts completed so far, as a count
The app was opened How many whole days since install

Those two counters are what Mazao chooses to send. PostHog's own software adds some technical context to every event - your platform, operating system and app version, language and timezone - and creates a random identifier so that repeated events can be counted as one person. That identifier is not your name, your email or your device's serial number, and it is not derived from anything you record.

What is never sent: exercise names, weights, repetitions, dates, notes, measurements. The events are processed on servers in the European Union.

Reset Data stops the sender, drops anything still queued and discards the random identifier before clearing local data. Events already processed by PostHog are not deleted by that local reset. This alpha limitation must be resolved before beta.

Purchase state. The complete-app one-time unlock is sold through Apple App Store or Google Play. RevenueCat validates the store's purchase receipt. Under a random identifier the app generates — there is no account, and your name, email and payment details stay between you and the store — the app asks RevenueCat whether the unlock is owned. That question is asked when you open the purchase screen, when you buy or restore, and, once your first twelve workouts are behind you, when the app works out which features you have. If you own the unlock, the app also re-checks it in the background about once a week, so that a refunded or cancelled purchase is noticed; the answer already on your device is what the app acts on, so a re-check that fails changes nothing.

The first 12 completed workouts are included for new profiles; after that, starting another workout requires the unlock. Existing free access is preserved. Reading, correcting and exporting history do not require purchase. The trial count and profile's access cohort are stored locally and travel with a complete backup. Ordinary trial access checks do not contact RevenueCat; opening the purchase screen, buying or restoring can do so even during the trial. Purchases can be restored through the same Apple or Google store account. An Apple purchase does not transfer to Google Play, or vice versa.

What the app stores on your device

Everything you enter stays on the device where you entered it:

This data is held in an encrypted database on the device. The encryption key is kept in the operating system's secure storage (iOS Keychain or Android Keystore). Uninstalling the app removes it. You can also erase everything from within the app, in Settings, under Reset Data.

Backups you create

The app can export a backup file containing your data. That file is created at your request and goes wherever you send it. Once you share it - to cloud storage, to another device, to anyone - it is outside the app's control and subject to whatever service you sent it to. We never receive a copy.

Development builds include an operator-only review of catalogue problems recorded locally — a search with no result, an unmatched imported name or a failed equipment-aware swap. It is absent from the public Settings screen. Nothing is sent automatically. When an operator explicitly exports selected groups, the JSON contains the selected term, occurrence counts, equipment context, app area, language, catalogue versions and calendar days. It omits precise times, workouts, sets, history, measurements, notes, profile answers and identifiers.

Permissions

Children

Mazao is not directed at children. Nothing the app sends identifies anyone, at any age: crash reports describe a failure, and the limited usage counters are two numbers. We hold no account, no email and no profile for any user.

Changes

This policy is updated before a version that changes what leaves the device is published, and the change is described in the release notes. The list under What we collect is complete: if something is not on it, the app does not send it.

7 September 2026. The complete-app offer uses a local 12-completed-workout trial for new profiles and preserves previous access. Purchase validation covers both Apple and Google stores. Training records remain local; this change adds no training-data upload or recurring service.

29 August 2026. The alpha enables the closed two-event product-analytics surface by default and removes its public Settings control. Catalogue feedback is now operator-only, and Profile is a visible training setting rather than an Advanced tool. The policy and compliance source record this alpha behavior and the deletion-control gap that must be closed before beta.

27 August 2026. The alpha includes one main local illustration triptych for each of its 282 built-in exercises. The other persona variants remain outside the packaged app. Instructions, training data and bundled illustrations remain available offline; no illustration is downloaded or rendered from a URL.

26 August 2026. The planned optional illustration-pack path was removed before beta. The app installs one diverse, complete illustration set and reads it locally. It does not download exercise artwork or select artwork from sex or age. The additional persona-source plates remain outside the shipped app for offline review and create no network request or network metadata.

18 August 2026. The leftover named below has been removed, and so has the machinery behind it. Versions before this one still contained the code that used to download an exercise image. A new installation had nothing to hand it, but two situations could: restoring a backup taken from an older version, and upgrading from a version old enough that the exercises saved on your device were not recognised as the app's own built-in ones. In the second case the old addresses stayed in your database and could be requested for as long as that version was installed — we had described this as lasting only until the next launch, which was true of some upgrades and not of others, and this entry corrects it.

In version 0.3.1, published on 18 August 2026, that code is not there at all. The parts of the app able to fetch an image or a video have been deleted, so neither situation can produce a request any more, and backup files no longer carry an image address in either direction — an export does not write one out, and a restore discards one on the way in. This changed nothing the app sends. It changed what the app is capable of sending: from that version on, exercise illustrations can only come from your own device. If you are still on an earlier version, the two situations above still describe it until you update.

16 August 2026. Every exercise now ships with its own illustrations inside the app. In earlier versions a small number of exercises — six of them — loaded an image from a third-party host instead, which meant that opening one of those exercises revealed your IP address, and which exercise you were looking at, to that host. Nothing replaced that request. It was removed, and the app makes one fewer kind of connection than it used to. One leftover is worth naming: if you restore a backup you exported from an older version, those six exercises keep their old image address until you next open the app, which replaces them.

Contact

[email protected]