Privacy Policy

Closet Scent Memory

Effective date: 2026-11-02

This policy explains how this application handles information and how to contact us about privacy.

Information we process

Closet Scent Memory stores the fragrance names, brands, bottle sizes, purchase years, ratings, note pyramids, fragrance families, seasonal labels, selected bottle photos, and wearing diary dates, moods, weather labels, longevity and impressions that you enter. This notebook is stored locally in a SQLite database on your iPhone. Your optional display name, volume preference and sync settings are stored locally. The app creates a random installation secret in the iOS Keychain. When you enable optional Private Cloud Sync, notebook records and selected compressed photos are sent to our backend along with that secret for authorization. The server stores a hash of the secret as the installation identifier. Requests to the API, home page and privacy page also expose connection information such as IP address, request timing and HTTP metadata to the hosting infrastructure. We do not require an account, email address, password or location. Public requests pass through Cloudflare before reaching Railway. As the HTTPS proxy, Cloudflare processes connection information and HTTP request and response contents in transit, including authorization headers and notebook data when cloud sync is enabled.

How we use information

Local records provide your collection, diary, note exploration, derived taste profile and suggestions from bottles you own. Optional cloud storage synchronizes changes for this installation and processes deletion requests; it is not an account or a cross-device recovery service. The secret authorizes access to only your installation’s data. Selected photos identify your bottles. Local notifications remind you to revisit your collection. Operational request information and error identifiers help provide and protect the service. We do not use advertising or analytics SDKs, sell personal information, or send marketing email.

Service providers and sharing

The backend runs on Railway, which processes network requests and stores the cloud database on a persistent service volume. Railway and its infrastructure providers may process connection and operational logs to deliver and secure hosting. Application error logs contain request identifiers and technical error messages; we do not deliberately log bearer secrets or notebook request bodies. The app uses Apple system services for the Keychain, photo selection and local notifications. Photos are not sent to another image-processing provider. No advertising, analytics, support-ticket, email-delivery or external fragrance-data service is integrated. Information may be disclosed if required by applicable law. Cloudflare provides the public HTTPS proxy for the application API and privacy website. It processes requests and responses in transit and may process connection and security logs to deliver and protect that proxy. Cloudflare and Railway are the infrastructure recipients of public service requests; the privacy website does not require login or cookies.

Data retention

Local notebook records remain until you delete them or remove the app. Device backups may retain app data according to your Apple device and backup settings; the installation secret is configured as device-only Keychain data. Optional cloud records remain until you delete them. Individual record deletion uses tombstones so an older offline copy does not recreate the record; deletion markers and some record metadata can remain in the cloud until Delete All Data removes the installation’s database records. The app clears note arrays, photo data and diary text from its deletion markers; server-side deletion may retain other record fields. Hosting log retention and any infrastructure backup retention are controlled by the provider; we have not configured or verified a fixed deletion period for those copies and do not promise immediate removal from backups. No application-managed backup service is configured. Cloudflare may retain infrastructure or security logs under its own service practices; we have not verified a fixed retention period for those logs.

Deleting your information

Delete Fragrance removes a bottle and its wearing entries from the active notebook and synchronizes deletion when cloud sync is enabled. Delete All Data in Settings clears local bottles, photos and diary entries, removes pending local reminders, disables cloud sync, and requests physical deletion of this installation’s cloud database rows. If offline, a pending deletion flag is kept and the request retries when connectivity returns or you choose Retry Cloud Deletion. Keep the app installed until cloud deletion is confirmed. Disabling cloud sync alone stops ordinary syncing and does not erase records already stored on the server. Backup and infrastructure log copies may persist under provider practices. The device-only secret is retained to finish pending deletion; losing it means we cannot recover or reliably identify your cloud notebook. You may contact allegra.coleridge@icloud.com about deletion questions; do not send your secret by email.

Permissions and your choices

The app uses the iOS photo picker to access only images you choose; it does not request unrestricted access to your photo library. You can remove a selected photo in the fragrance editor or delete its record. Notification permission is requested only when you enable a daily reminder. You may turn off reminders in Discover or withdraw notification permission in iPhone Settings. Local reminders do not use APNs or transmit notification tokens to our server. No location, camera, microphone, contacts or tracking permission is requested. Disabling cloud sync in app Settings withdraws future ordinary cloud synchronization; use Delete All Data to request removal of existing cloud data.

Your privacy rights

Depending on where you live, you may have rights to access, correct, delete, restrict or object to processing of your personal information, and to complain to a relevant data-protection authority. You can view and edit notebook information in the app and use its deletion controls. For privacy questions or requests, contact allegra.coleridge@icloud.com. This email is a privacy contact only and is not used for registration or delivery. Because there is no account and the server identifies an installation only through its secret hash, we may be unable to locate records after the app’s secret is lost. Do not share the bearer secret with others.

Security

API communication uses HTTPS. Each installation receives a cryptographically random secret generated on the phone and stored in the iOS Keychain with device-only accessibility. The server hashes that secret and checks authorization on each private request, scopes database access to the installation, validates inputs and applies request and storage limits. Local database files use iOS file protection after the first device unlock. The hosting provider operates the infrastructure. These measures reduce risk but no storage or transmission system is completely secure; anyone with your installation secret could access its cloud records. There are no shared client credentials or public notebook endpoints. Public HTTPS terminates at Cloudflare, which proxies to the pinned Railway service over HTTPS. The app uses normal TLS certificate verification and does not bypass certificate failures.

Children’s privacy

Closet Scent Memory is intended for fragrance enthusiasts and collectors and is not directed to children under 13. We do not knowingly seek children’s personal information. If you believe a child has supplied personal information through the service, contact allegra.coleridge@icloud.com so we can assess the request and available identification information.

Changes to this policy

We may update this policy when app features, processing or hosting practices change. The current policy is published at this page with its effective date. Please review it periodically. Material changes will be described in the updated policy or app release information as appropriate.