Skip to main content

Privacy Policy

Last Updated: March 2026  |  Version: 1.1

The Short Version

Crescendo is built privacy-first. Your practice data stays on your device. We only collect anonymous usage analytics if you give explicit consent.

Table of Contents

Introduction

Crescendo ("we," "our," or "the app"), developed by Crescendo Piano LLC, is a piano learning application that displays sheet music and helps you practice reading music notation. This privacy policy explains our data practices in plain language.

Our philosophy: We built this app for people who want to learn piano without being tracked or monetized. Your practice data stays on your device. We only collect anonymous usage analytics if you explicitly consent, and you can turn it off anytime.

Data We Do NOT Collect

We want to be explicit about what we don't do:

What We Don't Do Details
No trackingWe don't track you across apps or websites
No advertisingWe don't show ads or share data with ad networks
No advertising IDsWe disable Google Advertising ID and SSAID collection
No personal informationNo names, emails, phone numbers, or accounts
No location dataWe don't collect GPS or precise location
No data salesWe never sell or share your data with third parties

We have not sold or shared any personal information. The only data we collect is anonymous usage analytics, and only with your explicit consent (see Optional Analytics).

We do not collect sensitive personal information as defined by the California Privacy Rights Act (CPRA), including Social Security numbers, precise geolocation, racial or ethnic origin, religious beliefs, genetic data, biometric information, health information, or information concerning sex life or sexual orientation.

Optional Analytics

With your explicit consent, we collect anonymous usage analytics to understand how the app is used and improve it. Analytics are off by default and only enabled if you choose "Accept" when prompted, or turn them on in Settings.

What We Collect (if you consent)

Data Example Purpose
App interactionsPractice session started, piece importedUnderstand which features are used
App Instance IDRandom identifier (e.g., abc123def)Count unique users (not linked to your identity)
Device model and OSPixel 8, Android 15Ensure compatibility
App version1.2.0Track update adoption
CountryUnited StatesLocalization priorities (derived from IP, IP is not stored)

What We Do NOT Collect (even with consent)

  • ✗ Names, email addresses, or any personal information
  • ✗ Advertising identifiers (Google Advertising ID, SSAID)
  • ✗ What specific pieces you practice or their titles
  • ✗ Individual notes you play or your MIDI input
  • ✗ Precise location (GPS)
  • ✗ Any data that could identify you personally

How to Control Analytics

  • On first launch: You'll see a consent dialog. Choose "Accept" or "Decline."
  • Change your mind anytime: Settings > Data > Usage Analytics toggle
  • Turn off = collection stops: When you disable analytics, on-device data is deleted immediately and no further data is collected. Previously uploaded anonymous data expires automatically after Google's retention period (14 months)

Data Processor

Analytics data is processed by Google Firebase Analytics (Google LLC). Google acts as a data processor on our behalf and does not use this data for advertising or other purposes. Data is encrypted in transit via TLS.

Firebase Privacy and Security · Google Privacy Policy

Data Stored Locally on Your Device

The app stores the following data only on your device:

Practice Data

  • • Practice session history
  • • Performance statistics
  • • Progress tracking

User Preferences

  • • App settings
  • • MIDI device preferences
  • • Display options

Music Library

  • • Imported files
  • • Piece metadata
  • • Thumbnail previews

How It's Stored

  • Database: SQLite database in the app's private storage
  • Preferences: SharedPreferences (Android) / UserDefaults (iOS)
  • Files: App-private file storage

Why We Store This Data

All local data exists solely to provide the app's core functionality—tracking your practice progress, displaying your music library, and remembering your preferences. This is the minimum data needed for the app to work as you expect.

Legal Basis (GDPR): Legitimate interest—we process this data locally on your device to provide the practice tracking functionality you requested when you installed the app.

This data never leaves your device. We have no servers, no cloud storage, and no way to access your information. When you practice, only you know.

How to Delete Your Data

You have complete control over your data:

Delete All Data

  • Android: Settings > Apps > Crescendo > Storage > Clear Data
  • iOS: Settings > Crescendo > Reset App Data, or delete and reinstall the app

