Chartie Privacy Policy
Last updated September 7, 2026
Chartie analyzes the chart you choose and keeps your saved analysis history in your private iCloud account. This policy explains what data is processed, why it is needed, and the choices available to you.
We do not sell personal data. Your selected chart image is sent only to provide the analysis you request. Saved charts and analyses are stored through Apple’s private CloudKit database for your iCloud account.
1. Scope
This Privacy Policy applies to the Chartie iOS application, Chartie’s application programming interface, and this policy page (collectively, the “Service”). “Chartie,” “we,” “us,” and “our” refer to the developer and operator of the Service.
Chartie provides automated technical chart interpretation for informational and educational purposes. It is not a brokerage, exchange, bank, or personalized financial adviser.
2. Data we process
Chart and analysis data
When you request an analysis, we process the exact chart image visible in the app or the image you select from your camera or photo library. Depending on your choices, the request may also include a market symbol, display name, asset type, visible chart period, candle interval, and preferred response language. The resulting analysis includes technical observations, levels, scenarios, and related metadata.
Chartie uses Apple’s system photo picker, so the app receives only the image you select. Camera access is used only when you choose to capture a chart image.
Mentor chat data
If you use Chartie Mentor, we process the messages and bounded conversation context that you submit, together with a conversation identifier, turn identifier, and response language, to generate an educational response. Chat requests are moderated for safety and are not used to build an advertising profile or provide personalized financial advice.
Anonymous authentication data
The app creates a Firebase anonymous user identifier and uses short-lived authentication tokens to protect requests and keep one user’s active analysis job separate from another’s. After successful authentication, Chartie stores the anonymous identifier together with account creation and most-recent app activity timestamps, app version and build, platform, and authentication-provider metadata. Chartie also keeps per-account counts of market searches, market detail views, and submitted, completed, or failed analyses, plus the most recently reported number of favorites and the last observed subscription tier. These operational counts do not include search text, favorite symbols, chart images, analysis content, or Mentor messages. Chartie does not require your name, email address, phone number, or social account to use its core features.
Private app data
Favorites, saved analysis results, and their chart images are stored on your device and, when iCloud is enabled, in a private CloudKit database associated with your Apple Account. Preferences such as onboarding status and analysis language are stored locally using Apple platform storage. On app launch, only the current number of favorites is reported with the account activity metadata described above; the favorite list itself remains private.
Purchase data
Subscriptions are purchased and managed by Apple. Chartie uses StoreKit to determine whether an eligible subscription is active. We do not receive or store your full payment-card details.
App analytics and crash diagnostics
The iOS app uses Google Analytics for Firebase to understand how the app is used and improve reliability and features. Firebase may process app opens, sessions, screen and feature interactions, app version, operating-system and device-model information, approximate geography derived from network information, purchase events, and an app-instance or vendor identifier associated with the app installation. Chartie does not send your Firebase authentication identifier to Analytics as a user ID.
Firebase Analytics does not request the iOS advertising identifier. Chartie disables Firebase advertising identifier collection and ad-personalization signals and does not set the Firebase authentication identifier as an Analytics user ID. Advertising measurement through AppsFlyer is described separately below.
The iOS app also uses Firebase Crashlytics to diagnose crashes and reliability failures. Firebase may process crash reports, stack traces, app and operating-system versions, device-model details, and limited diagnostic state needed to identify a fault. Chartie does not deliberately attach chart images, analysis or Mentor content, contact details, or the Firebase authentication identifier to crash reports.
Advertising measurement
Versions of Chartie with advertising measurement enabled use AppsFlyer to understand which campaigns bring people to the app and lead to completed analyses or subscriptions. AppsFlyer may process app opens, onboarding completion, paywall views, whether an analysis completed, subscription conversion events, app language and version, and technical information such as device model, operating system, IP address, approximate location derived from that IP address, and an app-installation identifier. Chartie does not attach chart images, instrument lists, analysis text, Mentor conversations, email addresses, or its Firebase authentication identifier to these advertising events.
Before enabling cross-app tracking, Chartie asks for permission through Apple's App Tracking Transparency dialog. If you allow tracking, the advertising and vendor identifiers and approved conversion events may be shared with configured advertising partners such as Meta through AppsFlyer. Apple Ads attribution is also supported; TikTok may be connected later. If you decline or tracking is restricted, Chartie disables AppsFlyer's advertising and vendor identifier collection and blocks its user-level event sharing with advertising partners. Apple's privacy-preserving aggregate attribution and Apple Ads attribution may still be used. Your choice does not change access to analyses or Pro.
Where subscription revenue measurement is enabled, verified purchase information may be processed by AppsFlyer to measure charges, trial conversions, renewals, and refunds. Apple continues to manage billing; AppsFlyer does not receive your payment-card details from Chartie. More information is available in the AppsFlyer customer-data processing notice.
Technical and support data
Our hosting, network-security, and infrastructure providers may process standard request information such as IP address, request time, URL, response status, and device or browser details to deliver and secure the Service. If you contact us, we process the information you include in your message so we can respond.
This policy page does not use advertising cookies, analytics scripts, or cross-site trackers.
3. Optional website launch waitlist
If you choose to join the optional Chartie website launch waitlist, we collect the email address you submit. Joining the waitlist is voluntary and is not required to use Chartie’s core app features.
We use the address only to send one launch notice when Chartie is available on the App Store. We do not use a waitlist address for unrelated marketing, targeted advertising, or app authentication. We record whether the address is pending, confirmed, or unsubscribed, together with the consent scope, consent-version identifier, and relevant creation, confirmation, and unsubscribe timestamps.
The waitlist uses double opt-in. We send a confirmation email through Resend, and the launch notice is sent only after you confirm. Confirmation and unsubscribe tokens are stored as hashed values rather than as the raw tokens. Waitlist records are stored in Cloud Firestore.
You can withdraw your consent at any time by using the unsubscribe link in a waitlist email or by contacting us. You can also request deletion of your waitlist data. Withdrawal or deletion does not affect your ability to use Chartie’s core app features.
4. How we use data
We use the data described above to:
- authenticate and secure requests;
- provide market search, chart display, and requested AI analysis;
- provide educational Chartie Mentor responses when requested;
- return an analysis to the correct active user;
- save favorites and history when you choose to use those features;
- verify subscription access and restore purchases;
- measure app usage and improve reliability and features;
- maintain reliability, prevent abuse, and troubleshoot failures;
- administer the optional website launch waitlist, verify double opt-in confirmation, and send one launch notice after consent;
- respond to support, privacy, and legal requests; and
- comply with applicable law and enforce our rights.
Where applicable, our legal bases are performance of the service you request, your consent, our legitimate interests in operating and securing the Service, and compliance with legal obligations. Consent is the legal basis for the optional waitlist. Its scope is limited to the one launch notice described above; any separate future purpose requires separate consent.
6. Retention and deletion
- Analysis requests: Chart images are buffered in server memory during upload and stored in Chartie’s durable Redis job queue while they are needed for processing or an automatic retry. The queued image is deleted when analysis completes, a failure becomes final, or the retry budget is exhausted. Abandoned queued jobs and analysis results expire within approximately one hour after their last update. Choosing Settings > Delete Account also removes the account’s indexed queued jobs, stored job results, chart payloads, and user-keyed analysis telemetry before the Firebase identity is deleted. Redis uses append-only and snapshot persistence for crash recovery, so deleted queue data may remain in Redis persistence files until those files are compacted or replaced under normal operations.
- Mentor chat requests: Chat messages and responses are held only as needed to complete the request, apply safety controls, and support an idempotent retry. The backend does not maintain a conversation-history database; saved chat history, if enabled in the app, is stored in the user’s private app storage. A successful response may remain in a user-keyed idempotency record for up to 24 hours to prevent a paid request from being repeated. Delete Account removes those indexed records and any active-request marker before deleting the Firebase identity.
- Saved history and favorites: Remain on your device and in your private CloudKit database until you delete them. You can remove a history item by swiping it in History and can remove a favorite by deselecting it.
- Anonymous authentication: The Firebase anonymous account and its limited Firestore account/activity metadata may remain until they are deleted or become eligible for removal under our account-maintenance practices. Delete Account removes the Firestore account/activity record and the Firebase anonymous identity. Restricted administrative lookups create a security audit record containing a one-way hash of the queried identifier rather than the identifier itself; that audit record is assigned a 90-day expiry.
- Free-analysis access: Two free chart analyses are available in each 24-hour period without signing in. The first free analysis starts the period; using the second does not extend it. The minimum server quota record expires when that period ends. A server-signed credential remains in this device’s Keychain after account deletion and may survive reinstalling Chartie. It is not synchronized with iCloud. Credentials are renewed without resetting the active allowance, including after account deletion. Unused, expired credentials may remain on the device until it is used again. They contain no chart, analysis, message, or raw Firebase identifier. Issuance also uses a one-way IP counter retained for up to 24 hours.
- Security and cost-control counters: One-way hashes of the Firebase identifier may remain without chart, analysis, or message content in short-lived abuse-prevention and usage counters. Request-rate counters expire in about one minute, market-provider counters within one hour, free-analysis quota and news-view deduplication counters within 24 hours, and Mentor token/cost counters no later than the end of the current UTC calendar month. Entitlement and global counters are not deleted with one account because they protect shared subscription and service-wide limits. This limited retention prevents deletion from being used to bypass security or provider-cost controls.
- App analytics and crash diagnostics: Firebase controls retention of app analytics, crash, and diagnostic data according to the project’s settings and Google’s applicable documentation. Aggregated reports may remain after raw event-level data expires.
- Advertising measurement: Retention depends on the AppsFlyer account settings and applicable provider policies. Aggregate campaign reports may remain after individual records expire. Deleting your Chartie account clears the local measurement ledger and disables future AppsFlyer measurement on that installation. It does not by itself erase historical records held by AppsFlyer or advertising partners. Contact us to request deletion of advertising measurement data; we may need information identifying the relevant app installation.
- Technical logs: Are retained only as long as reasonably necessary for security, reliability, and legal obligations. Analysis submission and worker error logs use bounded error type, code, status, and retry metadata rather than provider exception bodies; they are not intended to contain chart images, prompts, analysis results, Mentor messages, or Firebase identifiers. Retention periods controlled by a provider may be described in that provider’s documentation.
- Support messages: Are retained as needed to resolve the request, maintain appropriate business records, and meet legal obligations.
- Website launch waitlist: Pending records are retained for 7–14 days and then deleted if you do not confirm. Confirmed pre-launch records have no pre-launch expiry: they are retained until the single launch notice is sent, then deleted as part of the post-launch cleanup. If you unsubscribe, we stop sending waitlist messages and remove the raw email immediately. A keyed suppression record may remain for up to 90 days to honor the opt-out and prevent accidental re-mailing. You can also request deletion, subject only to limited retention required to honor the unsubscribe request or comply with law.
You can delete your Chartie account from Settings > Delete Account. After confirmation, Chartie removes the server-side account data described above, deletes the Firebase anonymous identity, and directs the app to remove its local and private CloudKit analyses, chart images, favorites, and Mentor conversations. A new anonymous identity may be created if you continue using the app. Deleting a Chartie account does not cancel an App Store subscription; subscriptions must be managed separately through Apple. Deleting the app alone may remove local data but may not remove private CloudKit data. You can also manage iCloud data through your Apple Account and device settings, or contact us about data controlled by Chartie.
7. Your choices and rights
You can control your data in the following ways:
- Choose whether Chartie may send chart analyses and Mentor messages to OpenAI. The app asks before the first AI-powered request, and you can change this choice later in Settings.
- Use Apple’s system permissions to allow or deny camera and photo access.
- Delete individual saved analyses and favorites in the app.
- Manage private CloudKit data, subscriptions, and purchase history using your Apple Account controls.
- If you join the website launch waitlist, confirm or decline the confirmation email, unsubscribe at any time, or contact us to withdraw consent and request deletion.
- Contact us to request access, correction, deletion, restriction, portability, or objection where applicable.
Depending on where you live, you may have additional privacy rights, including the right to appeal a denied request or complain to your local data-protection authority. We may need to verify a request before completing it. We will not discriminate against you for exercising a privacy right.
8. Security and international transfers
We use reasonable technical and organizational safeguards, including encrypted HTTPS transport, authenticated API requests, access controls, purpose-limited processing, short backend retention, and private CloudKit storage. No method of transmission or storage is completely secure, so we cannot guarantee absolute security.
Chartie and its providers, including OpenAI, Google Firebase, Resend, Apple, Twelve Data, Marketaux, Logo.dev, and Cloudflare, may process data in countries other than your own. Where required, we rely on legally recognized transfer mechanisms and contractual or organizational safeguards.
9. Children
Chartie is not directed to children under 13, or under the minimum age required by local law. We do not knowingly collect personal data from children. If you believe a child has provided personal data, contact us so we can take appropriate action.
10. Changes to this policy
We may update this policy to reflect changes to the Service, our practices, providers, or legal obligations. We will post the revised policy here and change the effective date. If a change materially affects your rights, we will provide additional notice when appropriate.
11. Contact
For privacy questions or requests, contact Chartie at:
Email [email protected]