Privacy policy
Last updated: October 6, 2026
This policy covers two things that work differently: the SpecMiru Chrome extension and the specmiru.com website (including its feedback forms, roadmap and API). Placeholders in brackets must be completed before publication.
Publisher (data controller): [Legal name, address, registration number] · Contact: [privacy contact email]
1. The Chrome extension
What stays on your device
SpecMiru inspects pages inside your browser. The content you inspect — DOM, HTML, page text, selectors, computed styles, colors, fonts, page URLs, screenshots, assets, the AI instructions you type and the context you copy — never leaves your device. Form values are never read. Emails and probable tokens are masked in captured text.
The extension stores, on your device only:
- in
chrome.storage.local: your preferences (theme, language, inspect mode, display mode, overlay side and width) and, only if you opt in to statistics, the consent status and a random installation identifier; - in
chrome.storage.session: one cleaned selection per tab, deleted on navigation, tab closure or when you clear it.
Optional usage statistics (beta)
Off by default. If you opt in (home screen card or Settings › Privacy), the extension sends predefined product events — for example “section opened” or “export copied” — with enumerated properties and size ranges, plus the extension version and a random installation identifier. Events never contain page content, URLs, text, captures, assets, AI instructions or form values.
- Nature: pseudonymous usage data (a random identifier, no account, no name, no email). It is not anonymous in the strict legal sense, because the identifier links events from the same installation.
- Recipient: PostHog (PostHog Cloud, EU region) as processor. [Retention period at PostHog to be confirmed.]
- Network address: as with any HTTP request, your device's IP address is visible to the receiving service at the network level. SpecMiru does not add it to events. [PostHog IP handling settings to be confirmed.]
- Legal basis: your consent, withdrawable at any time in Settings › Privacy. Withdrawing deletes the identifier and the local queue. Declining never degrades any feature.
Feedback sent from the extension
When a backend connection is enabled, the extension's Help & feedback sheet sends only what you write (rating, message, optional email) plus the extension version and the browser's major version. For a bug report, nothing is attached by default; each of the following has its own switch, off by default:
- Technical diagnostic: extension version, browser major version, display mode, language, current SpecMiru section (and, if present, a predefined internal error code). Never DOM, text, selectors, styles, form values, clipboard, error messages or stack traces.
- Page URL: origin and path only — query strings and fragments are removed.
- Screenshot of the visible screen, with form fields and frames masked, produced only at sending time.
Feedback is handled as described in section 2.
2. The website and its forms
Data we process
| Data | Why | Optional? | Retention |
|---|---|---|---|
| Feedback, bug report, idea, support message | To read and act on it | You choose what to write | [24 months] after receipt, then deleted or anonymized |
| Email address | Only to reply to you | Optional (required for the support form) | Same as the message |
| Rating (1–5) | Product quality | Required for “Feedback” only | Same as the message |
| Bug page URL (origin + path) | To reproduce a bug | Optional, explicit | Same as the report |
| Bug screenshot | To reproduce a bug | Optional, explicit | Same as the report; stored in a private bucket, never public |
| Technical diagnostic | To reproduce a bug | Optional, explicit | Same as the report |
| Uninstall survey reason and comment | To understand why people leave | Optional page | [24 months] |
| Roadmap voter identifier | One vote per browser per item | Only if you vote | Cookie: 180 days; votes: while the item exists |
| Anti-abuse network hash | Rate limiting | Automatic on submissions and votes | Until its time window ends (at most 24 hours), then purged |
| Human-verification signals | Block automated abuse of forms | Automatic on the three web forms | Processed by Cloudflare (see below) |
| Optional account: email, display name, language | Sign-in links and your Account page | Optional — nothing requires an account | While the account exists; deleted when you delete it |
| Optional account: link to your messages and votes | Show you your own history | Only while signed in (never the uninstall survey) | Link removed when you delete the account (messages kept, detached) |
| Optional account: synced extension preferences | Same settings on your devices (not active in the extension yet) | Optional | Until you delete them on your Account page |
| Admin account data | Secure access for administrators | Administrators only | While the account exists |
Your messages are private: they are never published automatically. A feature idea can inspire a public roadmap item, but its public text is written by us — your wording, email and technical details are never shown.
We do not store your IP address in clear. For rate limiting, the server computes a keyed hash (HMAC) of the network address combined with a time window; it cannot be reversed without our secret key, changes with each window, and is deleted when the window expires.
Optional SpecMiru account
An account is optional: installing and using SpecMiru, every current feature, sending feedback and voting work without one. If you create one, we process your email (to send one-time sign-in links — there is no password), an optional display name and your language. While signed in, messages you send from the website’s feedback and support forms are linked to your account so you can follow them on your Account page; the uninstall survey is never linked. Your roadmap votes are linked to your account so they count once and follow you; votes this browser cast before you signed in are kept.
Later, the extension may offer to copy six display settings (theme, language, inspect mode, display mode, overlay side and width) to your account. This is not active yet. It never includes the pages you inspect, their URLs, page text, selections, captures, assets, AI instructions or copied context.
Your account is not connected to the extension’s optional usage statistics: no account identifier, email or name is sent to PostHog. You can delete your account at any time on your Account page: your profile, synced preferences and the link to your votes are deleted; messages you sent are kept like messages sent without an account and follow the retention above.
Cloudflare Turnstile
The feedback, support and uninstall forms use Cloudflare Turnstile to block automated abuse. Turnstile runs a challenge in your browser and processes technical signals (such as your IP address and browser characteristics) on Cloudflare's side. Our server verifies the resulting token with Cloudflare; we do not send your IP address in that verification. See Cloudflare's privacy policy. [Confirm Cloudflare's role and data processing terms.]
No tracking on this website
This website uses no analytics, no advertising pixels, no session replay and no third-party trackers. See the cookie policy for the only cookies set.
3. Processors and hosting
- OVHcloud (OVH SAS, France) — virtual server hosting the website and the API, in an EU data centre. [Exact data centre to confirm.]
- Supabase — database, private file storage, administrator authentication and optional account sign-in (including sign-in emails). [Project region to confirm — EU recommended.]
- Cloudflare — Turnstile human verification on web forms.
- PostHog — opt-in extension usage statistics only (EU region).
Where data is transferred outside the European Economic Area, [appropriate safeguards — e.g. Standard Contractual Clauses / EU-US Data Privacy Framework — to be confirmed].
4. Legal bases (GDPR)
- Messages, bug reports and support requests: our legitimate interest in supporting and improving SpecMiru, and your request.
- Optional attachments, optional email and statistics: your consent, given by enabling each one.
- Anti-abuse measures and the voter cookie: our legitimate interest in protecting the service and keeping votes fair.
- Optional account: performing the service you asked for by creating it (contract).
5. Your rights
You can request access, rectification, erasure, restriction, objection and portability, and withdraw consent at any time, by writing to [privacy contact email]. Messages sent without an account are not tied to you, so include enough detail (date, email used) for us to find them. If you have an optional account, you can see your linked messages, change your profile and delete your account yourself on your Account page. You may also lodge a complaint with your supervisory authority (in France, the CNIL).
6. Security
See the security page. Private data is only accessible to provisioned administrators protected by multi-factor authentication.
7. Changes
We will update this page when our processing changes, and change the “last updated” date above.