Privacy Policy
This Privacy Policy explains how Mossby (the “App”), published by Nyxelium (“we”, “us”, “our”), handles information. Mossby is a plant-care and reminder app for Android, available on Google Play with package name com.nyxelium.mossby.
This policy is published at https://lkowalskil.github.io/privacy-policy-mossby. You can also open it from inside the App: You → Privacy → Privacy policy.
The short version
- The App works without an account. There is no advertising and nothing to purchase.
- We never collect, transmit, sell, or share your plant data, photos, notes, schedules, or the name you enter for the greeting. Those stay on your device.
- The App includes optional usage measurement (Google Analytics for Firebase). It is off until you switch it on, wherever you are. The control is in You → Privacy, the App shows you a notice that asks before anything is collected, and switching it off stops collection immediately.
- That measurement sends pseudonymous, pre-defined events — which screens are opened, whether reminders schedule correctly, where something failed — together with a random App-instance ID and coarse technical context. The events are not anonymous: the ID links them to one installation of the App, though not to your name. It cannot send your text or your photos. See section 4.
- The App also includes optional crash reports (Firebase Crashlytics), a separate choice that is also off until you switch it on. A report says where in the App’s code something failed, never what you wrote. See section 4A.
- Google may process those events and reports in the United States. Section 9 explains the safeguards, and section 8 how long they are kept (2 months for events, 90 days for crash reports).
- Your content is stored in the App’s private storage on your device.
- Android automatic cloud backup and device-to-device transfer are disabled for App data.
- You may manually export a backup file to a location you choose. Photos are not included.
Which version am I reading about? This policy describes the App as it is now. If the copy of Mossby on your device has no Help improve Mossby switch under You → Privacy, it is an older build: it contains no analytics SDK at all and makes no network request of any kind. If it has that switch but no Send crash reports switch, it contains no crash-reporting component.
1. Information stored on your device
Mossby stores the following locally so its features work:
- Garden data — plants, zones, pots, care tasks, history, streaks, custom catalog entries, and catalog preferences. This includes what you record about them: each plant’s status (for example resting, or given away), the tags you give plants, details about a pot such as its material, size and what it grows in, notes about a zone’s light such as the way its window faces, how far away it is, or a grow light, and how the soil felt when you noted it at a watering, with any change Mossby made to that plant’s watering interval because of it.
- Photos — photos you choose for plants are resized and copied to App-private storage. Before a photo is stored, the App removes the details a camera writes into the file — such as the location it was taken at, the time, and the device model and serial number — and keeps only the picture and which way up it is. Photos stored by earlier versions are cleaned the same way once this version is running.
- Preferences — language, appearance, which seasons the seasonal tips follow, onboarding progress, reminder settings, and your measurement choice. When the seasons are left on automatic, the App reads your phone’s region setting on the device to choose them; the region is not stored or sent anywhere.
We do not operate a server that receives this information and cannot view or recover it. You can remove garden data inside the App. Clearing the App’s storage or uninstalling it removes the local data, subject to the behavior of your operating system.
2. Manual backup and restore
Mossby lets you create a plain-JSON backup through the operating system’s save sheet and restore a file you explicitly select. You control the destination. If you choose a cloud-storage provider or another third-party location, that provider handles the file under its own terms and privacy policy.
The backup contains garden structure, schedules, care history, custom plants, plant statuses and tags, pot details, notes about each zone’s light, soil checks and watering-interval changes, and catalog preferences. Plant photos are excluded, as are device-specific photo paths and App preferences. Mossby does not automatically upload or read backup files.
3. Information collected or shared
The App includes no advertising, account, social, or purchase SDK. It includes two optional Google components, each off until you switch it on: usage measurement, described in section 4, and crash reports, described in section 4A.
We never collect or receive your plant, pot or zone names, your tags, your notes, your photos, the greeting name you enter, your feedback text, file paths, or the contents of a backup. There is no code path that can send them, and none of them appears in the fixed list of values the App is able to transmit.
We do not sell personal data, and we do not share it with anyone other than Google in its role as our processor, described in sections 4 and 4A.
If a future version adds a networked service, advertising, accounts, or purchases, we will update this policy and the relevant store disclosures before distributing that version.
4. Optional usage measurement
Two people build Mossby. To know which parts of the App work and where it fails, the App can send pseudonymous usage events using Google Analytics for Firebase, provided by Google LLC as our processor. Google processes them on our behalf and under our instructions, under Google’s data processing terms.
Where it starts, and how to change it
Measurement is off when you install the App, everywhere in the world. It starts only after you switch on Help improve Mossby in You → Privacy or accept it on the notice described below. Our legal basis is your consent (GDPR Art. 6(1)(a) where the GDPR applies), and nothing is collected until you give it. You can withdraw your consent at any time with the same switch, as easily as you gave it. Withdrawing does not affect the lawfulness of what was collected before.
Earlier versions of the App turned measurement on by default outside the EEA, the UK and Switzerland. That is no longer the case anywhere.
Once you have set up the App and cared for a plant, it shows you a notice that names Google Analytics for Firebase, says what the events contain, and lets you decide on the spot. It is a question with two equally weighted answers and no pre-selected reply. Closing it without answering changes nothing — measurement stays off — and it does not reappear.
If you answer Not now to that question, the App asks once more, six months later, in the same form. Whatever you do with that second ask — either answer, or closing it — is final, and the App does not ask again. Choosing a setting in You → Privacy before then cancels the second ask, and that switch stays available whatever you answered.
The switch in You → Privacy always shows the state collection is actually in, not the state you have chosen — so it can never read “off” while the App is collecting. Switching it off stops collection immediately, and tells the SDK to discard the random installation identifier it holds on your device, so a later opt-in cannot be linked to the earlier one.
The switch and the notice are the only two ways to enable measurement. The App does not ask during setup, and it has no advertising consent banner.
What Analytics can collect
These are the answers Mossby gives in Google Play’s Data safety section:
| Google Play data type | What it means in Mossby | Purpose and choice |
|---|---|---|
| App activity → App interactions | Fixed events such as screen opens, care actions, setup steps, reminder outcomes, backup or restore outcomes, feedback entry points, and bounded failure categories. No free text, crash log or stack trace. | Analytics; optional; not shared. |
| Device or other IDs | A random App-instance ID that identifies this installation for Analytics. It is not an account ID, advertising ID, Android device ID or cross-app ID. | Analytics; optional; not shared. |
| Location → Approximate location | Google derives coarse geography from the IP address used for an upload. Mossby never asks for a location permission and never sends GPS or other location coordinates. Google Analytics does not log or store the IP address. | Analytics; optional; not shared. |
What can be sent
Only events from a fixed, published list, with values drawn from fixed lists. The App is technically incapable of sending anything else: values that are not in those lists are discarded before they reach the SDK. In plain terms, an event can say things like:
- which of the App’s screens was opened (from a list of nine);
- that a plant was watered, snoozed or skipped, whether it was on time or overdue, and whether it was done from the Today list or a whole zone at once;
- that a plant was added, and which of the App’s built-in species it was — a species you created is reported only as “custom”, never by its name;
- roughly how big your garden is, as a range: 1–5, 6–25 or over 25, never an exact number;
- how long after installing the App something happened, as a range;
- whether the reminder schedule was written successfully, and roughly how many days ahead it reaches;
- whether a backup or restore succeeded, was cancelled, or failed;
- that the feedback screen was opened, and where it was opened from — the Feedback & about screen itself, the photo-symptom research card on it, or the last page of first-run setup;
- that a feedback report was copied, which of the four categories it used, and which of those three places it was begun from;
- that a step of the setup flow was completed;
- that something failed, as one of a short list of subsystem names and failure categories.
What can never be sent
Plant, pot or zone names, and the tags you give plants. Notes. Photos or anything derived from them. The greeting name. Feedback message text. Error messages, stack traces or file paths. Exact counts of anything in your garden. Your advertising ID — the App removes that permission from its manifest and disables the identifier in configuration. Your Android device ID (SSAID) — also disabled. Precise or coarse location coordinates: the App never asks for a location permission and never sends GPS or other location coordinates.
Google, as the processor, assigns a random App-instance ID and additionally records coarse technical context for a measurement event, such as device model, operating-system version, App version, language, and approximate location derived from the IP address used for the upload. Google Analytics does not log or store the IP address. The App-instance ID identifies this installation for Analytics; it is not an account ID, advertising ID, Android device ID, or cross-app ID. Events are encrypted in transit. Mossby does not use Google signals, Google Ads linking or advertising personalization.
Google describes what it does with information from apps that use its services at How Google uses information from sites or apps that use our services.
Deletion
The identifier is random, held on your device, and is discarded when you switch measurement off — which is the deletion route we can actually offer, and we prefer saying that to promising a lookup we cannot perform. Because we never receive anything that identifies you, we cannot find “your” past events to delete them individually. They are deleted automatically at the end of the retention period in section 8. If you want no further data collected, switch the setting off; nothing more is sent.
4A. Optional crash reports
When the App crashes or runs into an error, a crash report tells the two people who build it where in the App’s code that happened, so they can fix it. The App can send such reports using Firebase Crashlytics, provided by Google LLC as our processor, under Google’s data processing terms. This is a separate choice from the usage measurement in section 4: turning one on never turns on the other.
Where it starts, and how to change it
Crash reports are off when you install the App, everywhere in the world. They start only after you switch on Send crash reports in You → Privacy, or answer Turn on to the crash-report question on the notice described in section 4, which asks it separately from the measurement question, with the same two equally weighted answers. Our legal basis is your consent (GDPR Art. 6(1)(a) where the GDPR applies). If you answer Not now, the App asks once more, six months later, and whatever you do with that second ask is final. Closing the notice without answering changes nothing. Switching crash reports off:
- stops sending straight away;
- deletes any crash report still waiting on your device.
While crash reports are off, Crashlytics can keep a record of a crash on your device, and would send it if crash reports were switched on later. The App deletes those records before it switches crash reports on, so a crash that happened before you agreed is never sent.
What a crash report contains
- For an error in Mossby’s own code: the type of error (for example “FormatException”), the stack trace — the list of places in the App’s code that led to it — whether the App treated it as fatal, and the App’s internal label for the part of the App it came from (for example “storage”). Never the error’s message, because a message can repeat something you typed or the name of a file.
- For a crash in Android’s or a component’s native code: the stack trace and error message as Android records them. They describe the code that failed; Mossby does not put your content into them.
- Technical context Crashlytics adds: a random Crashlytics installation ID and a Firebase installation ID, the device model, Android version, App version, whether the device is rooted, the device’s state at that moment (such as free memory and storage, and its orientation), and the time of the crash. While crash reports are on, Firebase also notes when the App is opened, so the share of sessions without a crash can be counted.
- If usage measurement (section 4) is also on, a report can list the most recent usage events from section 4’s fixed list.
Never sent: plant, pot or zone names, your tags, notes, photos, the greeting name, feedback text, the contents of a backup, or a user ID of any kind. The App attaches no custom keys, no log lines and no user identifier to a report.
| Google Play data type | What it means in Mossby | Purpose and choice |
|---|---|---|
| App info and performance → Crash logs | The crash report described above. | Analytics; optional; not shared. |
| App info and performance → Diagnostics | The device’s state when it crashed, such as free memory and storage. | Analytics; optional; not shared. |
| App info and performance → Other app performance data | When the App was opened, so crash-free sessions can be counted. | Analytics; optional; not shared. |
| Device or other IDs | The random Crashlytics installation ID and Firebase installation ID. They are not an account ID, advertising ID, Android device ID or cross-app ID. | Analytics; optional; not shared. |
Retention and deletion
Crashlytics keeps crash reports and the identifiers attached to them for 90 days and then deletes them. Switching crash reports off deletes the reports still waiting on your device. Reports already sent carry no name or contact detail, so we cannot look them up for you; they are deleted at the end of those 90 days.
5. In-app feedback
The App has a Feedback & about screen under You. It does not transmit anything. You choose a category, write a message, and the App places that text on your device clipboard so that you can paste it into your own email app and send it to us if you want to. Nothing is sent unless you send it yourself.
An optional switch, off by default, adds a short technical block to that text: app version and build, operating system and version, the language the App is displaying, light or dark theme, how many plants you have as a range (for example “6-25”, never an exact count), whether reminders are enabled and whether the notification permission is granted, and how many errors the App recorded in the current session together with their internal source labels (for example “storage”). It never adds your plant, pot or zone names, your notes, your photos, your greeting name, error message text, or file paths.
Before you copy anything, the screen can show you the finished text in full. What you see there is exactly what is placed on the clipboard.
If you then email us, we receive whatever you chose to send, and we keep it only for as long as we need it to answer you or fix the problem.
At the bottom of the same screen there is a card about possible future features that would look at photos of a plant, and the last page of first-run setup describes the same two ideas. Those features do not exist in this App. The App does not read, analyse or upload photos for any such purpose, neither place signs you up for anything, and neither gives a release date. Both do exactly one thing: they open the message field with an editable prompt so that you can tell us how you would use it. As with every other message on that screen, nothing leaves your device unless you copy the text and email it yourself.
6. Device permissions and system features
- Photos / media picker — used only when you choose a plant photo from your gallery. The operating system picker controls what you make available to the App.
- Camera — the photo chooser also offers Take a photo. That hands off to your device’s camera app; Mossby holds no camera permission and receives only the picture you keep, which is then copied into App-private storage like any other plant photo.
- Notifications — used to deliver care reminders you enable. Reminder scheduling occurs on the device and can be disabled in the App or system settings.
- Vibration — used only so a care reminder can vibrate when your device settings allow it.
- Restart completion — on Android, used to restore enabled local reminder schedules after a device restart.
- File picker / save sheet — used only when you start a backup export or restore.
- Internet / network state — requested by the measurement component described in section 4, and also used by the crash reports described in section 4A. Nothing else in Mossby uses the network: the care routine, reminders, catalog, advisor, backup and restore all work with the radio off. If you never switch on measurement or crash reports, the App makes no network request. If you do, uploading measurement events and crash reports are the only reasons it uses the network, and switching each back off stops it.
- Opening this policy — the Privacy policy row in You → Privacy hands this page’s address to your browser. The browser, not Mossby, loads the page, and Mossby sends nothing with it.
Mossby does not require access to your contacts, precise or coarse location, microphone, broad storage, exact alarms, or an in-app account, and it holds no camera permission of its own. It explicitly removes the advertising-ID and ad-attribution permissions that the measurement component would otherwise add, so no advertising identifier is requested or available to it.
7. Android backup behavior
Mossby explicitly opts its App data out of Android automatic cloud backup and device-to-device transfer. This reduces the chance that private local garden data is copied without using Mossby’s user-controlled export flow. A backup is created only when you choose the backup action and select a destination.
8. Data retention and deletion
Local data remains until you delete it in the App, clear App storage, or uninstall the App. Because we do not receive the data, we cannot delete or restore it remotely. Copies that you manually exported remain wherever you saved them and must be deleted there by you.
Measurement events, if any were collected, are kept by Google Analytics for 2 months — the shortest retention period Google Analytics offers — and are then deleted automatically. Google Analytics keeps aggregated statistics built from those events, such as how many times a screen was opened in a week, in its standard reports; those totals are not linked to an individual App-instance ID. See section 4 for what stopping collection does.
Crash reports, if any were sent, are kept by Crashlytics for 90 days and are then deleted automatically. See section 4A for what switching them off does.
9. International transfers
Google may process measurement events and crash reports on servers in the United States and in other countries where Google or its sub-processors operate. For personal data from the EEA, the UK and Switzerland, Google relies on the EU-U.S. Data Privacy Framework, the UK Extension to it and the Swiss-U.S. Data Privacy Framework, under which Google LLC is certified. Where a framework does not apply, Google relies on the standard contractual clauses approved by the European Commission (and their UK and Swiss equivalents), as set out in Google’s data processing terms. Google describes these safeguards at Information about international data transfers.
10. Security
Mossby relies on the operating system’s App sandbox for local data. Imported backup files are treated as untrusted: their size, structure, version, and collection limits are checked before restoration. Measurement and crash-report uploads use TLS, and the App does not allow unencrypted (cleartext) network traffic. No storage system is perfectly secure, so protect access to your device and any backup destination you choose.
11. Children’s privacy
Mossby is a general-audience utility and is not directed to children under 13 or the equivalent minimum age in a user’s country. The App has no account and does not collect garden content, names, notes, photos, or contact details. The optional pseudonymous measurement described in section 4 and the optional crash reports described in section 4A can each be switched off at any time, and both are off by default everywhere. If you believe we have received personal data outside the App, contact us.
12. Your privacy rights
Depending on where you live, you have rights over personal data about you. Under the GDPR and the UK GDPR these are the rights to:
- access the personal data we hold about you, and receive a copy;
- have it corrected if it is wrong;
- have it erased;
- restrict how it is processed;
- data portability, where processing is based on your consent;
- object to processing based on a legitimate interest, if we ever rely on one;
- withdraw your consent at any time, where processing is based on consent, without affecting what was lawfully collected before;
- lodge a complaint with a supervisory authority, in particular in the country where you live or work or where you believe your rights were infringed. You do not have to contact us first.
Mossby’s measurement and its crash reports run on your consent alone, not on a legitimate interest, so as things stand the right to object (GDPR Art. 21) has no legitimate-interest processing here to attach to. Withdrawing your consent has the same effect, takes effect immediately, and needs no reason. If a future version ever relies on a legitimate interest, we will say so in this policy and bring the right to object to your attention separately, as Art. 21(4) requires.
For measurement, the switch in You → Privacy is the fastest way to use these rights: it withdraws consent or objects, immediately, and discards the App-instance ID. Measurement carries no account, name, contact detail, advertising identifier or free text, so we cannot look up events by your name or email address, and after the ID has been discarded nobody can link past events to your device. For crash reports, the Send crash reports switch does the same: it withdraws consent immediately and deletes any report still waiting on the device. Crash reports carry no account, name, contact detail or free text either. You control the App’s local content through the App and your device settings.
For any other request, or a question about information you separately sent to Nyxelium, contact us at the address below. We will answer within one month, as the GDPR requires.
13. Changes to this policy
We may update this policy when the App changes. We will revise the “Last updated” date and provide any notice required by applicable law or store rules.
14. Contact us
Nyxelium is responsible for the processing described in this policy (the “controller”).
Email: kowalski.dev07@gmail.com
About Mossby’s care information
This section is not about personal data. It is the App’s notice about its plant-care information, published here so it can be read outside the App as well. In the App it is one tap from the line under every built-in care profile, and in You → Feedback & about.
Mossby’s care tips, schedules and plant profiles are general information. Before Mossby marks a plant profile as checked, we compare it with reasonable care against public sources such as botanical gardens, horticultural societies and university extension services. A profile that has not been checked yet is a general estimate, and Mossby marks it as one. We cannot guarantee that any of this information is complete, correct or suitable for your plant, your home or your climate. Plants of the same species can need different care.
Please treat every tip as a suggestion, check it against your own plant and other sources before acting on it, and use your own judgement. You decide whether and how to use any information in Mossby, and you are responsible for that decision. To the extent permitted by law, Nyxelium is not liable for any loss or damage — including damage to or loss of plants — that results from using or relying on it.
Mossby does not say whether a plant is safe or toxic for people or animals, does not give fertilizer or pesticide doses (follow the product label), and does not diagnose plant problems.