MartCalc Privacy Policy
Effective and last updated: November 2, 2026
Bokeria Inc. (“we”) explains how MartCalc, our shopping calculator, list and history app, handles information on Android and iOS. The collection controls and data-minimization behavior described below apply to versions with the October 30, 2026 privacy update.
Shopping item names, prices, quantities, budgets, history titles and templates stay on your device and are not sent to Firebase. Usage statistics and error/performance diagnostics are separate choices. Shopping works with both off. There are no accounts or cloud synchronization. Versions with the November 2, 2026 advertising update add conditional non-personalized banner ads as described in section 4. Earlier ad-free versions remain ad-free until updated.
1. Information stored on your device
We store your current list, checked items, history and titles, budget, templates, language, currency, appearance and collection choices on your device. We do not operate a server for remotely viewing this shopping content. You can delete items and history in the app. Uninstalling the app or clearing its data also removes local records and settings, which may be unrecoverable. OS backup and restore behavior may depend on your device settings.
2. Optional collection and purposes
- Usage statistics — Google Analytics for Firebase: Feature-use events such as app opens, adding an item and completing shopping, app version, basic device/OS/language information and app-instance identifiers help us understand usage and improve the app. Events do not include item names, entered amounts, quantities or history titles.
- Error and performance diagnostics — Firebase Crashlytics and Performance Monitoring: Error stacks, fixed storage-error categories, crash/installation/session identifiers, app/device/OS information and app-start or storage read/write timings help improve reliability. We do not attach your input or saved shopping content to diagnostic logs, custom attributes or traces. We add no automatic HTTP request instrumentation and disable automatic HTTP instrumentation on iOS.
- Google processes IP addresses during communication and may derive an approximate country. This is separate from the on-device initial-choice decision below. We do not request GPS or precise location permission and do not enable Firebase advertising-ID collection or ad personalization. Advertising has separate processing and consent controls in section 4.
Collection starts only for the allowed choices. Where prior consent is required, we ask before collection. Changes apply to subsequent collection.
3. First launch, regions and withdrawal
The initial decision uses system country/region, country information in preferred languages, time zone and, on Android, SIM/network country available without a permission request. We check these signals on your device, independently of the display language you select inside the app. We do not contact an IP-location server or request location permission for this decision.
If any signal indicates the EEA, United Kingdom, Switzerland or related regions, or the region cannot be determined, collection stays off until you choose. In other recognized regions, we save both choices as on before starting. A saved refusal, partial choice or full allowance is retained across region and app-language changes.
Open Settings → Privacy choices to turn usage statistics or error/performance diagnostics off or on separately. “Turn all off” and “Decide later” in the initial dialog let you continue shopping without collection. Newly enabling or re-enabling diagnostics may require fully closing and reopening the app.
If choices cannot be read or saved, collection stays off and we offer a retry. An unexpected exit or interrupted settings change may require reconfirmation. Withdrawal stops new explicit events, diagnostics and active performance traces, and requests deletion of unsent crash reports from the SDK. It cannot guarantee cancellation or deletion of data already sent or requests already in progress. Contact us below for privacy requests.
4. Conditional banner ads and advertising privacy
No ads are shown at initial installation or first launch. In versions with the advertising update, a small banner on the shopping screen is eligible only when both at least seven full days have passed since the installation date recorded by the app (first use) and the app has been launched at least ten times. Eligibility is calculated locally from the recorded date and launch count. Before both conditions are met, the app does not request advertising consent information, initialize advertising through its app code or request banner ads. The Google Mobile Ads measurement initialization is delayed. A banner is hidden during keyboard entry or on other tabs; failed loading does not prevent shopping.
Google AdMob / Google Mobile Ads SDK: We request non-personalized ads. Google may process IP addresses and approximate location derived from them, app/device/OS information, app- or developer-scoped identifiers, ad impressions and interactions, crash/diagnostic information and performance data. Purposes include delivering and measuring ads, aggregated reporting, frequency capping, analytics, consent management, security and fraud prevention. Android advertising-ID permission is removed, and iOS does not request ATT authorization or access a usable IDFA. This does not mean there are no other identifiers or technical-data transfers. We do not send item names, entered prices, quantities, budgets, shopping history or titles in ad requests, and do not use personalized ads or cross-company tracking.
Separate advertising choices: After eligibility, Google's User Messaging Platform (UMP) checks advertising consent and displays the applicable regional message before ads can be requested. This process is separate from optional Firebase statistics and diagnostics; turning those choices off does not itself disable eligible ads. If UMP requires an ongoing privacy entry point, open Settings → Ad privacy choices to review or change it. A refusal may result in limited ads or no ads according to Google's consent result. Non-personalized ads may still require storage/identifier consent in your region. If consent cannot be checked, the app continues shopping without requesting a banner. Changing a choice affects subsequent processing and does not erase information already sent.
Advertising technical data may be collected or shared with Google and applicable advertising/service partners under the consent result and platform restrictions. See Google's Android SDK data disclosure, iOS SDK data disclosure and non-personalized advertising guidance.
5. Providers, international processing and retention
Google LLC and its subprocessors process the selected data to provide Analytics, Crashlytics, Performance, AdMob and UMP. When collection is on, data travels over encrypted internet connections and may be stored or processed in the United States and other countries where Google operates facilities. Section 2 describes optional Firebase data and section 4 describes advertising processing separately. Turning optional collection off refuses subsequent Firebase transfers without limiting shopping; advertising choices are separate.
- Analytics: This project's event-level retention is set to 2 months and user-level retention to 14 months, renewed on user activity. Aggregated statistical reports can remain separately.
- Crashlytics: Google states that it retains crash stacks and associated identifiers for 90 days before beginning removal from live and backup systems.
- AdMob/UMP: Advertising and consent data follow Google’s applicable privacy and retention policies. The app does not provide a separate retention timer for information held by Google. Stopping ads, changing consent or uninstalling does not guarantee deletion of previously processed data. Contact the support address below for requests.
- Performance: Google states that it keeps IP-associated events for 30 days and installation-associated/de-identified performance data for 60 days before beginning removal.
See Firebase privacy and security, Google's privacy policy and Analytics retention guidance for service-specific details and updates. Turning collection off or uninstalling does not immediately delete previously transmitted data.
6. Support and your rights
“Send Feedback” opens your chosen email app. If you send a message, we receive your email address, message and anything you choose to attach to respond to you. Shopping history and diagnostics are not automatically attached. We delete support correspondence within 90 days after resolution, unless a legal obligation or ongoing dispute requires limited additional retention.
Depending on applicable law, you may request access, correction, deletion, restriction, withdrawal of consent or object to processing. Since the app has no accounts, we may ask for the minimum information needed to identify the scope and relevant data. Refusing collection or exercising your rights does not restrict shopping features.
Privacy contact: Bokeria MartCalc support team
Email: appsupport@bokeriastudio.com
7. Security, children and changes
Selected collection uses encrypted transport and operational access is limited to personnel who need it. No storage or transmission method is completely secure. MartCalc is not marketed to children and we do not knowingly collect children's personal information. Contact us about concerns or deletion requests.
We update this page and its effective date when features or processing change. If you use an older version without collection controls, update to the latest version. Earlier versions had no in-app withdrawal controls, could enable usage/diagnostic collection automatically, and could include item names, prices and quantities in add-item and shopping-completed events. The updated version excludes these fields. Previously transmitted data can remain subject to the settings then in effect and the provider's retention rules.