Last updated: 24.06.2026
# SpectraEYE Cookie Policy #
Last updated: PLACEHOLDER_effective_date
This Cookie Policy explains how PLACEHOLDER_company_name ("SpectraEYE", "we", "us", or "our") uses cookies, localStorage, sessionStorage, browser-based identifiers, and similar technologies on the SpectraEYE website and public frontend.
This document is an implementation-ready draft and should receive final legal review before production publication.
## 1. Controller details
Data controller: PLACEHOLDER_company_name
Registration number: PLACEHOLDER_registration_number
Address: PLACEHOLDER_address
Country: PLACEHOLDER_country
Representative: PLACEHOLDER_representative
Privacy contact: privacy@spectraeye.app
General contact: contact@spectraeye.app
We have not appointed a formal Data Protection Officer unless this page is later updated to state otherwise. Cookie, privacy, and data subject requests should be sent to privacy@spectraeye.app.
## 2. Scope
This policy applies to the SpectraEYE website, public frontend, public pages, newsletter page, contact page, support chat, promotions and offers, documentation, news and updates pages, and related browser-based storage used by these features.
This policy covers:
- cookies;
- localStorage;
- sessionStorage;
- consent identifiers;
- internal analytics identifiers;
- support chat session identifiers;
- promotional banner display state;
- user interface preferences such as theme, accessibility, weather effects, and dismissed banners;
- redirect links to external social platforms.
## 3. What cookies and similar technologies are
Cookies are small files or values stored by a website in a browser. Similar technologies include localStorage, sessionStorage, browser identifiers, and any technology that stores information on, or reads information from, a visitor's device.
Under European ePrivacy rules, storing or accessing information on a user's device generally requires consent unless the storage or access is strictly necessary to provide a service requested by the user or to transmit a communication. GDPR rules also apply where the stored or accessed information is personal data or can be linked to a person.
## 4. Consent model
SpectraEYE uses a consent manager with the following categories:
- Strictly Necessary;
- Functional;
- Analytics;
- Marketing & Communications;
- Support Chat;
- External Media & Social Platforms.
Strictly Necessary storage is always active because it is required for security, consent proof, session handling, route delivery, and core site operation.
All optional categories are disabled by default. You may accept all, reject all, customize categories, save preferences, or withdraw optional consent from the Cookie Settings link in the footer.
SpectraEYE does not use a cookie wall. You can continue to access the website if you reject optional categories. Some optional features may remain unavailable until the relevant category is enabled.
## 5. Cookie and storage inventory
The exact technical names may change as the application evolves, but the table below describes the current intended storage categories.
| Name or key | Type | Category | Purpose | Duration | Provider |
|---|---|---|---|---|---|
spectra_cookie_consent_preferences | localStorage | Strictly Necessary | Stores consent version, timestamp, and selected categories. | Until replaced or cleared by browser/user. | SpectraEYE |
spectra_cookie_consent_visitor_id | localStorage | Strictly Necessary | Helps maintain consent audit continuity. | Until cleared by browser/user. | SpectraEYE |
spectra_cookie_consent_session_id | sessionStorage | Strictly Necessary | Helps record the current consent session. | Browser session. | SpectraEYE |
| Admin session cookie | HTTP cookie | Strictly Necessary | Secures authenticated admin sessions. | Session or configured expiry. | SpectraEYE |
spectra_accessibility_preferences_v1/v2 | localStorage | Functional | Stores accessibility choices selected by the visitor. | Until cleared or updated. | SpectraEYE |
| spectraApplicationTheme / spectraVisitorApplicationTheme | localStorage | Functional | Stores selected visual theme preferences. | Until cleared or updated. | SpectraEYE |
| weatherEffectDisabled | sessionStorage | Functional | Stores whether weather effects were hidden during the current session. | Browser session. | SpectraEYE |
spectra_intro_seen_v1 | cookie | Functional | Prevents the intro video from replaying unnecessarily. | Configured browser cookie duration. | SpectraEYE |
spectra_home_newsletter_closed | cookie | Functional | Remembers that the newsletter prompt was closed. | Configured browser cookie duration. | SpectraEYE |
spectra_promotion_dismissed_* | localStorage/sessionStorage | Functional | Remembers dismissed promotions depending on consent and campaign frequency. | Session or configured campaign frequency. | SpectraEYE |
spectra_promotion_floating_state_* | localStorage/sessionStorage | Functional | Remembers collapsed/expanded state for floating offers. | Session or until cleared, depending on consent. | SpectraEYE |
feature_image_* | localStorage | Functional | Stores local feature-image display preferences. | Until cleared or updated. | SpectraEYE |
| spectra-eye-session-id | sessionStorage | Analytics | Identifies an internal analytics session after analytics consent is granted. | Browser session. | SpectraEYE |
| spectra-eye-visitor-id | localStorage | Analytics | Identifies a returning visitor for internal analytics after analytics consent is granted. | Until cleared or updated. | SpectraEYE |
| spectra-eye-visitor-type | localStorage | Analytics | Marks whether the visitor is new or recurring for internal analytics. | Until cleared or updated. | SpectraEYE |
| Newsletter/campaign attribution data | request metadata and internal records | Marketing & Communications | Supports newsletter subscription context and campaign attribution when allowed. | According to newsletter/campaign retention. | SpectraEYE / SendGrid |
chat_user_email | localStorage | Support Chat | Stores the email identifier for live support chat continuity after support chat consent is granted. | Until cleared, chat reset, or consent withdrawn. | SpectraEYE |
chat_session_id / chatSessionId | localStorage | Support Chat | Stores live support chat session continuity after support chat consent is granted. | Until cleared, chat reset, or consent withdrawn. | SpectraEYE |
| Social platform redirect links | external navigation only | External Media & Social Platforms | Opens external social platforms such as Follow Us links. No social pixel or embedded widget is loaded by SpectraEYE before click. | Not applicable before click. | External platform after redirect. |
## 6. Strictly Necessary
Purpose: provide the website, remember consent proof, protect authenticated areas, route pages, and prevent abuse.
What we store/access: consent version, timestamp, selected categories, visitor/session consent identifiers, essential admin/session cookies, and security metadata.
Examples:
- consent preferences;
- consent audit identifiers;
- admin session protection;
- core routing and anti-abuse state.
Retention: session storage lasts for the browser session. Consent proof and essential records are kept as long as needed for security and compliance evidence.
Provider/recipient: SpectraEYE internal systems.
Required/optional status: required. This category is always active and cannot be disabled in the consent manager. Without it, SpectraEYE cannot reliably provide the website, remember consent choices, protect admin sessions, or maintain required compliance evidence.
## 7. Functional
Purpose: remember non-essential choices that make the public frontend feel consistent across visits and page changes.
What we store/access: theme, accessibility settings, weather effect visibility, dismissed prompts, collapsed promotion state, and similar UI preferences.
Examples:
- theme preferences;
- accessibility preferences;
- weather effect visibility;
- dismissed newsletter prompts;
- collapsed or dismissed promotional banners;
- selected status/page convenience settings.
Retention: session-only where possible. Persistent local preferences are kept until changed, cleared, or withdrawn.
Provider/recipient: SpectraEYE internal frontend storage.
Required/optional status: optional. This category is disabled by default. If Functional consent is rejected or withdrawn, these preferences may be cleared or limited to the current session.
## 8. Analytics
Purpose: measure how pages and interactions perform so SpectraEYE can improve reliability, layout, navigation, SEO, and speed.
What we store/access: internal visitor/session identifiers, page views, click events, scroll depth, top interactions, referrer, and performance context.
Examples:
- page views;
- click tracking;
- scroll depth;
- top interactions;
- referrer;
- visitor/session identifiers;
- SEO and speed analytics;
- performance context.
Retention: browser identifiers remain until changed or cleared. Server analytics are retained according to operational analytics retention settings.
Provider/recipient: SpectraEYE internal analytics only. SpectraEYE currently does not use external analytics services such as Google Analytics, Meta Pixel, Hotjar, or Cloudflare Analytics unless this policy and the implementation are later updated and valid consent is obtained where required.
Required/optional status: optional. This category is disabled by default and only runs after Analytics consent is granted.
## 9. Marketing & Communications
Purpose: support newsletter subscriptions, campaign attribution, promotion or offer context, and communication preferences.
What we store/access: newsletter preferences, campaign context, selected promotion/quote attribution, unsubscribe or suppression records, and email metadata.
Examples:
- newsletter category choices;
- campaign attribution;
- promotion selected in quote;
- unsubscribe and suppression state.
Retention: newsletter and suppression records are kept while needed to provide communications and honor opt-out requests.
Provider/recipient: SpectraEYE internal systems and SendGrid for email delivery and inbound parse. SendGrid may process email addresses, message headers, delivery information, bounce events, replies, and related email metadata for these purposes.
Required/optional status: optional. This category is disabled by default and required before non-essential campaign attribution is stored.
## 10. Support Chat
Purpose: enable public support chat continuity, replies, conversation history, attachments, and support follow-up.
What we store/access: chat email identifier, chat session id, support messages, attachments, timestamps, status, and browser session continuity.
Examples:
- email identifier;
- chat session identifier;
- support messages;
- attachments;
- timestamps;
- conversation status;
- browser session continuity.
Retention: support chat records and attachments are intended to be retained for up to 1 year unless needed longer for legal, security, or dispute reasons.
Provider/recipient: SpectraEYE internal support systems and SendGrid where email replies are involved.
Required/optional status: optional. This category is disabled by default. If Support Chat consent is not granted, the live support chat can be blocked or limited until the visitor enables this category.
## 11. External Media & Social Platforms
Purpose: control external social redirects today and provide a separate consent gate for future embedded media, widgets, or social platform features.
What we store/access: no social pixel, embedded feed, or external media player is loaded before consent. Clicking an external link transfers you to that platform.
Examples:
- Follow Us redirects;
- external social profile links;
- future embedded video or social widgets;
- future social pixels only after consent.
Retention: no SpectraEYE browser storage is currently required for simple redirects. Future embedded features will document their own retention before activation.
Provider/recipient: SpectraEYE for links before click; destination social platforms after navigation.
Required/optional status: optional. This category is disabled by default and required before future external embeds or social widgets load, unless another lawful exemption applies.
When you click an external social platform link, you leave SpectraEYE. The destination platform may process data according to its own privacy and cookie policies.
## 12. Consent audit records
SpectraEYE stores consent audit records to demonstrate when and how privacy choices were made. These records may include:
- consent version;
- action, such as accept all, reject all, save preferences, withdraw, or policy refresh;
- source, such as banner, preferences modal, footer Cookie Settings, or system;
- selected categories;
- timestamp;
- visitor/session identifiers where available;
- page path;
- IP address stored securely and displayed hashed/masked by default in admin;
- country where resolved;
- user-agent summary;
- metadata needed to understand the consent action.
Full IP reveal in admin should occur only through an explicit action and should be audited.
## 13. How to change choices
You can change your cookie and privacy choices at any time from the Cookie Settings link in the footer.
You can also clear cookies, localStorage, and sessionStorage from your browser settings. If you clear browser storage, SpectraEYE may ask for consent again because the prior local consent preference may no longer be available.
## 14. Retention
Storage duration depends on the category and feature:
- sessionStorage generally lasts until the browser tab/session ends;
- localStorage generally remains until changed, cleared by the user/browser, or removed by the application after consent withdrawal;
- cookies may have configured expiry dates or may expire at session end;
- server-side consent audit records are retained as long as reasonably needed to demonstrate consent and compliance;
- support chat records and attachments are intended to be retained for up to 1 year unless needed longer for legal, security, or dispute reasons;
- newsletter records are retained until unsubscribe plus suppression records needed to honor opt-out.
## 15. Changes to this policy
We may update this Cookie Policy when our website, storage practices, consent categories, providers, or legal obligations change. If changes materially affect optional categories or consent choices, SpectraEYE may request renewed consent.
## 16. Contact
Cookie and privacy requests should be sent to privacy@spectraeye.app. General inquiries may be sent to contact@spectraeye.app.
## 17. Reference materials
This Cookie Policy was prepared with reference to the following public legal, regulatory, and processor materials. These references support drafting and review, but they are not legal advice and do not replace final legal review before production publication.
- Regulation (EU) 2016/679 (General Data Protection Regulation), official EUR-Lex text: https://eur-lex.europa.eu/eli/reg/2016/679/oj
- Directive 2002/58/EC (ePrivacy Directive), official EUR-Lex text: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32002L0058
- European Data Protection Board, Guidelines 05/2020 on consent under Regulation 2016/679: https://www.edpb.europa.eu/sites/default/files/files/file1/edpb_guidelines_202005_consent_en.pdf
- Romanian National Supervisory Authority for Personal Data Processing (ANSPDCP): https://www.dataprotection.ro/
- UK Information Commissioner's Office, Cookies and similar technologies guidance: https://ico.org.uk/for-organisations/direct-marketing-and-privacy-and-electronic-communications/guide-to-pecr/cookies-and-similar-technologies/
- CNIL, Cookies and other tracking devices guidelines overview: https://www.cnil.fr/en/cookies-and-other-tracking-devices-cnil-publishes-new-guidelines
- Twilio Data Protection Addendum, relevant to SendGrid email processing: https://www.twilio.com/en-us/legal/data-protection-addendum
- Twilio Website Privacy Notice: https://www.twilio.com/en-us/legal/privacy