Available for new projects6 products shippedOver 10 years engineeringCurrently exploring edge infraBased in Porto · working worldwideAvailable for new projects6 products shippedOver 10 years engineeringCurrently exploring edge infraBased in Porto · working worldwide
← MahjongZen
/ MahjongZen

Privacy Policy.

By / helderpereira.dev

Effective: 2026-05-07

This Privacy Policy explains how Helder Pereira ("we", "I", "the developer") handles information in connection with the iOS game MahjongZen ("the App"), as published on the Apple App Store.

1. Who is the data controller

Helder Pereira

Porto, Portugal

Contact: heldermrpereira@gmail.com

2. Data we keep on the device

We do not collect, store, or transmit any personal data on our own servers. The App has no backend.

The following information is stored only on your device and never leaves it unless you reinstall:

  • Game records (best time per layout, games started, won, abandoned) via SwiftData
  • User preferences (haptics, sound, onboarding state, ad-cadence pacing) via UserDefaults
  • Cached app icons and the cached cross-promotion manifest under Application Support

Deleting the App removes all of this.

3. Data collected by third parties inside the App

Google Mobile Ads (AdMob)

The App uses Google AdMob for two ad formats:

  • Rewarded video ads — a player can watch one to undo on a dead-end board.
  • Interstitial ads — shown roughly on every third new-game start. Disabled entirely for users who own MahjongZen Pro.

AdMob may collect:

  • Advertising identifier (IDFA) — only if you grant App Tracking Transparency permission. If you decline, AdMob serves contextual (non-personalised) ads.
  • Approximate location (derived from IP address)
  • Device information (model, OS version, language, network type)
  • Ad interaction events

The App declares the following tracking domains in its iOS privacy manifest (PrivacyInfo.xcprivacy):

  • googleads.g.doubleclick.net
  • googleads4.g.doubleclick.net
  • pagead2.googlesyndication.com
  • googletagmanager.com
  • www.google-analytics.com
  • app-measurement.com
  • firebase-settings.crashlytics.com

Google's data practices: https://policies.google.com/privacy

Apple Game Center

When you sign in to Game Center, the App submits scores (best time per layout) and achievement progress to Apple. The App sees only your Game Center handle when leaderboards are displayed; it never sees your Apple ID or other account details. Game Center is governed by Apple's privacy terms: https://www.apple.com/legal/privacy/

Apple StoreKit

In-app purchases are processed by Apple. The App offers three non-consumable purchases:

  • com.mahjongzen.theme.jade — Jade Stone theme
  • com.mahjongzen.layouts.premium — Premium Layouts pack
  • com.mahjongzen.pro — MahjongZen Pro (everything plus no ads)

We receive only a verified receipt for successful purchases; we never see card details or full Apple ID. Apple's privacy policy applies to that transaction: https://www.apple.com/legal/privacy/

4. App Tracking Transparency

On first launch the App asks for tracking permission via Apple's ATT prompt. The decision is yours and can be changed any time in iOS Settings → Privacy & Security → Tracking → MahjongZen.

5. Cross-promotion manifest

At launch the App fetches https://helderpereira.dev/apps.json to populate its "More Apps" screen with other Helder Pereira apps. The request carries no personal data and is identical to one served to any visitor of helderpereira.dev.

6. Children

The App is rated 4+ and is suitable for general audiences. We do not knowingly collect personal data from children. When the device's age signals indicate a child user, AdMob is configured with child-directed treatment in line with COPPA. If you are a parent and believe your child has used the App, contact us and we will help.

7. Your rights (GDPR / CCPA)

We do not hold any personal data of yours on our side, so we have nothing to return, correct, or delete. You can:

  • Reset all on-device data by deleting the App.
  • Withdraw ATT consent at any time in iOS Settings.
  • Reset the advertising identifier in iOS Settings.
  • Request your ad-personalisation data from Google AdMob: https://safety.google/privacy/ads-and-data/

8. Changes

If this policy changes, the new version is published at this URL with a new effective date. Substantive changes will be communicated inside the App where reasonable.

9. Contact

heldermrpereira@gmail.com