Data Stored On Your Device
Market Mosaic stores app data locally on your device, including:
- portfolio names, holdings, tickers, share counts, cash amounts, and cost basis;
- preferences, display settings, refresh state, and onboarding state;
- Benchmark and Smart Tracking configuration, official-value anchors, and reconciliation records;
- cached market quotes, history, and derived performance values;
- an optional Finnhub API key stored in the iOS Keychain;
- a compact App Group snapshot for the read-only widget; and
- optional local sync and performance diagnostics described below.
JMS does not operate a Market Mosaic account service or server-side portfolio database. The widget reads the app's local snapshot and does not contact market-data providers or read your API key.
Market Data Requests And Provider Accounts
In live mode, Market Mosaic contacts Finnhub and Yahoo Finance for quotes, symbol search, company information, market calendars, indexes, futures, extended-hours values, and historical prices. Requests can include ticker symbols or search terms. Your Finnhub API key is sent to Finnhub to authenticate requests; Market Mosaic does not send it to Yahoo Finance.
Portfolio names, share counts, cash amounts, cost basis, official-value anchors, and total portfolio values are not sent in market-data requests. Requested securities and search terms can nevertheless reveal financial interests or portfolio composition. Providers also receive ordinary connection information, such as your IP address and HTTP request metadata.
Local storage does not mean that provider requests are anonymous or never retained. A Finnhub key identifies a provider account. Finnhub's terms state that queries may be logged and used to provide results, improve its service, and study usage. Providers handle requests and retain information under their own terms and privacy practices. Review Finnhub's terms and privacy information and Yahoo's privacy policy.
For App Store privacy disclosures, provider-bound securities, searches, provider account identifiers, and connection metadata are treated conservatively as linked data used for app functionality and provider service analytics. The analytics disclosure accounts for providers studying request usage; Market Mosaic does not upload its own analytics stream. This does not mean that JMS receives your locally stored portfolio database.
No Advertising Or Cross-App Tracking
Market Mosaic does not sell user data, display ads, use third-party advertising, analytics, or tracking SDKs, or link data across apps and websites for advertising. Market-data requests support the app's features. Provider processing is described above; local diagnostics are described below.
Optional Diagnostics And Exports
Sync diagnostic recording is off by default. Settings → Market Data Diagnostics lets you record for 48 hours, extend or stop recording, clear history, and choose to export it. Sync logs are bounded to 48 hours and 1 MB. Failures and recoveries may include ticker symbols that reveal portfolio composition, along with timing, counts, and typed outcomes. They exclude shares, prices, values, portfolio names, API keys, raw provider responses, and device or network identity.
On iOS 27, the same opt-in window also enables local Apple MetricKit/StateReporting summaries. Only selected timing, CPU, crash/hang/failure categories, and refresh context are retained, bounded to 100 summaries and 48 hours. Raw system reports, call stacks, device identifiers, and portfolio values are not saved in these summaries.
Market Mosaic does not automatically upload diagnostics to JMS. Exporting diagnostics or a portfolio CSV opens the system share interface; you choose a destination. A portfolio CSV contains the portfolio names, securities, shares or cash amounts, and cost basis needed for re-import. Files you save or share leave the app's control and follow the recipient or storage service's practices. Support messages and any attachments you choose to send to JMS may contain your contact details, diagnostics, or financial information.
Privacy Choices, Retention, And Deletion
Demo mode works without a Finnhub key. Live market data requires a configured provider key; you can remove your saved key in Settings. Removing a key stops its future use but does not delete past requests held by providers. Their account and deletion controls govern those records. Futures & Extended Hours can be disabled separately; doing so does not disable ordinary live quotes or search.
You can delete portfolios and holdings, remove saved keys, and clear diagnostic history in the app. Stopping diagnostic recording does not immediately erase existing history; it remains subject to the retention limits above. Deleting the app removes its local container under normal iOS behavior; Keychain items may survive uninstall, so remove the saved key in Settings when you want to delete it. Exported files, provider records, and files shared with other people are not removed by the app's delete/reset controls.
Market Mosaic requires no JMS account. Finnhub may require its own account for a live-data key. For support or deletion of a support communication sent to JMS, email jmsappdevelopment@gmail.com. Do not send API keys or private portfolio files unless they are necessary for your request; redact personal information before sharing diagnostics.
Children's Privacy
Market Mosaic is not directed to children and does not knowingly collect personal information from children.
Important Financial Disclaimer
Market Mosaic is provided for informational purposes only and is not investment advice. Market data may be delayed, incomplete, or inaccurate. Investing involves risk, including loss of principal. Conduct your own research or consult a qualified financial professional before making investment decisions.
Changes To This Policy And Contact
This policy may change as Market Mosaic changes; its effective date will be updated. For privacy questions, contact jmsappdevelopment@gmail.com.