Delete Specific Data

  • Practice history: Settings > Data > Clear Practice History
  • Individual pieces: Long-press a piece in Library > Delete
  • Analytics data: Settings > Data > Turn off Usage Analytics (deletes on-device analytics data and resets your anonymous ID)

Uninstall

Uninstalling the app permanently deletes all associated data from your device.

Third-Party Services

Service Type Our Status
AnalyticsFirebase Analytics (consent-based, anonymous — see Optional Analytics)
AdvertisingNone
Crash reportingNone
Social media SDKsNone
Payment processorsApp Store / Play Store only

Open-Source Libraries

We use open-source software libraries to build the app. These libraries run entirely on your device and do not transmit any data:

  • State management (flutter_riverpod) — Manages app state locally
  • Database (drift) — Stores practice data in local SQLite
  • Sheet music display (webview_flutter) — Renders music notation
  • MIDI input (flutter_midi_command) — Connects to your keyboard
  • Local notifications (flutter_local_notifications) — Practice reminders (on-device only)

None of these libraries collect, transmit, or share your data.

App Stores

The only external parties involved are:

  • Apple App Store / Google Play Store: For app distribution. Their privacy policies govern their data collection, not ours.

Apple Privacy Policy · Google Privacy Policy

Age Requirements

Minimum Age

Crescendo is intended for users aged 13 years and older.

Region Minimum Age
United States13 (COPPA)
European Union13–16 (varies by country under GDPR)
Rest of World13

Why 13+

  • • We do not knowingly collect personal information from anyone, including children
  • • Our app functions entirely offline with local-only data storage
  • • The 13+ rating aligns with COPPA requirements
  • • EU member states set their own minimum age between 13–16 under GDPR Article 8

If You Are a Parent or Guardian

If you believe a child under the applicable age has accessed our app and you have concerns, please contact us at privacy@crescendopiano.app. Since we don't collect data, there is nothing for us to delete—but we're happy to answer any questions.

Future Account Features

When we introduce optional cloud sync, account creation will require users to meet the minimum age for their region. We will implement a neutral date-of-birth verification (not a simple checkbox) at signup to comply with COPPA requirements.

Future Features: Optional Cloud Sync

We plan to offer optional cloud synchronization in a future update. This feature does not exist yet. When implemented:

What Will Change

  • • Account creation will be optional (the app will continue to work fully offline)
  • • Accounts will require users to meet the minimum age for their region
  • • Only data you explicitly choose to sync will be transmitted
  • • You will be able to delete your cloud data at any time

What We Will Collect (Future)

  • • Email address (for account authentication)
  • • Date of birth (for age verification only)
  • • Practice data you choose to sync

Your Consent Required

Before enabling any cloud features:

  1. We will update this privacy policy
  2. You will be notified in the app
  3. You must explicitly opt in (we will never auto-enable)
  4. You can continue using the app without an account

Your Privacy Rights

Because all data stays on your device, you can exercise your privacy rights directly through your device's controls:

Right How It Applies
Right to AccessAll your data is on your device. You have full access through the app.
Right to DeletionDelete via app settings or by uninstalling.
Right to RectificationEdit your data directly in the app.
Right to PortabilityYour data is in standard SQLite format on your device.
Right to Opt OutThere's nothing to opt out of—we don't transmit data.
Right to Non-DiscriminationWe treat all users equally regardless of privacy choices.

For California Residents (CCPA/CPRA)

For transparency:

  • • We have not sold personal information
  • • We have not shared personal information for cross-context behavioral advertising
  • • Analytics data is anonymized and not linked to any individual
  • • You can opt out of analytics at any time in Settings

For European Users (GDPR)

  • Data Controller: Crescendo Piano LLC (contact: privacy@crescendopiano.app)
  • Legal Basis: Consent (Article 6(1)(a)) for analytics; legitimate interest for local practice data
  • Data Processor: Google LLC (Firebase Analytics) — processes anonymous analytics on our behalf
  • Data Processing: Practice data is processed locally. Analytics data (if consented) is transmitted to Google servers via TLS
  • Data Transfers: Analytics data may be transferred to Google servers in the US under Google's Standard Contractual Clauses
  • Your Rights: You can withdraw consent at any time in Settings. You can request deletion by turning off analytics (resets your anonymous ID)
  • Right to Complain: You may lodge a complaint with your local supervisory authority. Find yours here

