Iron Swarm is a 2D top-down tank arcade game developed by WizusLabs. This Privacy Policy describes how the Iron Swarm application (“the App”) handles your information. We are committed to transparency about what data exists on your device, what third-party services may collect, and what choices you have.
1. Data We Collect
1a. Data Stored Locally on Your Device (Never Transmitted)
Iron Swarm is designed with an offline-first architecture. The following data is created and stored entirely on your device. It is never transmitted to our servers or any third party.
- High scores — your best wave reached and highest score. Stored in SharedPreferences (device-local key-value storage).
- App preferences — sound toggle, music toggle, and other settings. Stored in SharedPreferences.
- In-app purchase entitlement cache — a local record of whether an ad-removing entitlement (Commander Pro, or the legacy Full Unlock for prior owners) is active, used to enable offline access to purchased content. Stored in SharedPreferences. The authoritative purchase record is maintained by Apple (App Store) or Google (Play Store), not by us.
We do not operate servers, databases, or cloud services that receive any of this data. Your game data exists only on your device.
1b. Data Collected by Third-Party SDKs
The App integrates third-party services that may collect data independently. The App itself does not collect, transmit, or process any personal data. However, the following SDKs operate within the App and are subject to their own data collection practices.
Unity LevelPlay (ironSource) advertising, free-tier users only
- The App displays advertisements (banner, interstitial between rounds, and opt-in rewarded video) via Unity LevelPlay (ironSource), an ad mediation platform operated by Unity Technologies. LevelPlay mediates ad demand from integrated sources, including Google AdMob served as a mediated adapter. Ads are shown only to users who have not removed advertising through a qualifying in-app purchase (see “Commander Pro” below). Users with an active ad-removing entitlement see no ads.
- The specific demand source that serves a given impression is determined at request time by LevelPlay’s mediation logic. Google AdMob may serve impressions as one mediated source within LevelPlay.
- In the course of serving ads, the LevelPlay SDK and its mediated sources may collect:
- Device identifiers (such as the Advertising ID — IDFA on iOS after ATT consent, GAID on Android)
- IP address
- Device properties (device model, screen resolution, display properties, OS version, available memory, battery level)
- Device settings (language, timezone, volume)
- App session information (session duration, app version, SDK version)
- Country and timezone derived from IP address
- Ad interaction data (impressions, clicks, video completion events)
- Ad preferences and interest segments
- Consent signals (such as the consent string collected through the in-app consent flow)
- SKAdNetwork postbacks (iOS) for measurement and conversion attribution
- Rewarded video ads may additionally collect video completion data (e.g., quartile progress and reward grant events).
- On iOS, the App declares the SKAdNetwork identifiers required by LevelPlay’s mediated sources in
Info.plistso Apple-attested ad attribution can occur without cross-app tracking. - This data collection is performed by Unity LevelPlay (ironSource) and its mediated sources for ad delivery purposes. It is not used by WizusLabs, and we do not receive personally identifiable information from these services.
- Unity (ironSource / LevelPlay) Privacy Policy: https://unity.com/legal/game-player-and-app-user-privacy-policy
- Google AdMob Privacy Policy: https://policies.google.com/privacy
Ad Consent
- On first launch, the App will request your consent for personalized advertising through Unity LevelPlay’s consent flow.
- On iOS, the App Tracking Transparency (ATT) prompt is presented as part of LevelPlay SDK initialization, asking whether you allow the App to track your activity across other companies’ apps and websites for ad personalization. If you decline ATT, the IDFA is not made available to the SDK and ad personalization is restricted accordingly.
- In the European Union and European Economic Area (EU/EEA), a consent form is presented via Unity LevelPlay’s consent flow, which propagates your consent signals to the mediated demand sources.
- If you decline personalized advertising, the App will continue to show advertisements, but they will be non-personalized (not based on your interests or activity). Declining does not remove ads; it changes which ads you see.
- You can change your ad consent preference at any time through the consent form (accessible via the App’s Settings screen) or through your device settings (iOS: Settings > Privacy & Security > Tracking; Android: Settings > Privacy > Ads).
Firebase Crashlytics (crash reporting)
- The App uses Firebase Crashlytics to collect crash reports and diagnostic data when the App encounters an unexpected error. This helps us identify and fix stability issues.
- Firebase Crashlytics may collect:
- Crash stack traces and exception information
- Device model, OS version, and orientation
- App version and build number
- A Crashlytics installation UUID (a random identifier, not tied to your personal identity)
- Amount of free RAM and disk space at the time of the crash
- Crash data is sent to Google’s Firebase servers. It does not include your high scores, preferences, or any other user-generated content.
- Firebase Crashlytics’ Privacy Policy: https://firebase.google.com/support/privacy
RevenueCat (subscription management)
- The App uses RevenueCat to manage in-app subscription receipt validation and entitlement delivery. RevenueCat acts as a server-side layer that communicates with Apple (App Store) and Google (Play Store) to verify purchase receipts and determine subscription status.
- RevenueCat assigns an anonymous app user ID to each installation. This ID is not tied to your personal identity and cannot be used to identify you.
- RevenueCat may collect:
- Anonymous app user ID
- Subscription status and entitlement information
- Purchase receipts (as provided by Apple or Google)
- Device platform and OS version
- App version
- No personal information (name, email, payment details) is collected by RevenueCat through the App. Payment processing is handled entirely by Apple or Google — RevenueCat receives only the purchase receipt for validation purposes.
- RevenueCat’s Privacy Policy: https://www.revenuecat.com/privacy
Platform In-App Purchase Processing
The App offers in-app purchases — Commander Pro, available as an auto-renewable annual subscription ($9.99/year) or a one-time lifetime purchase ($24.99) — processed by Apple (App Store) or Google (Play Store). A legacy one-time “Full Unlock” purchase is honored for prior owners but is not offered in version 1.0. The App never sees, stores, or transmits your payment information, credit card details, or billing address. All payment processing is handled by the respective platform. Receipt validation is handled by RevenueCat (see above).
Google Fonts (typography)
- The App uses the
google_fontspackage to render HUD and menu typography. The Iron Swarm build pre-bundles the typeface files (Orbitron and Roboto Mono) inside the application package; the typeface files are loaded from local app assets at runtime. - If the locally bundled font asset for a requested weight is unavailable, the
google_fontspackage may, as a fallback, fetch the requested font file from Google’s font CDN (fonts.gstatic.com). When this fallback occurs, your IP address is visible to Google’s CDN as part of the standard HTTPS request. - This fallback is not used to identify you and no font request includes any account, device identifier, or user content.
- Google’s Privacy Policy: https://policies.google.com/privacy
In-App Review Prompt (Apple StoreKit / Google Play In-App Review)
- The App uses the
in_app_reviewpackage to occasionally invite you to rate the App after a positive in-game milestone (for example, after defeating your first boss). - The rating prompt is delivered by Apple’s StoreKit
SKStoreReviewControllerAPI (iOS) or Google Play’s In-App Review API (Android). The App does not see your rating or review text; the rating you submit is handled entirely by the platform store. - The App stores a single local flag in your device’s preferences indicating that the prompt has already been shown, so we do not ask you again. This flag never leaves your device.
Share Sheet (share_plus)
- When you tap a “Share” affordance (for example, after a kill-streak moment), the App invokes your operating system’s native share sheet via the
share_pluspackage. You choose which destination application or contact receives the shared content. - The App passes only the content you elected to share (for example, a screenshot file from the App’s own cache directory and a short text caption) to the destination application you select. The App does not transmit any data to any third party as part of the share invocation itself.
- The destination application you select operates under its own privacy policy. We are not responsible for how the destination application handles the shared content.
External Links (url_launcher)
- The App uses the
url_launcherpackage to open external URLs in your default browser or to deep-link into your platform’s subscription management screen (for example, the App Store subscription settings page when you tap “Manage Subscription”). - The App passes the destination URL to your operating system’s standard URL-handling APIs. The App does not transmit any data about you to any third party as part of the URL launch.
- Once you leave the App for an external destination, the destination service operates under its own privacy policy.
Local Notifications (flutter_local_notifications)
- The App schedules a single daily local notification to remind you when a new Daily Challenge is ready (the default reminder time is 18:00 device-local time). This notification is scheduled and delivered entirely on your device by your operating system. There is no Apple Push Notification service (APNs), no Firebase Cloud Messaging (FCM), no remote push channel, and no server contact involved. We do not operate a push-notification backend.
- The notification is local-only: no notification content, schedule, or delivery information is transmitted to our servers or any third party. No personal data is collected or shared as part of scheduling or delivering the notification.
- Permission timing. The App does not ask for notification permission on first launch. The OS notification permission prompt is shown only after you complete your first chapter, at a moment where the daily-reminder feature is contextually relevant. If you decline, the App continues to function normally and will not ask again.
- You can disable notifications at any time. Use the in-app Settings screen (“Daily challenge reminder” toggle) to cancel the scheduled reminder, or disable notifications for Iron Swarm in your device’s OS Settings:
- iOS: Settings > Notifications > Iron Swarm
- Android: Settings > Apps > Iron Swarm > Notifications
- Local notifications are classified by Apple and Google as user-functionality reminders, not marketing communications. The App does not use notifications for promotional or marketing purposes.
2. Data We Do NOT Collect
Iron Swarm does not collect, transmit, or process any of the following:
- No account creation, email addresses, names, or personal identifiers
- No analytics or telemetry data (no event tracking, no usage analytics)
- No location data
- No contacts, photos, camera, microphone, or other sensitive device permissions
- No data synced to any cloud service or remote server
- No browsing history, search history, or usage patterns transmitted off-device
- No health or fitness data
3. Data Sharing
We do not sell, rent, share, or transfer your personal data to any third party.
- Unity LevelPlay (ironSource) (and the ad demand sources it mediates, including Google AdMob), Firebase Crashlytics, RevenueCat, and the Google Fonts CDN (only when a non-bundled font weight is requested) operate under their own respective privacy policies (linked above) and may collect data as described in Section 1b. We do not receive personally identifiable information from these services.
- The In-App Review Prompt and the System Share Sheet are platform-provided services (Apple StoreKit / Google Play In-App Review and the iOS / Android share sheet, respectively). When you choose to invoke them, the platform — and any destination application you select — operates under its own privacy policy. The App does not transmit any data to those services on your behalf.
- High scores and preferences are stored only on your device and are never transmitted anywhere.
- In-app purchase transactions are processed by Apple or Google. We receive only an entitlement confirmation (purchased or not purchased), not your payment details.
4. Data Retention
- All locally stored data (high scores, preferences, purchase entitlement cache) persists on your device until you uninstall the App or manually clear the App’s data through your device settings.
- We do not maintain any server-side data stores. There is no server-side data to retain, expire, or delete.
- Third-party services (Unity LevelPlay (ironSource) and the demand sources it mediates, Firebase Crashlytics, RevenueCat) retain data according to their own privacy policies.
5. Data Security
- All data stored by the App resides in your device’s local storage, protected by your device’s built-in security features (device encryption, lock screen, biometric authentication).
- The App does not transmit your game data or preferences over any network.
- Communications between the App and third-party services (Unity LevelPlay (ironSource) for ad delivery, Firebase Crashlytics for crash reporting, RevenueCat for subscription management) use industry-standard encrypted connections (HTTPS/TLS).
6. Children’s Privacy
- Iron Swarm is a general-audience tank arcade game rated 9+ (Apple) / E10+ (ESRB). It features cartoon tank combat with pixel-art explosions. There is no blood, gore, strong language, or mature content.
- The App is not specifically directed at children under the age of 13. It does not knowingly collect personal information from children under 13.
- Ad personalization in the App is governed by the consent flow described in Section 1b. Users who decline personalized advertising (via the in-app consent form, ATT on iOS, or device ad settings on Android) are served non-personalized ads only.
- If you are a parent or guardian and believe your child has been affected by a third-party SDK’s data collection through the App, please contact us at the address below so we can assist.
7. Your Rights and Choices
All users:
- You can delete all App data at any time by uninstalling the App or clearing the App’s data in your device settings:
- iOS: Settings > General > iPhone Storage > Iron Swarm > Delete App
- Android: Settings > Apps > Iron Swarm > Storage > Clear Data
- You can purchase Commander Pro (annual subscription or one-time lifetime) to remove all advertising from the App. Prior owners of the legacy Full Unlock retain their ad-free entitlement.
- You can manage ad-related settings through your device:
- iOS: Settings > Privacy & Security > Tracking
- Android: Settings > Privacy > Ads
Users in the European Union / European Economic Area (GDPR):
- You have rights under the General Data Protection Regulation including the right to access, rectification, erasure, restriction of processing, data portability, and objection.
- Because Iron Swarm stores all user data locally on your device and we do not maintain any server-side data, these rights are exercised entirely through your device. You have full control over your data at all times.
- For ad-related data collected by Unity LevelPlay (ironSource) and the demand sources it mediates, you can exercise your GDPR rights by managing your consent through the consent form presented by the App (powered by LevelPlay’s consent flow). You may also withdraw or change your consent at any time in the App’s Settings screen.
- For data collected by Firebase Crashlytics, please refer to their privacy policy (linked in Section 1b) for information on exercising your GDPR rights.
Users in California (CCPA):
- California residents have the right to know what personal information is collected, to request deletion, and to opt out of the sale of personal information.
- We do not sell personal information that we collect directly. All locally stored data is under your direct control on your device.
- Unity LevelPlay (ironSource) and the demand sources it mediates use device identifiers and ad interaction data to serve personalized advertisements, which may constitute a “sale” of personal information under the CCPA’s broad definition. California residents can opt out of personalized advertising by declining the consent prompt within the App, through their device settings (iOS: Settings > Privacy & Security > Tracking; Android: Settings > Privacy > Ads), or by purchasing Commander Pro (annual or lifetime) to remove ads entirely. Prior owners of the legacy Full Unlock remain ad-free.
8. Third-Party Links and Services
The App may contain links to third-party websites or services (such as subscription management pages or ad destinations). These third-party services have their own privacy policies, and we encourage you to review them. We are not responsible for the privacy practices of third-party services.
9. Changes to This Privacy Policy
We may update this Privacy Policy from time to time to reflect changes in the App, our practices, or applicable law. When we make changes:
- The updated policy will be posted at https://wizuslabs.com/iron-swarm/privacy-policy.
- The “Last updated” date at the top of this document will be revised to reflect the date of the most recent changes.
- For material changes, we will update the App’s store listing to note the revision.
We encourage you to review this Privacy Policy periodically.
10. Contact Us
If you have questions, concerns, or requests regarding this Privacy Policy or the App’s data practices, please contact us at:
Email: [email protected]
11. App Information
- App Name: Iron Swarm
- Developer: WizusLabs
- Platforms: iOS (App Store), Android (Google Play), Web, Windows, macOS, Linux
- Category: Games (Action / Arcade)
- Engine: Flutter + Flame
- Ad SDK: Unity LevelPlay (ironSource) mediation, with Google AdMob served as a mediated source — see §1b
- Crash Reporting: Firebase Crashlytics
- In-App Purchases: Commander Pro (annual subscription $9.99/year, or one-time lifetime $24.99 — removes ads, removes wave cap, unlocks Mission Mode); legacy “Full Unlock” honored for prior owners, not offered in v1.0
- Subscription Management: RevenueCat
- Data Storage: Local only (SharedPreferences). No server. No cloud sync.