Legal
Privacy Policy
Effective 2026-10-22
1. Summary. CardAdvantage is an offline-first app. Your collection, decks, and match history live in a database on your device and are not synced to a server. The app creates an anonymous account ID for you, and you can choose to link an email address to it (section 2). Apart from that, four things leave your device: requests for card data and images, crash diagnostics, AI output reports you choose to send, and — only if you turn on a cloud AI provider — the text of your AI prompts.
2. Your account. On Android, iOS, macOS, Windows, and the web, the app signs in to Firebase Authentication (Google) anonymously the first time it runs. This creates a random user ID with no name or email attached. The ID identifies your install to our AI service when you use a subscription feature. You can optionally link an email address and password to the ID under Settings → Account, so you can sign back in to the same ID later; Google then stores the email address and a hash of the password, and sends a verification email to the address. Your collection, decks, and match history are not uploaded to this account. If you use the managed AI endpoint, which is not offered yet, the number and cost of your AI requests are recorded against the ID to enforce your plan's limits.
3. What is stored on your device. Collections, decks, match and game records, sideboard swap plans, price history, purchase and transaction records you enter, import history, and your settings (including any AI API key or subscription token you enter). Downloaded AI model weights and the semantic-search index are also stored locally. None of this is transmitted to us. The only content of yours that reaches us is an AI output report you choose to send (section 6).
4. Card data (Scryfall). Card searches, card lookups, rulings, prices, and card images are fetched from the Scryfall API. Scryfall receives the search terms or card identifiers involved and your IP address, under its own privacy policy. These requests carry no account or user identifier.
5. AI features and your prompts. When you use an AI feature, the text of your prompt and the deck you are working on are sent to the AI provider you have selected. So are the name, mana cost, type, rules text, and whether you own it, for each card the AI looks up while it works. The rest of your collection is not sent. The provider processes this under its own terms:
- On-device models (the default): nothing leaves your device. Reporting a response is separate and goes to us, not to a third party (section 6).
- Cloud AI tier (subscription, 18+): sent to Google, via Firebase AI Logic (Gemini). Google processes it to return a response. The subscription is not offered yet, so this tier cannot currently be turned on.
- The managed endpoint (subscription): sent to the hosted service behind it, along with your subscription token. It is not offered yet either.
- An OpenAI-compatible server you configure yourself (local or self-hosted): sent to that host, along with any API key you entered.
This is a sharing of your content with a third party. Do not put personal or sensitive information in prompts. We do not use your prompts to train our own models, and we do not sell your data.
6. AI output reports. Results from the AI Architect have a "Report AI output" action for flagging a response that is offensive, harmful, or wrong. Nothing is sent unless you use it. A report sends us the reason you chose, any note you write, your prompt, the strategy text and card list the AI produced, the AI model used, the deck format, the app version, your device platform, and your user ID (section 2). Reports are stored in Google Cloud Firestore, a Firebase service, and are read only by us, to review AI output and improve the app. We keep a report for 180 days after you send it, and it is then deleted automatically, normally within a day. Deleting your account deletes your reports with it. A report you send while offline waits on your device until it can be sent. Signing out, deleting your account, or Delete All App Data removes it from your device unsent.
7. Crash diagnostics. If Firebase Crashlytics is enabled in the build you installed, an app crash sends Google a stack trace along with your device model, operating-system version, app version, and a randomly generated installation identifier. This is used only to diagnose and fix crashes. It contains no collection, deck, or prompt content and is not used for advertising.
8. App integrity. The app uses Firebase App Check, which asks the platform (Play Integrity on Android, App Attest on iOS) to confirm the request comes from a genuine, unmodified install before a cloud AI request is served. The same token accompanies an AI output report where the platform issues one. The resulting attestation token identifies the app installation, not you.
9. Model downloads. On-device AI models are downloaded from their hosting provider (Hugging Face) on request. That provider sees the download request and your IP address.
10. Camera. The card scanner reads the camera preview on your device and picks out the name, set code and collector number printed on the card, then matches them against the card catalog stored on your device. Only when that catalog lacks the printing does it look the set code and collector number up on Scryfall (section 4). Camera frames are never uploaded and never saved; no photograph is stored.
11. Store links. Opening a "buy" link hands off to your browser and the merchant's site (TCGplayer, Mana Pool, or Cardmarket), which is governed by that merchant's privacy policy. The link may carry a referral code identifying CardAdvantage as the referrer; it carries nothing that identifies you.
12. What we do not do. No advertising, no advertising identifier, no analytics or tracking SDK, no profile building, and no sale or advertising-related sharing of your data.
13. Retention and deletion. Your collection, decks, match history, settings, and API keys are stored only on your device. You can erase all of it at any time from Settings → Privacy & Data → Delete All App Data, or by uninstalling the app. Neither deletes your account: the user ID, any email address you linked, any AI output reports you sent, and any AI usage recorded against it are held by Firebase. To delete your account and everything recorded against it, use Settings → Account → Delete Account in the app. If you no longer have the app installed, email cardadvantage@boundlessnotions.com from the address you linked and we will delete it for you. To request deletion of crash diagnostics associated with your app installation, email the same address with your device model and the approximate dates.
14. Children. CardAdvantage is not directed to children. The optional cloud AI tier is restricted to users aged 18 or older. By enabling it you confirm you are at least 18 years old. On-device AI features have no age restriction.
15. Changes. This policy may be updated; the effective date above changes with it, and the current version is always available in the app under Settings → Legal & Attributions.
16. Contact. Questions or requests: cardadvantage@boundlessnotions.com
The same policy is in the app under Settings → Legal & Attributions. How to erase your data is also on its own page: Deleting your data.