Automated Decision-Making

We do not use automated decision-making, profiling, or algorithms that make decisions affecting you. All practice statistics are calculated locally on your device for your own use.

For All Users Worldwide

Your practice data always stays on your device. Analytics are optional, consent-based, and anonymous. You can decline analytics and use the full app without any data leaving your device.

Security

Local Data Protection

Your practice data is protected by:

  • App sandboxing: Data is stored in the app's private storage, inaccessible to other apps
  • Device security: Protected by your device's screen lock, encryption, and security features
  • Encrypted transmission: Analytics data (if enabled) is encrypted via TLS. Practice data is never transmitted

Our Security Practices

  • • No servers of our own to secure
  • • No databases to breach (your practice data stays on your device)
  • • No credentials to protect (no accounts)
  • • Analytics processed by Google under their security standards (Firebase Security)

Your Responsibility

  • • Keep your device secure with a screen lock
  • • Keep your device's operating system updated
  • • Be cautious about who has physical access to your device

Data Breach Notification

  • • We cannot experience a breach of your practice data (it never leaves your device)
  • • Anonymous analytics data is processed by Google under their security infrastructure

If we ever experience a security incident affecting the app itself (e.g., malicious code in an update), we will notify users via app store updates and our website within 72 hours of discovery.

Changes to This Policy

How We Handle Updates

  • • We will update this policy if our data practices change
  • • The "Last Updated" date at the top will be revised
  • • Material changes will be announced in the app before taking effect

Version History

  • v1.1 (March 2026): Added Optional Analytics section
    • — Added Firebase Analytics with consent-based collection
    • — Added Consent Mode v2 (Google EU User Consent Policy)
    • — Added data deletion via analytics toggle (resetAnalyticsData)
    • — Updated GDPR legal basis to include consent for analytics
    • — Updated Data Safety and compliance sections
  • v1.0 (December 2025): Initial privacy policy
    • — Complies with Apple Privacy Manifest requirements (enforced May 1, 2024)
    • — Complies with COPPA requirements (amended July 2024)
    • — Complies with GDPR, CCPA/CPRA, and international privacy laws

Review Schedule

We review this policy at least annually, even if no changes are needed.

Contact Us

If you have questions about this privacy policy or our privacy practices:

Crescendo Piano LLC

Email: privacy@crescendopiano.app

Response Time: We aim to respond within 7 business days.

What We Can Help With

  • • Questions about this privacy policy
  • • Concerns about your privacy
  • • Requests related to future account features
  • • Reports of child users (for compliance)

Platform-Specific Information

Apple App Store

  • Privacy Nutrition Label: "No, we do not collect data from this app"
  • App Store Display: "The developer does not collect any data from this app"
  • App Tracking Transparency (ATT): Not required—we don't track users
  • Privacy Manifest: NSPrivacyTracking: false, NSPrivacyCollectedDataTypes: (empty), UserDefaults API (Reason CA92.1)
  • Age Rating: 12+ (equivalent to our 13+ policy)

Google Play Store

  • Data collected: App interactions, device/other IDs (with consent only)
  • Data shared: None
  • Data encrypted in transit: Yes (TLS)
  • Data linked to identity: No
  • Data can be deleted: Yes (Settings > Usage Analytics toggle, or uninstall)
  • Content Rating: Teen (aligned with 13+ age requirement)

Compliance Summary

Regulation Our Status
GDPR (EU)Compliant—consent-based analytics, local practice data
ePrivacy DirectiveCompliant—consent obtained before analytics collection
Google EU User Consent PolicyCompliant—Consent Mode v2 implemented
CCPA/CPRA (California)Compliant—opt-out available, no data sales
COPPA (US Children)Compliant—13+ rating, analytics anonymized
LGPD (Brazil)Compliant—consent-based, local practice data
Google Play StoreCompliant—Data Safety form updated

We built Crescendo because we wanted a piano learning app that respects privacy. We're musicians and developers who got tired of apps that track everything.

Your practice sessions are personal. Your progress is yours. We don't need to know how many scales you played today or what time you practice. We just want to help you learn piano.

Your data. Your device. Your music.