BabyStory Privacy Policy

Privacy Policy

Effective date: September 9, 2026 · Last updated: September 9, 2026

BabyStory ("the App") is a baby care logging app that lets parents and invited family members record feedings, sleep, diapers and other daily care events, and keep a shared photo album for their baby.

This policy explains what information the App collects, why it is collected, how it is stored and shared, and what choices you have. If you have questions, contact us at nerdens.seong@gmail.com.


1. Who is responsible for your data

The developer of BabyStory is the controller of the personal data described below.

The App has no separate server of its own. It uses Google Firebase (Firebase Authentication, Cloud Firestore, and Cloud Storage for Firebase) as its backend. Google acts as our data processor.


2. Information we collect

We only collect information that you or your invited family members enter into the App. We do not buy, scrape, or import personal data from any other source.

2.1 Account information

Data Purpose Notes
Email addressSign-in identifier, account recovery, service noticesYou enter it for email/password sign-up; Google or Apple supplies it automatically when you use their sign-in instead. Handled by Firebase Authentication
PasswordAuthentication for email/password sign-inHandled by Firebase Authentication. It is stored as a salted hash by Google; the App never stores or transmits your password in plain text and cannot read it. Not applicable if you sign in with Google or Apple
Google or Apple account identifierAuthentication when you choose to sign in with Google or AppleSupplied by that provider and used only to recognize your account on later sign-ins. Handled by Firebase Authentication
Display name (optional)Shows who recorded an entry to your family membersFor Google or Apple sign-in, taken from that account the first time you sign in; you can edit it in the App at any time. Stored in Cloud Firestore
Profile photo URL (optional)Shown as your avatar to family membersOnly set if you sign in with Google, which supplies a photo URL — Apple sign-in does not provide one. Stored in Cloud Firestore

2.2 Baby profile

This information is entered voluntarily by you, the adult guardian, and is used to label records and to calculate the baby's age and age-relative statistics inside the App.

2.3 Care records

Records you create for a baby, which may include:

Some of this information (body temperature, medicine, feeding) may be considered health-related data about your baby under the GDPR and similar laws. We process it only to provide the logging and statistics features you asked for, and never for advertising, profiling, or analysis of any kind.

2.4 Photos

Photos are stored as image files in Cloud Storage for Firebase. On the free plan they are resized on your device to a 2,048-pixel long edge and re-compressed before upload; while a Premium subscription is active, the file you picked is uploaded at its original quality. Either way, the App does not read, store, or use location (GPS/EXIF) information from your photos, and it does not scan or analyze the content of your images.

The App requests camera access only at the moment you choose to take a new photo, and photo library access only at the moment you choose to upload an existing photo, or to scan a family invite QR code from a saved image instead of typing the code. QR codes are decoded entirely on your device — the photo is never uploaded and nothing beyond the code itself is read from it. The App does not browse or upload anything you have not selected, and it does not request microphone, contacts, location, or health-app permissions.

2.5 Family sharing information

2.6 App lock (Face ID, Touch ID, or device passcode)

If you turn on the optional app lock in Settings, the App asks your device's operating system to verify your identity — Face ID, Touch ID, fingerprint, or your device passcode — before showing your data again after the App has been in the background. This check is performed entirely by the operating system; the App only receives a yes/no result and never receives, collects, or stores any biometric data. Nothing about your face or fingerprint ever leaves your device.

2.7 Notifications and device registration

This applies only if you turn on at least one notification in Settings. If you leave them all off, none of the following is created; if you turn them all off after having used them, the stored device registration is deleted.

These four values are stored in the Cloud Firestore document users/{account}/devices/{token}, which Firebase Security Rules make readable and writable only by your own account. Which notifications you have switched on (unaccepted invite, quiet-log reminder, family activity, weekly summary) is stored on your user document as well.

To decide whether a notification is due, our server (Firebase Cloud Functions) reads when a baby was last logged, when an invite code was created, the list of family members and each member's view permissions, and a record of what was already sent so that the same reminder is not repeated too often. Those values are written only by the server and cannot be modified from the App.

Notifications never contain anything you entered. What is sent is a fixed, pre-translated sentence plus a value naming the kind of notification — never your baby's name, the text of a record or diary entry, or a photo. Delivery passes through Apple's (APNs) and Google's (FCM) push infrastructure.

2.8 Subscription and billing information

This applies only if you purchase BabyStory Premium, the paid subscription. If you do not subscribe, none of the following is created.

2.9 Growth album PDF export

When you export a growth album as a PDF during a Premium subscription, the PDF is built on your device. The baby name, date of birth, photos, captions, diary entries, and daily summaries that go into it are already stored in your account; exporting does not send anything anywhere new and does not store anything extra. The finished PDF file does not leave your device until you save or share it yourself.

There is one exception. If, and only if, the album actually contains Han (Chinese or Japanese) characters, the App downloads once — and then caches on your device — a font file able to print them, from the font server Google operates at fonts.gstatic.com. Only a font file at a fixed address is requested; nothing about your baby or the album is sent. The request itself does reveal your device's IP address to Google, whose own privacy policy governs that processing. Korean and Latin albums use a font bundled inside the App, so no such request is made.

2.10 App store rating prompt

The App may show the operating system's in-app review prompt at most once, either right after a family invite is accepted or once you have saved a certain number of care records (30). Everything used to decide whether to show it — whether it was already shown, the record count, the date of first launch — is stored only on your device and is never sent to our server. Whether you write a review and what rating you give is handled by Apple or Google; the developer cannot see whether you reviewed the App or what score you gave.

