Duality Privacy Policy
Last updated: 13 November 2026
Duality is a grudge journal for iPhone. This policy explains what happens to your data when you use the app.
In short
- What you write in the journal stays with you. It is stored on your iPhone and, if you turn on sync, in your private iCloud. We never receive it.
- With your choice, the app sends us usage analytics and crash reports. They contain no journal text: no names, no descriptions, no notes.
- You can turn analytics and crash reports off at any time in Settings → Privacy. The app works the same either way.
- We don’t sell data, show ads or track you across apps and websites.
Who is responsible
Duality is developed by Anatolii Zverev, an individual developer based in Israel. He is the controller of the data described in this policy.
Contact: azverinus@gmail.com
Your journal stays with you
Grudges, culprits, descriptions, notes, dates, levels and outcomes are stored in a database on your iPhone.
- iCloud sync. If you turn on sync in Settings → Sync, the journal is copied to your private iCloud database so it is the same on all your iPhones. Apple stores it under Apple’s Privacy Policy. We have no access to your iCloud.
- Export. Export saves the journal to a file that you send or store wherever you choose. We don’t receive it.
- Face ID. If you turn on the app lock, iOS checks your face or passcode. The app only learns whether the check succeeded.
- Widget. The widget shows the number of open grudges and your mood. It reads them from storage shared between the app and the widget on your iPhone.
What we collect
We collect two kinds of data, each with its own switch: Analytics and Crash Reports.
Analytics
Helps us understand which parts of the app people use and where they get stuck.
- Screens you open and the buttons you tap to move around the app.
- Actions, without their content: a grudge was added, edited or deleted; an outcome was chosen; a culprit was renamed; the journal was exported, imported or deleted. Only fixed values are sent with them, such as the level from 1 to 5, the kind of outcome (forgiveness, revenge or letting go) and where the action started (for example, from the widget).
- Errors you see, as a short code.
- Your settings: mood, app language, whether iCloud sync and the app lock are on.
- The number of open grudges as a range (0, 1–5, 6–20, more than 20), never the exact number.
- App events: installed, updated, opened, sent to the background.
- Device and app details: device model, iOS version, app version and build, language and region, time zone, screen size, Wi-Fi or cellular connection, and whether the build is from TestFlight or the App Store.
Crash Reports
Help us find and fix crashes. A report contains where in the code the app crashed, the device model, iOS version and app version.
With both
- A random identifier that the app creates on your iPhone. It doesn’t contain your name, Apple ID, email, phone number or advertising identifier, and it is not shown in the app.
- Your IP address. Our analytics provider uses it to estimate your approximate location (country, region and city) and stores it with the events.
What we never collect
The text of your journal: names of culprits, descriptions, notes. Also the dates of grudges, exact counts, your contacts, your precise location and your advertising identifier (IDFA). The app has no screen recording, screenshots or session replay.
Why and on what basis
| Purpose | Data | Legal basis |
|---|---|---|
| Understanding how the app is used and improving it | Analytics | Consent, or our legitimate interest outside the regions listed below |
| Finding and fixing crashes | Crash Reports | Consent, or our legitimate interest outside the regions listed below |
Our legitimate interest is to understand whether the app works and is useful, using the minimum of data and no journal content. You can object at any time by turning the switch off.
You don’t have to share any of this data. If you don’t, all features of the app work the same.
We don’t make automated decisions about you and don’t build profiles. Analytics is not used for advertising.
How you choose
When you first open the app, a page called “Help Improve Duality” asks about analytics and crash reports. Which question you see depends on the country of your App Store account.
- European Economic Area, United Kingdom, Switzerland and Russia, and whenever the country can’t be determined: nothing is collected until you choose. “Allow” turns both on, “Don’t Allow” leaves both off.
- Other countries: both are on, and the page tells you about it. “Customize” lets you turn either off right there.
You can change your choice at any time in Settings → Privacy:
- Analytics. When you turn it off, the app stops sending events right away.
- Crash Reports. The change takes effect after you restart the app. When crash reports are off, the app deletes unsent reports on launch.
- When both are off, the app stops the analytics library and creates a new random identifier, so earlier data is no longer connected to your device. Events collected before you turned analytics off may still be sent once.
- Delete All Data in Settings also creates a new random identifier. Your choice about analytics stays.
If we start collecting data for a new purpose, the app will ask you again.
Who receives the data
- PostHog, Inc. stores and processes analytics and crash reports for us as a processor under a data processing agreement. The data is stored in PostHog Cloud EU, in Frankfurt, Germany.
- Apple provides the App Store and iCloud under its own privacy policy. If you share diagnostics with app developers in your iPhone settings, Apple also sends us aggregated statistics and crash logs. That is controlled by iOS, not by Duality.
We don’t sell or share data with anyone else.
Transfers outside your country
Analytics and crash reports are stored in the European Union. The developer accesses them from Israel, for which the European Commission has an adequacy decision. PostHog, Inc. is a US company; where its staff may access the data, the transfer is covered by the safeguards in PostHog’s data processing agreement.
If you are in Russia, your data is stored outside Russia, in the European Union. By choosing “Allow”, you agree to this transfer.
How long we keep it
Analytics events and crash reports are deleted after one year. Your choice about analytics is stored only on your iPhone until you delete the app.
Your rights
Depending on where you live, you have the right to access, correct and delete your data, restrict or object to its processing, receive it in a portable format, and withdraw consent. Withdrawing consent doesn’t affect data collected before.
The data we receive is pseudonymous: we don’t know who you are, and the identifier is not shown in the app. Because of this, we may not be able to find your data from a request alone. If you send us details that let us find it, we will act on your request. Otherwise, turning off the switches and using Delete All Data is the most reliable way to stop the connection with your device.
Send requests to azverinus@gmail.com. We reply within one month.
You can also complain to a data protection authority, for example in the country where you live or work. In Israel, that is the Privacy Protection Authority.
Children
Duality is not intended for children under 13. In the European Economic Area, users under 16 need a parent’s or guardian’s consent for analytics and crash reports. We don’t knowingly collect data from children. If you believe a child has sent us data, write to azverinus@gmail.com and we will delete what we can find.
Changes to this policy
When this policy changes, we update the date at the top. If the change affects what we collect or why, the app will ask for your choice again.