Privacy Policy

Effective Date: 2026-07-03

This document defines the Privacy Policy for Wordrop — a macOS menu-bar vocabulary learning application. It covers the general (production) app and the Beta version, which adds a small amount of additional data collection on top of the standard app.


1. Overview

Wordrop stores your learning data locally by default. The app operates entirely on your device for its core learning features, and no personal account, cloud sync, or third-party analytics SDK is used. The only data that ever leaves your device is what you explicitly choose to send us — a vocabulary report, feedback or a feature request, an app rating, or (for Beta testers) your registration details. Nothing else is transmitted. See §3 below for exactly what that covers.

  • Product Manager: Daniel
  • Contact: support@tannguyen.info

2. Data Stored Locally Only

All data listed below is stored exclusively on your device using macOS UserDefaults, SQLite (via GRDB), and the app's Application Support container. None of this data is ever transmitted to any server — it stays on your Mac unless you uninstall the app.

DataPurposeStorage
Vocabulary words and quiz history (word, translations, SRS state, review timestamps)Core learning functionalitySQLite (GRDB) — local
Daily learning records (streak, words completed, heatmap data)Progress trackingSQLite — local
App settings (language pair, daily word goals, quiz modes, session config)User preferencesUserDefaults — local
Pricing tier and daily word-count counterFreemium feature gatingUserDefaults — local
Notification preferences (reminder interval, snooze state)Quiz delivery schedulingUserDefaults — local
Focus/blocking preferences (calendar blocking, screen-share blocking, video-call blocking)Context-aware deliveryUserDefaults — local
Word pack identifiers (active pack slug)Vocabulary set selectionUserDefaults — local

2.1 System Permissions Requested

PermissionReasonWhen Requested
User NotificationsTo deliver quiz reminders when the quiz window cannot be shown (e.g., fullscreen mode)On first launch
Screen Recording / AccessibilityTo detect full-screen windows and suppress quiz popups during focused workOn first toggle of fullscreen detection
Calendar (Read-only)To detect active calendar events and suppress quiz popups while the user is in a meetingOn first launch, or when enabled in Settings

These permissions are standard macOS entitlements. No screen content is captured, stored, or transmitted. Calendar data is read locally on-device only — event titles and attendees are never stored or sent anywhere.

2.2 In-App Purchases (StoreKit 2)

Wordrop uses Apple's StoreKit 2 framework for paid-tier subscriptions and one-time purchases (Monthly, Annual, Lifetime). Purchase transactions are processed entirely by Apple; Wordrop does not store or transmit payment information. The resolved tier is persisted locally in UserDefaults.


3. Data You Choose to Share With Us

These are the only ways any data leaves your device, and they only happen when you take an explicit action. This applies to every build of Wordrop, not just the Beta version.

3.1 Vocabulary Reports

If you spot a word, translation, or example sentence that looks wrong, you can report it directly from the app. Reporting a word sends:

Data SentPurpose
The word/entry being reported (word, translation, example sentence)So the developer can review and fix the entry
Issue type (wrong translation, wrong example, typo, other)To categorize and prioritize fixes
Your optional note describing the problemAdditional context for the fix
App version and macOS versionTo reproduce the issue

A vocabulary report does not include your name or email unless you are a Beta tester (see §4.1) or you choose to add them in your note.

3.2 Feedback & Feature Requests

Tapping "Send Feedback" in the app sends your message text, along with app version and macOS version, directly to the developer. If you are a Beta tester, your registered name and email are attached so the developer can follow up; otherwise, no identifying information is sent unless you include it in your message.

3.3 App Ratings

Tapping "Rate this app" sends your star rating (1–5) and an optional message, along with app version and macOS version. As with feedback, your name and email are only attached if you are a Beta tester.

3.4 How This Data Is Sent

Vocabulary reports, feedback, and ratings are all sent to a Telegram bot controlled by the Wordrop developer, over TLS-encrypted HTTPS. No third-party analytics services are used, and no data is sent if the Telegram bot token is not configured in the build.


4. Beta-Only Additional Data Collection