2.11 Technical information and crash reporting

Google Firebase processes standard operational data required to run the service — for example the IP address of a request, timestamps, and error information — for security, abuse prevention, and reliability. See the Firebase Privacy and Security documentation for details.

The App also uses Firebase Crashlytics to help us find and fix bugs. When the App crashes or hits certain internal errors, Crashlytics automatically collects a stack trace and other diagnostic information, your device model, operating system version, the App version, and a Crashlytics installation identifier — a random ID generated for the app install, not linked to your account or email address. The App may also log a small number of non-fatal errors with a fixed, developer-written description of what failed (for example "photo upload"); these descriptions never include anything you typed, your baby's name, your email, a photo path, or an invite code. Crash reporting is turned off in development/debug builds of the App.


3. What we do NOT do

The following reflects what the App's code actually does. The exceptions are the limited, anonymous product analytics and the crash/diagnostic reporting described in 3.1 and 3.2 below — beyond that, the App contains no advertising, attribution, or third-party tracking libraries:

3.1 Limited, anonymous product analytics (Firebase Analytics)

To understand which features are actually used, the App records a small, fixed set of usage events with Firebase Analytics. These events never include anything you typed — your baby's name, a photo, the text of a note or diary entry, an email address, an invite code, or a document identifier is never included in any event. Only the type of action and, where relevant, a count is sent.

The events recorded are:

The App also stores the following user properties so that usage can be looked at by group. All values are recorded as buckets only, so that no individual can be identified:

3.2 Crash and diagnostic reporting (Firebase Crashlytics)

If the App crashes or hits an unhandled error, Firebase Crashlytics collects the error, a stack trace, the device model, the OS version, the App version, and a Crashlytics installation identifier generated at random per app install. The App does not attach your account identifier or email address to a crash report. See section 2.11 for the full description. Crash collection is turned off in development (debug) builds.


4. How we use your information

We use the information above only to:

  1. Create and authenticate your account and keep you signed in;
  2. Store, display, and let you edit your baby's care records and photos;
  3. Calculate in-App summaries and statistics (for example daily feeding totals or sleep duration), which are computed for you and are not shared with anyone;
  4. Share records among the family members invited to the same baby;
  5. Keep the service secure — for example by enforcing access rules and expiring invite codes;
  6. Send the notifications you switched on, at a time that matches your local clock and outside your local quiet hours (section 2.7);
  7. Confirm payment for the paid subscription and grant or expire Premium entitlements (section 2.8);
  8. Keep the App stable and improve it through limited usage analytics and error diagnostics (sections 3.1 and 3.2);
  9. Respond to your support requests.

Legal bases (EEA/UK users)


5. Who can see your data

We may disclose information if we are legally required to do so by a valid legal process, but we have no other reason or mechanism to hand your data to anyone.

Server-side access control. Access is enforced by Firebase Security Rules on Google's servers, not just in the app: a request for a baby's profile, care records, or photos is rejected unless the requesting account is a member of that baby. Uploaded photo files are protected by the same membership check. The download links the App generates to display your photos contain an unguessable token and are never published anywhere; if you forward such a link to someone else, that person could open that image, so treat photo links as private.


6. Where your data is stored (international transfers)

Where personal data of EEA/UK users is transferred outside those regions, the transfer relies on the European Commission's Standard Contractual Clauses as incorporated into Google's terms.

If you are a user in the Republic of Korea, this constitutes notice of outsourcing (위탁) and overseas transfer of personal data to Google LLC and its affiliates for the purpose of cloud hosting, authentication, and file storage, for as long as you use the service.


7. How long we keep your data

Backups held by our provider are overwritten on a rolling basis.


8. Your rights and choices

You can, at any time:

You may also contact nerdens.seong@gmail.com to:

We will verify that the request comes from the email address registered to the account before acting on it, and we will respond within 30 days.

EEA/UK users have the right to lodge a complaint with their local data protection supervisory authority. Users in the Republic of Korea may contact the Personal Information Protection Commission (privacy.go.kr, +82-118). California residents: we do not sell or share personal information as those terms are defined by the CCPA/CPRA, and we do not use personal information for cross-context behavioral advertising.


9. Children's privacy

BabyStory is designed for adult parents and guardians. The App is not directed to children, and we do not knowingly allow anyone under the age of majority in their country (16 in the EEA unless national law sets a lower age, 14 in the Republic of Korea, 13 in the United States) to create an account.

Information about a baby or child stored in the App — name, date of birth, care records, photos — is entered voluntarily by the adult account holder about their own child or a child in their care, and is visible only to the family members that adult invites. We do not use children's information for advertising, analytics, profiling, or any purpose other than displaying it back to the family.

If you believe a child has created an account, contact nerdens.seong@gmail.com and we will delete it.


10. Security

No method of transmission or storage is completely secure, so we cannot guarantee absolute security. Please use a strong, unique password and share invite codes only with people you trust.


11. Changes to this policy

If we change this policy, we will update the "Last updated" date at the top and publish the revised version at this URL. For material changes — for example, if we ever began collecting a new category of data — we will provide notice in the App or by email before the change takes effect.


12. Contact

Questions, requests, or complaints about this policy or your data:

nerdens.seong@gmail.com

We aim to respond within 30 days.

Back to BabyStory home