Privacy policy
Energy Detective for Android (app.energydetective) and energydetective.app
Effective: 17 October 2026
Operator and privacy contact: Petr Pikora / PetrPikora.com, petr.pikora@petrpikora.com.
Your readings and photographs
Profiles, meter readings, photographs, fuel records, prices, notes and savings calculations are stored on your device. By default, this content stays on your device and is not sent to advertising services. Version 1.2 adds optional encrypted place sharing, described below. No account registration is required. On the website, your content stays in that browser's local storage and IndexedDB.
Taking or selecting a photograph is optional and starts only when you choose it. The Android app uses the device camera app or system photo picker. It stores the selected image as evidence for a record; optional on-device recognition can suggest digits, which you must check before saving. The bundled recognition model primarily supports Latin-script digits. Google ML Kit processes the selected image on the device; its SDK may send installation identifiers, device/app information, feature usage and performance/error diagnostics to Google over HTTPS. The image content is not sent for recognition. See Google’s ML Kit data disclosure. We do not request microphone access, precise location, contacts or broad access to your photo library.
Optional encrypted sharing (version 1.2)
Sharing starts only when you choose to create or join a shared place. The selected profile, its records and photographs are encrypted on your device using AES-GCM before transmission over HTTPS to energydetective.app. The content key remains in private access links and connected devices, not on the server. The server stores encrypted content, hashed access keys, assigned roles, labels you provide for people/devices, revision numbers and the latest 100 edit timestamps and editor labels. These service metadata are not end-to-end encrypted. The hosting service also processes technical request information to deliver and secure synchronization. Rate-limiting records use an IP-based hash and are removed after 24 hours when later requests perform cleanup.
Anyone holding an access link can use its owner, editor or reader role. Links are not included in JSON backups. Store the owner recovery link securely; without it or a connected owner device, the app cannot restore owner access. Synchronization runs while the app is open and online, and can be triggered manually. Conflicting edits require a choice. Limits are 20 MB of content per place and 30 access keys.
The owner can revoke access and delete the server copy and all access keys from Shared place. Disconnecting a device or clearing local data does not delete the server copy. Server data remains until the owner deletes it. Revoking access cannot erase copies already downloaded or exported by others. Requests about service metadata can be sent to the privacy contact above. Do not use real personal names in device labels unless needed.
Exports and deletion
An exported JSON backup includes the records and their photographs and is not encrypted by the app. You choose where to save or share it. Importing a file on the website processes it in your browser. The app does not send that file to our server.
Records remain until you delete them or reset the app's data. Use Settings → Reset data to clear all profiles and their photographs. Android's app-storage controls or uninstalling the app also remove its private stored data. Clearing the website's site data removes that browser's copy. Copies you exported, shared or saved in another service must be deleted separately. No Energy Detective account needs to be deleted.
Android advertising and consent
The free Android app uses Google AdMob and Google's User Messaging Platform. These services may process your IP address (including approximate location), advertising and other device identifiers, app/ad interactions and diagnostic information for advertising, measurement and fraud prevention. This is separate from your locally stored readings and photographs. The app requests non-personalized ads and checks the consent platform before requesting a banner. Non-personalized ads may still require consent and process identifiers.
Where applicable, a Google consent message lets you accept, refuse or manage the available choices. You can revisit the choices through Settings → Ad privacy choices when the consent platform requires that option. Refusing consent does not lock the app's tools. Google's retention, international processing and data controls are explained in its Privacy Policy and partner services information. AdMob uses encrypted connections for its data transfers. The website currently has no advertising or third-party analytics.
One-time purchase
The optional Google Play purchase permanently removes Android ads for the purchasing Google Play account. It does not unlock any additional feature and is not a subscription. Google Play processes payment and purchase records under its own policies. We do not receive your card details. The app uses Google Play purchase status, product identifiers, signed receipts and purchase tokens to verify, acknowledge and restore the entitlement. It keeps a local indication of the verified entitlement. Use Restore purchase on another installation with the same Google Play account. Refunds or revoked purchases can remove the entitlement.
Website and support
The web server receives technical request information such as IP address, browser details, time and requested URL to deliver and protect the website. This does not include the content of your local records. If you email support, we receive your address and whatever you choose to send, and use them to handle your request. Send only information needed for support. Support correspondence is kept only as needed to resolve and follow up the request or meet applicable obligations; you can ask for deletion.
Your choices and rights
You can export and delete local records directly. For personal data held by the operator, contact the email above to request access, correction, deletion, restriction or portability, or to object to processing where applicable. Consent may be withdrawn using the available privacy controls. You may complain to your local data protection authority, including the Czech Office for Personal Data Protection. Processing necessary for requested support and service delivery relies on that purpose; security and fraud prevention serve legitimate interests; consent is requested where required for advertising technologies.
The app is intended for adults managing property, vehicles or business costs and is not directed at children. We do not intentionally collect children's personal data. Changes to these practices will be reflected on this page with an updated effective date.