[{"data":1,"prerenderedAt":247},["ShallowReactive",2],{"privacy-en":3},{"id":4,"title":5,"body":6,"description":19,"extension":239,"meta":240,"navigation":241,"path":242,"seo":243,"stem":244,"updated":245,"__hash__":246},"legal\u002Fen\u002Fprivacy.md","Privacy Policy",{"type":7,"value":8,"toc":225},"minimark",[9,13,20,34,39,81,85,88,92,106,109,113,120,147,150,154,179,183,186,190,200,204,207,211,214,218],[10,11,5],"h1",{"id":12},"privacy-policy",[14,15,16],"p",{},[17,18,19],"strong",{},"Last updated: September 23, 2026",[14,21,22,23,26,27,26,30,33],{},"Grail (\"",[17,24,25],{},"we","\", \"",[17,28,29],{},"us",[17,31,32],{},"Grail","\") is an iOS app that helps you track a portfolio of\ntrading cards (Pokémon TCG and One Piece Card Game). This page explains what data the app\ncollects, why, and how you can control it.",[35,36,38],"h2",{"id":37},"data-we-collect","Data we collect",[40,41,42,53,59,65,75],"ul",{},[43,44,45,48,49,52],"li",{},[17,46,47],{},"Account data",": when you sign up, we collect your ",[17,50,51],{},"email address"," via Firebase\nAuthentication to create and secure your account.",[43,54,55,58],{},[17,56,57],{},"Portfolio data",": the wallets, cards, quantities, wishlist, and wantlist entries you create\nin the app, stored in our database (Firebase Firestore) so they sync across your devices and,\nfor shared wallets, with the collaborators you explicitly invite.",[43,60,61,64],{},[17,62,63],{},"Usage events",": product analytics (e.g. \"a wallet was created\", \"a search was\nperformed\") tied to your account ID and email address, used only internally to understand\nwhich features are actually used and to support your account. They are never sold or used\nfor advertising. No card values or portfolio amounts are included in these events.",[43,66,67,70,71,74],{},[17,68,69],{},"Card scanning",": when you use the camera to scan a card, text recognition runs ",[17,72,73],{},"entirely\non your device"," using Apple's built-in Vision framework. Photos are never uploaded to our\nservers or to any third party.",[43,76,77,80],{},[17,78,79],{},"Face ID \u002F Touch ID",": used only to lock the app locally on your device via Apple's\nLocalAuthentication framework. Biometric data never leaves your device and is never seen by\nus.",[35,82,84],{"id":83},"data-we-do-not-collect","Data we do not collect",[14,86,87],{},"We do not collect location data or contacts.",[35,89,91],{"id":90},"how-data-is-used","How data is used",[40,93,94,97,100,103],{},[43,95,96],{},"To operate your account and sync your portfolio across devices.",[43,98,99],{},"To calculate card and portfolio prices, using our own backend which queries public trading\ncard market data.",[43,101,102],{},"To understand product usage in aggregate and improve the app.",[43,104,105],{},"To show ads that keep Grail free (see \"Advertising\" below).",[14,107,108],{},"We do not sell your data. Other than the advertising identifiers described below, shared with\nGoogle AdMob for ad serving, we do not share your data with data brokers.",[35,110,112],{"id":111},"advertising","Advertising",[14,114,115,116,119],{},"Grail is free to use and is supported by ads served through ",[17,117,118],{},"Google AdMob",". We currently show\nbanner ads only — no interstitial or rewarded ads.",[40,121,122,128,134],{},[43,123,124,127],{},[17,125,126],{},"Consent (EEA\u002FUK)",": before showing ads, we ask for your consent through Google's User\nMessaging Platform (UMP), as required by GDPR\u002FUK data protection law. You can choose to see\nonly non-personalized ads.",[43,129,130,133],{},[17,131,132],{},"App Tracking Transparency (iOS)",": after your first meaningful action in the app — not on\nfirst launch — iOS will ask whether Grail can track you across other companies' apps and\nwebsites for personalized advertising. If you decline, you will still see ads, just not\npersonalized ones.",[43,135,136,139,140,146],{},[17,137,138],{},"What AdMob may collect",": depending on the choices above, AdMob may collect an advertising\nidentifier (such as Apple's IDFA, only if you grant tracking permission), your IP address, and\ngeneral device and app-usage signals to select and measure ads. This data is handled by Google\nunder its own ",[141,142,5],"a",{"href":143,"rel":144},"https:\u002F\u002Fpolicies.google.com\u002Fprivacy",[145],"nofollow",".",[14,148,149],{},"If we ever introduce a paid plan, we plan to let subscribers remove ads entirely — this policy\nwill be updated when that happens.",[35,151,153],{"id":152},"third-party-services","Third-party services",[40,155,156,162,168,174],{},[43,157,158,161],{},[17,159,160],{},"Firebase"," (Google) — authentication and database storage.",[43,163,164,167],{},[17,165,166],{},"Cloudflare Workers"," — our own backend for price history and card data.",[43,169,170,173],{},[17,171,172],{},"Axiom"," — internal product analytics, tied to your account ID and email address.",[43,175,176,178],{},[17,177,118],{}," — serves ads to keep Grail free; see \"Advertising\" above.",[35,180,182],{"id":181},"shared-wallets","Shared wallets",[14,184,185],{},"If you join or create a shared wallet, the cards, quantities, and wantlist entries in that\nwallet are visible to every member of that wallet. Your email address is also visible to the\nother members in the wallet's member list, so they know who is in it.",[35,187,189],{"id":188},"data-retention-deletion","Data retention & deletion",[14,191,192,193,199],{},"You can request deletion of your account and all associated data at any time by contacting us\nat ",[17,194,195],{},[141,196,198],{"href":197},"mailto:hello@grailtcg.app","hello@grailtcg.app",". We will delete your data within 30 days, except where we are\nrequired to retain it by law.",[35,201,203],{"id":202},"children","Children",[14,205,206],{},"Grail is not directed at children under 13, and we do not knowingly collect data from them.",[35,208,210],{"id":209},"changes-to-this-policy","Changes to this policy",[14,212,213],{},"We may update this policy as the app evolves. Material changes will be reflected here with an\nupdated \"Last updated\" date.",[35,215,217],{"id":216},"contact","Contact",[14,219,220,221,146],{},"Questions about this policy? Email us at ",[17,222,223],{},[141,224,198],{"href":197},{"title":226,"searchDepth":227,"depth":227,"links":228},"",2,[229,230,231,232,233,234,235,236,237,238],{"id":37,"depth":227,"text":38},{"id":83,"depth":227,"text":84},{"id":90,"depth":227,"text":91},{"id":111,"depth":227,"text":112},{"id":152,"depth":227,"text":153},{"id":181,"depth":227,"text":182},{"id":188,"depth":227,"text":189},{"id":202,"depth":227,"text":203},{"id":209,"depth":227,"text":210},{"id":216,"depth":227,"text":217},"md",{},true,"\u002Fen\u002Fprivacy",{"title":5,"description":19},"en\u002Fprivacy","2026-09-23","-Ia8lhX8XmK7ALLB9tCYcYEBgGkaK4DvaGXRifQTE8k",1790191572216]