On this page
Privacy Policy
CaffCurve — Caffeine & Sleep Tracker
JappJ Studio, operated by Julian Junker
Effective date: September 30, 2026
Last updated: October 17, 2026
1. Who We Are
CaffCurve (“the App”) is published by:
JappJ Studio
A sole proprietorship of Julian Junker
Aarbergstrasse 46
2503 Biel/Bienne
Switzerland
Email: privacy@jappjstudio.app
Website: jappjstudio.app
JappJ Studio is the data controller for the processing described in this Privacy Policy. This policy is designed to comply with the Swiss Federal Act on Data Protection (nFADP/revDSG), and, where applicable, the EU/UK General Data Protection Regulation (GDPR) and US state privacy laws (see Section 9.3).
2. Summary (TL;DR)
- Your caffeine logs, sleep settings, and history stay on your device (or in your own private iCloud, only if you turn on iCloud Sync). We have no servers that store them, and we never receive them.
- We collect limited, anonymous subscription analytics. So we can see how many people start a free trial, subscribe, or cancel, your purchase events are reported to RevenueCat, Inc. under a random ID that is not linked to your name, email address, or Apple ID. This contains no caffeine, sleep, or health data. See Section 6.
- No advertising and no tracking. We do not use advertising SDKs, we do not sell your data, and we do not track you across other apps or websites.
- Payment processing is handled entirely by Apple. We never see your payment details.
- You are in full control of your caffeine and sleep data at all times.
3. Data We Collect — Summary Table
| Category | What | Source | Purpose | Legal basis | Recipient | Stored where | Retention |
|---|---|---|---|---|---|---|---|
| Caffeine & sleep logs | Drink entries, custom drinks, sleep schedule, half-life setting, badges, display name | You, entered in the App | Provide the App’s core features | Contractual necessity | Nobody — stays on-device (or your private iCloud) | Your device / your private iCloud container | Until you delete it or uninstall |
| Subscription analytics | Anonymous app user ID, purchase/trial/renewal/cancellation/restore events, App Store country, OS/app version, locale | RevenueCat SDK (generated on-device) | Understand trial conversion, churn, revenue; support purchase verification | Legitimate interests (EU) / consent to processing implicit in using a paid feature (CH) | RevenueCat, Inc. (USA), as our processor | RevenueCat’s servers (USA) | While we operate our RevenueCat account, or until deletion is requested |
| Apple purchase data | Subscription status (active/expired) | Apple StoreKit | Unlock paid features | Contractual necessity | Apple (independent controller) | Apple’s systems | Per Apple’s own policies |
| Support emails | Whatever you choose to tell us | You, if you email us | Respond to your question | Legitimate interests / consent | Nobody beyond us | Our email provider | Until resolved, then deleted within a reasonable period |
Sections 4–6 describe each of these in detail.
4. Data We Do Not Collect
We want to be explicit about what we do not do:
- We do not collect your name, email address, or any contact information (unless you choose to email us)
- We do not collect your caffeine logs, drink data, sleep schedules, or badge progress — this data is never sent to us or to RevenueCat
- We do not use advertising networks or sell your data to third parties
- We do not use advertising or product-usage analytics SDKs (such as Firebase, Mixpanel, Amplitude, or similar), and we do not measure how you use the App’s features beyond the subscription events described in Section 6. The only third-party service in the App that receives data is RevenueCat, used solely for subscription analytics
- We do not track your behaviour across other apps or websites, and the App does not show the App Tracking Transparency prompt because it does not track
- We do not collect crash reports that contain personally identifiable information
- We do not build advertising or behavioural profiles about you
- We do not collect consumer health data as defined by the Washington My Health My Data Act, Nevada SB 370, or comparable US state laws, and we do not process special categories of personal data under GDPR Article 9. See Section 5.
5. Data Stored on Your Device (Health-Related Data)
All data you enter into the App is stored exclusively on your device using Apple’s SwiftData framework. This includes:
- Caffeine logs (drink type, amount in mg, timestamp)
- Custom drink definitions you create
- Sleep schedule settings (bedtime, wake time, caffeine half-life preference)
- Daily activity and no-caffeine day markers
- Badge progress and selected home badge
- Your display name (optional)
- App preferences
This information relates to caffeine consumption and generates an estimated bedtime caffeine projection. It:
- Is stored solely on your device (or your own private iCloud, see Section 7) — we cannot access it
- Is never transmitted to us or any third party. The subscription analytics in Section 6 contain no caffeine, sleep, or health data of any kind
- Is not integrated with Apple Health (HealthKit) in the current version — the App does not read from or write to the Health app. If HealthKit integration is added in a future version, we will update this policy and request your explicit permission first
- Is not “consumer health data” as regulated by the Washington My Health My Data Act, Nevada SB 370, or similar state laws, and does not constitute a special category of data under GDPR Article 9, because it never reaches us or any server we control. We are describing our own data flows, not offering a legal conclusion about your jurisdiction’s definitions.
You can permanently delete all of this data at any time using Profile → Sync & Data → Delete All My Data within the App, or by deleting the App from your device. (The subscription analytics record described in Section 6 is held by RevenueCat, not on your device — see Sections 8 and 9 for how to have it deleted.)
6. Subscription Analytics (RevenueCat)
To understand how the App’s subscriptions perform — for example how many people who start a free trial go on to subscribe, how many cancel, and how long subscribers stay — the App uses RevenueCat, a subscription analytics service, in observer mode. RevenueCat only watches purchases; Apple’s StoreKit remains the sole source of truth for whether your subscription is active, and completes every purchase.
Processor: RevenueCat, Inc. (United States). RevenueCat acts on our behalf as a data processor. Its privacy policy is at revenuecat.com/privacy.
What is sent to RevenueCat:
- An anonymous app user ID. It is generated randomly by RevenueCat’s SDK on your device. We do not supply it, and we do not link it to your name, email address, Apple ID, or any account. Because it is a persistent identifier connected to your purchases, data protection law may still treat it as personal data, and this policy treats it that way.
- Purchase and subscription history: which subscription you bought, and the dates and prices/currency of purchases, free-trial starts, renewals, cancellations, refunds, and restores, together with Apple’s transaction identifiers.
- Basic device and app information: your App Store country/storefront, iOS version, App version, and device language/locale.
- Your IP address, as a normal by-product of any request your device makes to RevenueCat’s servers over the internet — this is true of essentially any online service, not something the App sends deliberately. We understand this is typically used only to route the request and may be used to derive an approximate country. RevenueCat’s own documentation does not give us a more specific statement of purpose for IP data, so we describe it neutrally here.
What is never sent: your caffeine logs, drinks, sleep settings, badge progress, display name, or any other health or usage data you enter in the App. Your Apple ID and payment details are also never sent.
Why: subscription analytics (trial conversion, churn, revenue, and retention) and support for verifying purchases. RevenueCat is not used for advertising or tracking: your data is not used to show you ads, is not shared with advertisers or data brokers, and is not used to track you across other apps or websites.
How to exercise your rights over this data: because the ID RevenueCat holds is anonymous, we have no way to look up your record from your name or email alone. In Profile → Sync & Data, the App shows a Subscription Analytics ID with a copy button — send us that ID (Section 17) and we will action your request with RevenueCat. If you no longer have the App installed, you can alternatively send us the order ID from your Apple purchase receipt email, which we can use to ask RevenueCat to locate the matching record.
7. iCloud Sync (Optional)
CaffCurve offers optional iCloud Sync, off by default. If you turn it on in the App’s Profile settings:
- Your data is synchronised across your Apple devices using your personal iCloud account
- Data in transit between your devices is encrypted by Apple
- The data is stored in your private iCloud container, using Apple’s CloudKit framework — we cannot access it, and it never touches our servers
- You can turn iCloud Sync back off at any time in the App’s Profile settings. Your data then stays local to each device and stops syncing, though data already in iCloud remains there until you remove it (via iOS Settings, under your Apple ID, then iCloud, then Manage Storage)
- If you’re not signed into iCloud, or iCloud is restricted on your device, your data simply stays local; the App still works normally
This feature is governed by Apple’s iCloud Terms and Conditions.
8. Apple Platform Data
When you purchase a subscription through the App, payment is processed entirely by Apple through the App Store. The App receives from Apple only a confirmation of whether your subscription is active or expired (via StoreKit), which is what unlocks the App’s features. No payment card details, billing address, or personal information linked to your Apple ID is ever shared with us.
Your device’s operating system (iOS) may collect certain technical information independently of our App (e.g., for App Store analytics, crash reporting via Apple). This data is collected by Apple, acting as an independent controller, not by us, and is governed by Apple’s Privacy Policy. We access only anonymised aggregate data about App Store downloads that Apple makes available to all developers — this data cannot be used to identify individual users.
9. Your Rights
9.1 Switzerland (nFADP)
If you are in Switzerland, you have the right to information, correction, deletion, data portability, and objection regarding your personal data, and the right to lodge a complaint with the Federal Data Protection and Information Commissioner (FDPIC): edoeb.admin.ch.
9.2 EU/EEA/UK (GDPR / UK GDPR)
If you are in the EU, EEA, or UK, you have the right to access, rectify, erase, restrict, or port your data, and to object to processing based on legitimate interests. You may lodge a complaint with your local data protection authority (or the ICO in the UK). We aim to respond to rights requests within one month, extendable by a further two months for complex requests, in which case we will tell you why.
9.3 United States
This section is written to meet CalOPPA and to give CCPA/CPRA-style disclosures voluntarily, even though the App’s data collection is limited enough that we may fall below some states’ applicability thresholds.
CalOPPA: this policy’s effective date is stated at the top. We describe material changes in Section 16. We do not respond to browser “Do Not Track” signals because the App does not track you across other companies’ websites or apps — there is nothing for a DNT signal to switch off.
CCPA/CPRA-style disclosures (California, and voluntarily extended to other US residents):
- Categories collected in the last 12 months: identifiers (the anonymous RevenueCat app user ID), commercial information (purchase/subscription history), and internet/device information (App Store country, OS/app version, locale, IP address as described in Section 6).
- Sources: directly from your device via the RevenueCat SDK, and from Apple (subscription status only).
- Business purposes: subscription analytics and purchase verification, as described in Section 6.
- Disclosed to: RevenueCat, Inc., as our service provider, under a data processing agreement. We do not disclose data to any other third party.
- We do not sell personal information, and we do not share it for cross-context behavioural advertising, as those terms are defined under CCPA/CPRA.
- We do not use sensitive personal information to infer characteristics about you.
- Your rights: to know what we collect, to delete it, and to correct it (see Section 9.4 on how to exercise these for the RevenueCat data — your caffeine and sleep data is already entirely in your own control on-device). We will not discriminate against you for exercising these rights. You may designate an authorized agent to submit a request on your behalf; we may ask for verification of that authorization. We aim to respond within 45 days, extendable once by another 45 days if needed.
- Residents of other US states with comparable privacy laws (for example Virginia, Colorado, Connecticut, Utah, Texas, and Oregon) have similar rights of access, deletion, correction, and opt-out, which we honor on the same basis described above; we have not attempted to map every state’s specific statute in this document.
9.4 How to Exercise Your Rights
| Right | How to exercise it |
|---|---|
| Access — Know what data is held | All your caffeine and sleep data is visible within the App. For subscription analytics data, see Section 6’s “Copy analytics ID” flow, then contact us |
| Rectification — Correct inaccurate data | Edit or delete individual log entries within the App |
| Erasure — Delete all your data | Profile → Sync & Data → Delete All My Data, or uninstall the App. For subscription analytics data, see Section 6, then contact us |
| Portability — Export your data | Not yet available for on-device data; planned for a future version. For RevenueCat data, contact us |
| Objection / Restriction — Object to processing | Disable iCloud Sync in Profile settings (for cloud sync); contact us to object to subscription analytics (Section 6); or stop using the App |
Contact us at privacy@jappjstudio.app for any request relating to data we may hold about you (e.g. the RevenueCat analytics record, or email correspondence).
10. Children’s Privacy
The App is rated 16+ on the App Store and is not directed at anyone under 16. We do not knowingly collect personal information from anyone under 16, which includes children under 13 and persons below the age of digital consent in EU member states. Since the only data we collect is the limited, anonymous subscription analytics described in Section 6, this risk is minimal — but if you believe data from a person under 16 has reached us and you have concerns, please contact us and we will investigate and delete it.
11. International Data Transfers
We do not operate servers that receive your caffeine or sleep data, so we make no international transfers of that data.
The subscription analytics data described in Section 6 is sent to RevenueCat, Inc. in the United States. As the controller, we name the destination country as required by the Swiss nFADP. We rely on RevenueCat’s Data Processing Addendum, which incorporates Standard Contractual Clauses, as the safeguard for that transfer. RevenueCat’s own privacy policy does not currently claim certification under the EU-U.S. or Swiss-U.S. Data Privacy Framework, so we do not rely on or reference that framework here; we will update this section if that changes.
Apple may also transfer data as part of App Store and iCloud operations, governed by Apple’s own Privacy Policy and transfer mechanisms.
12. Retention
Your caffeine and sleep data is stored locally on your device, so you control its retention entirely. It persists until you delete it manually within the App or uninstall the App. If iCloud Sync is enabled, deleting data in the App also removes it from iCloud. We hold no copies of this data on our infrastructure, so we have nothing to delete on our end.
Subscription analytics (Section 6) are held by RevenueCat on our behalf for as long as we operate our RevenueCat account, or until deletion is requested. Deleting the App removes the anonymous ID from your device (a reinstall generates a new one), but records already sent remain with RevenueCat until deleted. To have them deleted, contact us (Section 17) and we will submit the request to RevenueCat.
13. Security
Since data is stored locally on your device by default, it is protected by your device’s built-in security features (Face ID, Touch ID, device passcode) and by iOS Data Protection (hardware-level encryption). The only data the App transmits over the internet is: iCloud Sync (when enabled, using Apple’s encrypted infrastructure), StoreKit subscription verification (handled by Apple), and the subscription analytics described in Section 6 (sent to RevenueCat over encrypted HTTPS connections). We do not guarantee absolute security — no method of transmission or storage is 100% secure — but we do not hold a central database of your personal data that could itself be breached.
14. Business Transfer
If JappJ Studio, or the CaffCurve app, is sold, merged with another company, or otherwise transferred, the limited data we hold — the subscription analytics described in Section 6 — may be transferred to the acquiring party as part of that transaction. The acquirer will either remain bound by this Privacy Policy or will notify you of any material changes, as described in Section 16 below.
15. Third-Party Links
The App may contain links to third-party websites (e.g., our support page or terms page). These links are provided for your convenience. We are not responsible for the privacy practices of those third parties, and this Privacy Policy does not apply to them.
16. Changes to This Privacy Policy
We may update this Privacy Policy from time to time. We will notify you of material changes by:
- Updating the “Last updated” date at the top of this page
- Posting the updated policy on our website at jappjstudio.app/caffcurve/privacy
- Providing an in-app notification for significant changes where appropriate
Your continued use of the App after we post changes constitutes your acceptance of those changes. If you do not agree to the updated policy, you should stop using the App and delete it from your device.
17. Contact
If you have any questions, concerns, or requests regarding this Privacy Policy or our data practices, please contact us:
JappJ Studio
A sole proprietorship of Julian Junker
Aarbergstrasse 46
2503 Biel/Bienne
Switzerland
Email: privacy@jappjstudio.app
Website: jappjstudio.app
We aim to respond to all enquiries within 30 days.
18. Governing Language
This Privacy Policy is drafted in English. The English version is authoritative; any translation is provided for convenience only.
© 2026 JappJ Studio. All rights reserved.