The Beta version of Wordrop is a pre-release build distributed directly to invited testers. In addition to §3 above (which applies to every build), it collects a small amount of extra data to run the trial and gather engagement feedback. This layer is only present in builds where the compile-time beta flag is enabled.

4.1 Beta Registration Data (Collected Once at Onboarding)

During onboarding (BetaRegistrationView), beta users are asked to provide:

FieldPurpose
Name (optional)To identify the tester in reports
EmailRequired to send production-access requests after trial expires
Job / Role (optional)To understand the user demographic
Consent checkboxExplicit opt-in consent to beta data collection

This data is stored locally in AppSettings (UserDefaults). It is only transmitted alongside a §3 action (vocabulary report, feedback, rating) or an automatic milestone report (see §4.2), so the developer can identify and follow up with you.

4.2 Beta Engagement Data (Collected Automatically)

After the consent checkbox is ticked, the following usage data is recorded locally and transmitted at milestone intervals:

DataPurposeTransmitted?
Words completed per day (count per date string)Engagement metricYes — at milestones
Word packs used (set of pack IDs across all days)Usage patternYes — at milestones
App version string and macOS versionDevice context for bug reportsYes — in all reports
Beta install dateMilestone calculation (D+3, D+7, D+14, D+30)Not directly; used locally

Milestone reports (D+3, D+7, D+14, D+30) send your name, email, job, language pair, words-per-day log, word packs used, app version, and macOS version — automatically, once per milestone on app launch.

4.3 Production Access Requests

When a Beta trial expires, tapping "Request Production" in the PLAN tab sends your name, editable email, preferred pricing tier, and an optional message, along with app version and macOS version. This is a Beta-only action, since only Beta testers have a trial to convert.

4.4 Beta Trial Window

The beta version grants full paid-tier access for 30 days from first launch. This date is stored locally only. When the trial expires, the app reverts to free-tier restrictions (5 words/day, flashcard-only mode).

4.5 Beta Data Retention

Beta data (daily word logs, pack usage set) is stored on-device and remains until the app is uninstalled. The developer retains transmitted Telegram messages for the duration of the beta program.

4.6 Legal Basis for Beta Data Collection (GDPR)

For users in the European Economic Area, data collection during the beta program is based on consent (GDPR Article 6(1)(a)). Consent is given via the checkbox in BetaRegistrationView. Beta testers may withdraw consent by contacting the developer, who will delete their transmitted data and remove them from the program.


5. Third-Party Services

ServiceUsed InData SharedLink
Apple StoreKit 2Production + BetaPurchase transaction processing (handled by Apple)Apple Privacy Policy
Telegram Bot APIAll builds (vocabulary reports, feedback, ratings) + Beta only (registration, milestone reports, production requests)Vocabulary reports, feedback, ratings, and (Beta) registration infoTelegram Privacy Policy

6. What We Never Collect

  • No background telemetry or automatic network calls — data is only ever sent when you take an explicit action described in §3 or §4
  • No advertising identifiers (IDFA, IDFV)
  • No crash reporting SDKs (e.g., Firebase Crashlytics, Sentry)
  • No analytics SDKs (e.g., Mixpanel, Amplitude)
  • No screen content or keystrokes

7. Children's Privacy

Wordrop is not directed at children under the age of 13. The app does not knowingly collect personal information from children.


8. Data Security

All locally stored data is protected by macOS App Sandbox. Data transmitted to Telegram is sent over TLS-encrypted HTTPS. The developer does not use the transmitted data for any purpose other than improving the product.


9. User Rights

All users: your learning data stays on your device. You can delete all local app data by uninstalling Wordrop. The only data we ever retain on our side is what you explicitly sent us under §3 or §4 above.

You additionally have the right to:

  • Access the data transmitted about you (contact the developer)
  • Request deletion of transmitted data
  • Withdraw Beta consent at any time by contacting the developer

10. Changes to This Policy

The developer may update this Privacy Policy. Beta users will be notified of material changes through the app's PLAN tab.


11. Contact

For privacy-related questions, contact our product manager: support@tannguyen.info