Cookie & Local Storage Policy
v1.0 · 2026-06-21
1. Scope and Legal Status of This Policy
This Cookie & Local Storage Policy (the "Policy") explains how Mozen ("Mozen," "we," or "the Service") sets, reads, writes to, and accesses Cookies and browser local storage and caching technologies including localStorage, sessionStorage, and IndexedDB (collectively, "storage technologies") on your device when you access, register for, or use the Mozen website, web application, desktop or mobile applications, AI features, whiteboard, documents, reader, resource library, sharing and public pages, and related services.
This Policy forms part of, and is a specific supplement to, Mozen's Privacy Policy. It is consistent with the "Cookies, Local Storage, and Offline Cache" section of the Privacy Policy; where this Policy provides more detailed technical explanation, this Policy governs the technical details; where the overall principles of personal data processing, your data rights, or dispute resolution are concerned, the Privacy Policy and Terms of Service govern. Terms not separately defined here have the meanings given in the Terms of Service and Privacy Policy.
Mozen is currently provided by an individual independent operator under the name Mozen and is not a registered company or separate legal entity. For the operator's personal safety and privacy protection, the operator's residential address is not displayed on public pages; for privacy requests relating to storage technologies or consent management, please contact [email protected], and for legal notices or formal service-of-process information requests, please contact [email protected]. We will handle requests after completing the necessary identity verification and will provide service-of-process information through a designated representative address where legally required.
2. Applicable Legal Framework
Within its scope, this Policy follows the legal frameworks below, subject in each case to the mandatory provisions of the relevant jurisdiction:
- Article 5(3) of the EU ePrivacy Directive and national implementing laws: sets the rules for storing information on, or accessing information already stored in, a user's terminal equipment, including Cookies as well as any form of local storage and access such as localStorage, sessionStorage, and IndexedDB. Except for the "strictly necessary" exemption, any such storage or access requires your prior, informed, freely given consent after clear and complete information is provided.
- Article 7 of the EU General Data Protection Regulation (GDPR) and UK GDPR: sets the standards for valid consent (freely given, specific, informed, unambiguous, demonstrable, and withdrawable as easily as it was given). Where storage technologies involve the processing of personal data, that processing is also subject to the GDPR / UK GDPR.
- Other applicable laws: including, without limitation, U.S. state privacy laws (such as the "sale/share" opt-out and recognized-browser-signal obligations under the California CCPA/CPRA), China's Personal Information Protection Law, and other data protection and electronic communications laws of your jurisdiction.
The term "strictly necessary / necessary" in this Policy is construed by reference to the exemption in Article 5(3) of the ePrivacy Directive, meaning only those storage technologies absolutely necessary to provide a service you have actively requested, and does not include analytics, attribution, or advertising purposes.
3. What Cookies and Local Storage Technologies Are
To help you make an informed decision, the principal technologies covered by this Policy are as follows:
- Cookies: small text files set by a website in your browser and returned on subsequent requests. By duration they are session cookies (expire when the browser closes) or persistent cookies (retained until a set expiry); by setter they are first-party (set by mozen.ai and its subdomains) or third-party (set by another domain).
- localStorage: browser key-value persistent storage with no built-in expiry, retained across sessions until cleared by code, by you, or by the browser. Mozen uses it for interface preferences and certain session credentials (see the key table).
- sessionStorage: key-value storage similar to localStorage but valid only within the current tab session and cleared when the tab closes.
- IndexedDB: a structured in-browser database used to persist larger data. Mozen primarily uses it to store local Y.Doc copies of documents and whiteboards, the offline edit queue, media Blob caches, and dictionary shards, to support offline use, recovery after network loss, and fast opening.
- HTTP cache, Service Worker cache, and similar mechanisms: caches of static assets, modules, and resource files used by the browser and the application to improve load speed.
Regardless of the name of the above technologies, where they constitute "storing information on, or accessing information already stored in, your terminal equipment," they fall within the consent/exemption rules of Article 5(3) of the ePrivacy Directive, and this Policy applies to them uniformly — this Policy is not limited to Cookies.
4. Categories in Which We Use Storage Technologies
We categorize storage technologies by purpose into the following three categories, applying a different legal basis to each:
- (A) Strictly necessary (no consent required): absolutely necessary to provide a service you have actively requested, including the authentication session, CSRF and security state, Y.Doc local persistence, offline editing cache, current-workspace memory, upload and error recovery, and load and availability safeguards. This category is exempt under Article 5(3) of the ePrivacy Directive and requires no prior consent; where personal data is involved, the basis is performance of a contract or our legitimate interest in providing and securing the Service. Disabling this category may prevent the Service from functioning properly.
- (B) Preference (subject to your choice): remembering theme (light/dark), interface language, layout, panel and tool preferences, and recently used items, to restore your settings on your next visit. In jurisdictions where consent is required, we set these only when you write or adjust the corresponding preference (i.e., you actively request that the preference be remembered), and you can clear them at any time via in-app controls or your browser.
- (C) Analytics and attribution (explicit prior consent required): the visitor identifier (client_id), session metrics, and source attribution (UTM parameters) used by our first-party, self-built site analytics. This category is set or written only after you give explicit, affirmative consent via the consent banner or preference center; before you consent, we do not set this category for analytics purposes or read the relevant identifiers. You may withdraw consent at any time.
We currently do not serve advertising cookies, do not use third-party cross-site tracking SDKs, do not engage in cross-context behavioral advertising, and do not sell or "share" for targeted-advertising purposes any identifiers obtained from storage technologies. If we introduce such uses in the future, we will update this Policy, place them in a category requiring prior consent, and provide corresponding opt-out and withdrawal mechanisms.
5. Named Key Table (Cookie and Local Storage Inventory)
The table below lists the principal storage items Mozen may set or write during normal use. Key names may change due to version iteration, third-party service updates, or security-policy adjustments; the table is a representative inventory reflecting each item's category, purpose, duration, and setter, but does not constitute an exhaustive commitment as to every specific key name.
(A) Strictly necessary
- Refresh token cookie (httpOnly cookie, name such as
mz_rt/mz_rt_admin) | Category: necessary | Purpose: store the refresh token in a secure httpOnly, SameSite=Strict cookie to renew the session and resist XSS theft | Duration: persistent within the session-renewal period | First-party. - CSRF / security state (cookie / sessionStorage) | Category: necessary | Purpose: cross-site request forgery protection, Origin validation, and login-flow security | Duration: session | First-party.
- Current workspace and interface state (localStorage) | Category: necessary | Purpose: remember the current workspace and prevent loss of context after refresh | Duration: persistent, until you switch or clear | First-party.
- Y.Doc local persistence (IndexedDB, y-indexeddb library) | Category: necessary | Purpose: a local CRDT copy of document and whiteboard content, supporting offline editing, recovery after network loss, cross-tab sync, and fast opening | Duration: persistent, until the document is deleted or you clear it | First-party.
- Offline edit queue and upload recovery (IndexedDB / localStorage) | Category: necessary | Purpose: cache unsynchronized edits and upload tasks to resume after the network recovers and prevent data loss | Duration: persistent, until successfully synced or cleared | First-party.
- Media Blob and dictionary-shard cache (IndexedDB) | Category: necessary/performance | Purpose: cache media and read-only static data for offline availability and to reduce repeated requests | Duration: persistent, managed by cache policy | First-party.
(B) Preference
- Interface language (localStorage,
i18nextLng) | Category: preference | Purpose: remember your chosen interface language (zh/en/ja/de/fr/es/pt-BR/ko/zh-Hant) | Duration: persistent, until you change or clear | First-party. - Theme (light/dark) and layout preferences (localStorage) | Category: preference | Purpose: remember light/dark mode, panel layout, and tool and view preferences | Duration: persistent | First-party.
- Recently used items / experience optimization (localStorage / sessionStorage) | Category: preference | Purpose: restore recently opened items, onboarding progress, and similar non-essential experience data | Duration: persistent or session | First-party.
- Storage consent state (localStorage) | Category: necessary (to record your choice) | Purpose: store your accept/reject decision for each category so that we can respect your choice and load or refuse to load the corresponding storage accordingly | Duration: typically 6–12 months, after which we re-request | First-party.
(C) Analytics and attribution (consent required)
- First-party analytics visitor identifier (localStorage / first-party cookie,
client_idor an equivalent key) | Category: analytics | Purpose: where consented, distinguish visitors on a first-party basis and measure visits and basic usage metrics | Duration: typically no more than 12 months | First-party | Set only after consent. - Source attribution (UTM) parameters (sessionStorage / first-party cookie) | Category: analytics/attribution | Purpose: where consented, record the source of registration or visit (e.g., utm_source, utm_medium, utm_campaign) to measure channel effectiveness | Duration: session or short-term persistent (typically no more than 30 days) | First-party | Set only after consent.
Payment and checkout are handled by Paddle as the Merchant of Record / authorized reseller. When you enter checkout or the customer portal, Paddle may set its own payment, risk-control, and anti-fraud storage items on its own domains, governed by Paddle's own cookie and privacy policies and not directly within the control of this Policy; that category is necessary to complete payment.
6. First-Party, Self-Built Analytics Statement
Mozen's site analytics is a first-party, self-built implementation and does not use third-party tracking SDKs (for example, we do not embed third-party advertising or behavioral-analytics scripts that collect your browsing behavior under their control).
- First-party: the identifiers used for analytics (such as client_id) and the attribution parameters (UTM) are set first-party by mozen.ai, and analytics data is used to understand aggregate trends in overall traffic, source channels, and feature usage.
- No cross-site tracking: we do not use this analytics to identify or track you on websites other than Mozen, do not build cross-site behavioral profiles, and do not sell or "share" the relevant identifiers with ad networks for targeted advertising.
- No collection before consent: in jurisdictions where consent is required, analytics storage and identifiers are set only after you give explicit consent; absent consent, we do not write a client_id or read attribution identifiers for analytics purposes.
- De-identification and minimization: we strive to analyze data in aggregated, de-identified form and avoid unnecessarily associating analytics data with an identifiable individual over the long term.
This statement does not change the Privacy Policy's description of other necessary logs (such as server security and anti-abuse logs); such logs are necessary for the operation and security of the Service and are not the optional analytics described in this section.
7. Consent, Withdrawal, and Preference Management
We obtain and manage your consent to non-essential storage technologies as follows:
- Prior consent: for the analytics and attribution category (Category C) and for the preference category (Category B) where consent is required in the applicable jurisdiction, we request your consent before setting or writing them. By default, the relevant categories are off; they are enabled only after you make an affirmative choice (such as clicking "Accept analytics") via the consent banner or preference center. Pre-ticked boxes or continued browsing do not constitute valid consent.
- Category-level choice: the consent controls let you accept or reject by category (necessary / preference / analytics). The necessary category cannot be turned off because it is required for the Service to operate; we clearly explain its purpose.
- Withdrawal as easy as consent: you may at any time reopen the consent panel via the storage/cookie preference controls in "Settings → Privacy and Data" within the app to adjust or withdraw consent for any optional category. Withdrawal is as easy as giving consent, and withdrawal does not affect the lawfulness of processing carried out on the basis of consent before its withdrawal.
- Browser-level controls: you may also use your browser settings to delete or restrict cookies, clear localStorage/sessionStorage/IndexedDB, block third-party storage, or use private mode. Note that clearing necessary storage may result in loss of login state, current workspace, offline content, unsynchronized edits, or preferences.
- Consent validity and re-request: we record your choices and re-request after a reasonable period (typically 6–12 months) or upon material changes, to ensure consent remains valid.
8. Respecting Global Privacy Control (GPC) and Do-Not-Track (DNT)
We respect privacy preference signals sent by browsers and devices:
- Global Privacy Control (GPC): when we detect a valid GPC signal from your browser or an extension, to the extent applicable law (such as the California CCPA/CPRA) treats it as a valid opt-out request, we treat it as a request to opt out of and refuse consent to "sale/share" and to non-essential analytics/attribution storage technologies, and accordingly do not set or read the corresponding identifiers for analytics purposes.
- Do-Not-Track (DNT): when your browser sends a DNT signal, we treat it as a preference to refuse non-essential analytics/attribution storage technologies. Given the lack of a uniform DNT standard, our handling defaults to refusing non-essential storage.
- Signal priority: where a GPC/DNT signal conflicts with the consent-banner state, we apply the outcome more protective of your privacy, i.e., the relevant optional storage technologies remain disabled by default.
- No effect on the necessary category: GPC/DNT will not disable strictly necessary storage technologies, as those are required for the service you have actively requested; however, we will not use this as a basis to expand our collection.
9. Relationship to Personal Data and International Transfers
Some storage technologies (particularly authentication sessions and analytics identifiers) may involve personal data. As to such processing:
- Our overall processing of personal data and your rights of access, correction, deletion, objection, and portability are governed by the Privacy Policy.
- Data residency and transfers: local storage (localStorage/sessionStorage/IndexedDB) is held on your own device. Once the relevant data leaves the device and is synchronized or processed, cross-border transfers may occur: Mozen's primary database is hosted on Supabase (Singapore, ap-southeast-1, which has not received an EU adequacy decision); object storage and edge distribution use Cloudflare R2 (global edge nodes); AI inference providers are mostly located in the United States. We adopt safeguards such as Standard Contractual Clauses, data processing agreements, access controls, and encryption in accordance with applicable law. See the "International Transfers" section of the Privacy Policy.
- Security status (honest statement): the transport layer uses TLS; cloud-side storage uses provider encryption; external backups optionally use AES-256. Mozen has not implemented full end-to-end encryption (E2EE) and, in order to provide the Service, can technically access plaintext. We do not claim to hold any security or compliance certification we have not obtained.
10. Storage Arising from Third Parties and External Connections
- Payment: when you enter Paddle checkout or the customer portal, Paddle, as Merchant of Record / authorized reseller, may set its own payment, risk-control, and anti-fraud storage items on its domains, governed by its own policies.
- External storage and third-party accounts: when you proactively connect Google Drive, OneDrive, Baidu (China), WebDAV, or other external storage/accounts, the relevant third parties may set their own storage items as you interact with them, governed by their respective policies.
- AI and retrieval sources: deep research (read_url fetching of external web pages and full-text PDFs), web search, and academic retrieval may initiate server-side requests to external sites, but generally do not set cookies on your browser on behalf of third parties under Mozen's name; external sites are responsible for their own content and technologies.
- Sharing and public pages: when you access another person's share link or a public page, our first-party storage under this Policy still applies; external resources embedded therein (such as externally linked images) are the responsibility of their respective sources.
We do not directly control storage set by such third parties on their own domains; please review the cookie and privacy policies of the relevant third parties.
11. Children and Minors
Mozen is not directed to children under 13 years of age, and we will not knowingly set non-essential storage technologies or collect analytics data for users in that age group. Given that EU member states set the digital-consent age for information society services anywhere from 13 to 16, we uniformly adopt 16 as the minimum age at which a user may give consent independently; users under 16, or who have not reached the legal digital-consent age in their jurisdiction, should use the Service with the consent and supervision of a parent or legal guardian, and consent to optional storage technologies should be given or confirmed by the guardian. If we discover that non-essential storage was set for, or personal data collected from, a minor without the necessary consent, we will delete it or take other necessary measures in accordance with the law.
12. Policy Updates
We may update this Policy due to changes in features, sub-processors, storage technologies, law, or operations. For material changes (for example, adding a storage category that requires consent or introducing a new analytics mechanism), we will provide notice through reasonable means such as in-app notifications, the consent banner, email, or website announcements, and will re-request your consent where applicable law requires. The version and effective date are noted at the top of this Policy. Continued use indicates your acceptance of the updated Policy, except where applicable law requires that consent be separately obtained.
13. Contact Us
For questions, requests, or complaints regarding Cookies, local storage, or consent management, please contact: [email protected]. For legal notices or formal service-of-process information requests, please contact: [email protected]. For refunds and billing matters, please contact: [email protected]. For general support, please contact: [email protected]. To protect your account security, we may need to verify your identity before processing the relevant request. You also have the right to lodge a complaint with the data protection authority in your jurisdiction.