Last updated: 26 September 2026
This policy explains how Seris uses cookies, local storage, session storage, and other browser storage mechanisms. While Singapore does not have a dedicated cookie law, the Personal Data Protection Act 2012 (PDPA) applies to any storage mechanism that collects or processes personal data.
Seris primarily uses browser storage APIs rather than traditional HTTP cookies. Here is a breakdown of the storage mechanisms we use:
| Storage Type | Purpose | Duration | Contains Personal Data |
|---|---|---|---|
| Firebase Auth Tokens | Authentication — keeps you signed in | Until sign-out or token expiry (1 hour, auto-refreshed) | Yes (user ID, email) |
| IndexedDB (seris-crypto) | Stores your encryption key for portfolio data decryption | Persistent until cleared | Yes (cryptographic key) |
| IndexedDB (WebLLM) | Caches on-device AI model files for offline use | Persistent until cleared | No |
| localStorage | UI preferences, theme settings, onboarding state, behaviour tracking queue | Persistent until cleared | Minimal (user ID for event correlation) |
| sessionStorage | Temporary UI state (e.g., preventing duplicate tip modals within a session) | Until tab is closed | No |
| Service Worker Cache | Caches app assets for offline/PWA functionality | Managed by Next.js PWA | No |
All storage mechanisms used by Seris are essential for the functioning of the Service:
Seris does not use any third-party advertising cookies, social media tracking pixels, or non-essential analytics cookies. We do not use Google Analytics or similar third-party tracking services.
The following third-party services may set their own storage:
We do not control the storage set by third-party services. Please refer to Google's Privacy Policy for details on how Firebase handles data.
When you use on-device AI features, AI model files are downloaded and cached in IndexedDB. These files can be several hundred megabytes. This data does not contain any personal information — it consists solely of AI model weights. All AI inference using on-device models runs entirely in your browser; no data is sent to external servers.
You can manage browser storage through the following methods:
Note: Clearing IndexedDB will remove your stored encryption key. If you have encrypted portfolio data, you will need to re-enter your passphrase to regenerate the key.
We may update this Cookie & Storage Policy from time to time to reflect changes in our storage practices. We will update the "Last updated" date at the top of this page.
For questions about this Cookie & Storage Policy, contact our Data Protection Officer at [email protected].