UPDATED 12 OCTOBER 2026
Privacy
StitchNavo is an independently developed cross-stitch companion. This page describes the StitchNavo app and website.
Contact
For privacy questions or account-deletion help, contact contact@ranaotechnologies.com.
Charts and progress on your device
You can work with local charts without a cloud account. Imported PDFs, recognized chart data, stitch progress, notes and related project information are stored on your device. Pattern recognition runs on the device. Local databases and exported backups are not password encrypted by the app; device security and any backup destination you choose also matter.
When you export a backup, you choose its destination. Backups can contain private pattern content and pending work. Copies you save or share outside StitchNavo are under your control and are not removed by deleting a cloud account.
Optional accounts and cloud sync
Signing in enables account features; cloud synchronization additionally requires an active subscription or Lifetime full access purchase. The separate Lifetime offline purchase enables unlimited offline editing and premium support without enabling cloud sync. Firebase Authentication handles authentication, including Google and Sign in with Apple where available. Account information can include your authentication identifier, email address and profile information supplied by the sign-in provider. Apple may supply a private relay email address if you choose that option.
The cloud service processes account and device identifiers, project information, stitch activity and pending changes to keep your devices in sync. Original pattern files and normalized chart bundles may upload to private account storage. Google Cloud hosts the service, database, files and recovery backups; PowerSync synchronizes account data. Cloudflare routes and protects website, API and sync requests. Network services necessarily receive connection information such as IP addresses and request metadata.
Cloud sync is not end-to-end encrypted. Service providers process the information needed to deliver authentication, storage and synchronization. These services may process data outside your country.
Purchases and access
Apple or Google processes store purchases. RevenueCat processes purchase receipts or tokens, product and transaction information, subscription status, lifetime ownership, and a purchase identifier to verify access. Guest purchases use an anonymous RevenueCat identifier; signing in can link purchases to your account identifier for use across devices. StitchNavo caches access information on your device so local features can work offline. Pattern files and project content are not sent to RevenueCat.
Deleting your StitchNavo account does not cancel a store subscription. Manage or cancel renewal through the store where you subscribed. Store and billing providers may retain transaction records under their own retention policies.
Usage analytics and error reports
Usage analytics and error reports are separate choices that you control in Settings › Privacy & account. In the European Economic Area, the United Kingdom and Switzerland, both stay off until you turn them on, and the app asks on first launch. The app treats you as being in one of these countries when your App Store country or your device’s Region setting is one of them, or when neither can be read. Elsewhere both are on by default, and you can turn either off at any time. This check happens on your device at each launch; your country is not stored or sent.
Turning analytics off stops collection and clears the analytics identifiers kept on your device. Data already sent stays with the provider under its retention. Analytics operates independently of cloud sync. Error reports are only sent by production builds that have the reporting service configured.
Firebase Analytics receives app and screen activity, feature events, device/platform information and identifiers. Events can include project identifiers and action counts. A signed-in account’s authentication identifier can be associated with analytics; it is an account-linked identifier, not anonymous data.
When the production build has error reporting configured, Sentry receives error messages, stack traces and app/device context to help investigate failures. Default collection of personally identifying information is disabled, but error messages or diagnostic context may still contain sensitive information.
The app records custom operational events in a separate local SQLite log database. Logs are not synced and records older than 30 days are removed. Logged fields exclude credentials, account email addresses and absolute file paths. You can explicitly attach a filtered log database to a support ticket. The app does not collect separate local Apple MetricKit reports.
Support and feature requests
If you submit a support ticket, the service stores the text, replies and files you choose to attach. You can select a project and file types without navigating your device's files. Attachments can contain pattern content, progress, notes, a project database snapshot and troubleshooting information. No attachment is selected automatically. Support admins can access the ticket and its selected files.
Support pages are fetched through the API. Response caches last up to one minute for tickets and five minutes for feature requests; an already displayed page may remain visible while refreshing or during a temporary connection failure. Account changes and authorization loss clear displayed support information. Fetched pages are not stored in the app's SQLite databases or cloud-sync replica. Locally saved drafts and upload-retry metadata use separate account files; upload credentials are not written to those files.
Existing cloud files can be reused for support. Files not already online upload to private support storage. Verified attachments remain available indefinitely until explicitly removed or the account is deleted; resolving a ticket does not erase its files. Incomplete uploads expire after seven days. Temporary cloud exports selected for support can be copied into permanent support storage.
A feature request you submit is visible only to you and support admins until a support admin reviews it. Only approved requests are published to the board, where signed-in customers can see them and their vote counts; a request that is not accepted is never published. Only support admins post updates on requests, labelled "Support admin". The board does not show account email addresses, authentication identifiers, voter lists, private tickets or project files. Deleting your feature request hides it from the board while retaining it for admin review. Account deletion removes your requests and votes.
Deletion and retention
For a signed-in account, use Delete account in the app, or sign in on the account deletion page, to request deletion. The request is queued for server processing; signing out or submitting the request does not mean deletion has already completed. The deletion job removes private project data, stored account files and the Firebase identity. A minimal disabled account identifier and deletion receipt remain to prevent accidental recreation and support safe retries.
Removing local data is a separate choice when signing out. Local-only work and files you exported elsewhere require separate removal. If you need help with a deletion request, use the contact above.
Deleted data may remain in recovery storage temporarily. The current cloud configuration keeps deleted storage objects recoverable for seven days. Database backups use a 30-day retention target; older backups needed by retained recovery points can remain longer. Generated cloud exports expire after seven days, before the separate storage recovery period. A deletion request does not immediately erase those recovery copies.
Analytics and error-report retention depends on the configured provider settings. No fixed retention period for those services is announced.
This website
The website has no signup form, file upload, marketing tracker or analytics script. The account deletion page signs you in with Firebase Authentication, and Google when you choose it, only to request deletion; the sign-in is kept in that page and ends when you close it. Cloudflare and hosting infrastructure may process ordinary request and security logs when you visit. If you email support, your email provider and the receiving mailbox process the message and any attachments you choose to send.
Updates
This information will be updated as the app and its services change. The date at the top identifies this version. Availability details are on the home page.