Help

Privacy Policy

Last updated: September 3, 2026

This page describes how BatterWise actually handles your data today, written from the app's own code. It has not been reviewed by a lawyer, and it is a description of current practice rather than a legal opinion. If something here doesn't match what you see in the app, please tell us and we'll fix the page.

Who this covers

BatterWise is a bakery cost calculator, available as a web app and as an iOS/Android app. Both use the same account and the same database, so this policy covers both.

What you give us

Your email address. This is the only piece of personal identity the app stores about you. It is saved on your account record so we know which data is yours, so the app can address you by account, and so a bakery-collective membership bought elsewhere can be matched to your account by email.

Your sign-in identity. You sign in with Google, with Sign in with Apple (mobile only), or with an emailed sign-in link (web only). Sign-in itself is handled by Firebase Authentication, which holds the account record โ€” including any display name or profile photo your Google or Apple account provides. BatterWise's own database does not copy or store your name or photo, and the app does not display them.

The bakery data you enter. Ingredients (name, price paid, package size, unit, quantity on hand, low-stock threshold, alternate suppliers), recipes (name, category, servings, ingredient lines, sell price, time to make, instructions, allergen tags), weekly planner entries, logged sales (recipe, quantity, unit price, unit cost, date), and your pricing settings (hourly rate, overhead %, target margin). All of it is there for one reason: to compute ingredient costs, recipe costs, margins, planner demand, grocery shortfalls, and sales reports. It is not analysed for any other purpose and it is not sold or shared with anyone.

Every new account is seeded with a starter set of example ingredients and one example recipe so the app isn't empty on first use. Those are ordinary records you can edit or delete.

What is collected automatically

Account and subscription state. The date your account was created, your plan (free or premium), your subscription status, and โ€” if you have subscribed โ€” your Stripe customer and subscription identifiers, plus a flag recording that a free trial has already been used on the account. These exist to decide whether premium features are unlocked and to stop a canceled-and-resubscribed account from getting a second free trial.

Web analytics. The web app loads Vercel Analytics, which records aggregate page-view traffic for the site. It is not used to build a profile of you and it is not present in the mobile app.

Ordinary server logs. Requests to the web app and its API reach Vercel's servers, and requests to the database and sign-in service reach Google's, in the normal course of serving the app.

What we do not collect. The app has no advertising, no third-party trackers beyond the analytics above, no crash/behaviour analytics SDK in the mobile app, and it does not request your location, contacts, camera, microphone, or photo library.

Payment information

Card details never reach BatterWise's servers. Subscribing sends you to Stripe Checkout, a page hosted and operated by Stripe, and managing or canceling a subscription sends you to Stripe's hosted billing portal. Your card number, expiry, and security code are entered on Stripe's pages and are handled entirely by Stripe. BatterWise never sees them and has no code that could receive them.

What BatterWise stores instead are identifiers and status: a Stripe customer ID, a Stripe subscription ID, and the subscription's status (for example active, trialing, past_due, or canceled). Your email address is passed to Stripe at checkout so the subscription can be attached to the right customer, and Stripe notifies our server when a subscription changes so premium access stays correct.

Who else your data reaches

Every third party the app actually sends data to, and what each one receives:

ServiceWhat it receives, and why
Firebase Authentication (Google)Your email address and sign-in identity, so you can sign in and so each account is distinct. Privacy details
Cloud Firestore (Google)Everything the app stores: your account record and all of your bakery data. This is the app's database. Privacy details
Google Sign-In / Sign in with AppleUsed only to prove who you are at sign-in. Google or Apple tells us your email (and may provide a name or photo, which we do not store). Google ยท Apple
StripeYour email address and payment details you enter on Stripe's own checkout and billing pages, to take the subscription payment. Privacy policy
ResendYour email address, once, to send the welcome email when your account is created. Privacy policy
VercelHosts the web app and its API, so it receives requests you make to the site, and runs the page-view analytics described above. Privacy policy
Stan Store & ZapierOnly if you are a member of the separate bakery collective. Stan Store handles that membership, and Zapier writes the membership event โ€” your email address and whether the membership started or was cancelled โ€” into our database so premium unlocks on your app account. Stan ยท Zapier

We do not sell your data, and we do not share it with anyone beyond the services above.

Who can read your data

Database access rules restrict every record to the account that owns it: signed in as you, you can read and write your own account record, ingredients, recipes, planner entries, sales, and pricing settings, and no one else's. Plan and subscription fields are an exception in the other direction โ€” they can only be written by our server (from Stripe's notifications or the collective membership check), never by the app on your device.

The mobile app keeps a copy of the data it has loaded in a local cache on your device, so it works without a signal. Removing the app removes that cache.

How long we keep it

Your account and its data are kept for as long as the account exists. There is no automatic expiry โ€” a recipe you entered three years ago is still there because you may still want it. When you delete your account, the data is deleted as described below.

Deleting your account

You can delete your account yourself, at any time, from the web app: open the account menu at the bottom of the sidebar and choose to delete the account. You will be asked to type your own email address to confirm, because this cannot be undone. Deletion is not currently available inside the mobile app โ€” sign in to the web app with the same account to do it.

Deleting your account does all of this, in this order:

  • Cancels your BatterWise subscription in Stripe immediately, so you are not billed again. If this step fails, nothing is deleted and your account keeps working โ€” we will never leave a deleted account still being charged.
  • Deletes every ingredient, recipe, planner entry, and sale belonging to you, your pricing settings, and your account record.
  • Deletes your sign-in account, so the login itself no longer exists.

Two things deliberately survive deletion, and you should know about both:

  • The bakery collective membership log. If you are a collective member, the record that the collective's membership started or was cancelled โ€” an email address and that event โ€” is kept. It belongs to the collective's membership records rather than to your app account, and it is what decides membership if you ever sign up again. Deleting it would corrupt that.
  • Your Stripe customer record. The subscription is canceled, but the Stripe customer object is not deleted, so past invoices remain available for accounting and tax purposes. Stripe holds that record under its own policy.

If you would rather we did it for you, or you can't sign in, email us at support@stinas-sweets.net from the address on the account and ask for deletion.

Children

BatterWise is a business tool for people running a bakery. It is not directed at children and we do not knowingly create accounts for them.

Changes to this policy

If how the app handles data changes, this page changes with it and the "last updated" date above moves. The current version was last updated on September 3, 2026.

Contact

Questions about anything here, or a request about your data: support@stinas-sweets.net.

Looking for how the app works instead? See the Help page.