Privacy Policy — ClickMic
ClickMic ("the extension") is a Chrome browser extension that provides voice dictation for any website. This policy describes what data the extension stores, what is transmitted, and which third parties are involved. It applies to the extension code shipped via the Chrome Web Store; it does not govern websites you visit, Chrome itself, or third-party services referenced below (which have their own privacy policies).
1. Data stored locally on your device
Settings, dictation history, license state, and onboarding flags are stored on your device only and are not transmitted to any server except in the specific cases described in sections 4, 5, and 7 (and as summarized in section 8). The extension uses three browser-managed storage areas:
chrome.storage.local (per-install, removed when the extension is uninstalled)
| Key | What it contains |
|---|---|
clickmicSettings |
Your preferences: chosen recognition language, theme, button size and position, history size limit, sound effects toggle, transcript display mode, interface language, character pack selection. |
clickmicHistory |
The text of your dictation sessions, kept locally until the history reaches the size limit you choose. You can clear this at any time from the extension popup. If you attach a reminder to an entry, the scheduled timestamp is stored alongside that entry in this same record (see section 6). |
clickmic_install_id |
A random UUID generated locally on first run. Sent in calls to our licensing backend (section 4) so a license can be associated with this installation. Contains no name, email, IP, or other personally identifying information by itself. |
clickmic_access |
Cached snapshot of your current access state (trial / Pro / expired and timestamps), returned by our backend. Used so the extension can show the correct UI without re-contacting the backend on every action. |
clickmic_pro |
If you have activated a Pro license, a durable record of that activation (status and revalidation schedule). Lets the extension keep working when our backend is temporarily unreachable. |
clickmic_local_trial_started_at |
Legacy key from earlier builds; current versions only delete it on cleanup and never write to it. |
installedRemotePacks |
List of remote Character Packs (animated button mascots) you have installed, with id and version. Used to keep installs in sync across browser tabs and to redownload assets after an update. |
clickmic_mic_granted |
A boolean flag recording that you have granted microphone permission. Used to skip the permission prompt on subsequent visits. |
clickmic_last_mic_error |
The most recent microphone error code (e.g. not-allowed), stored temporarily to display a helpful message. Contains no audio or transcript data. |
clickmicActiveSession |
A short-lived record of the active recording session id and timestamp, used to prevent two tabs from recording simultaneously. Removed when recording stops. |
clickmic_event_log |
A bounded log of up to 150 recent technical events (e.g. recording_started, transcript_received, runtime_error) with timestamps. Used only when you submit a bug report and opt in to including diagnostics. Contains no dictated text and no page content. Capped in size and can be cleared from the popup. |
clickmic_tour_active |
A flag indicating whether the onboarding tour is currently in progress. Removed when the tour ends. |
clickmic_tour_seen |
A flag set after the onboarding tour first appears, so it does not reopen automatically on future page loads. |
clickmic_tour_completed |
A flag set when you finish the onboarding tour, used to suppress repeated tours. |
IndexedDB database clickmic-character-packs (per-context, browser-managed)
If you install a remote Character Pack from the catalog (section 5), the pack manifest and its image/audio assets are cached in a local IndexedDB database named clickmic-character-packs. This data is only used to render your selected mascot and is not transmitted anywhere.
Extension popup localStorage
| Key | What it contains |
|---|---|
clickmicTheme |
Your last selected popup theme, cached locally so the popup can open in the correct light or dark theme without a visual flash. |
clickmic_event_log |
A legacy/fallback copy of the bounded technical event log, used only if the background storage path is temporarily unavailable. Contains technical event types and timestamps only — no dictated text and no page content. |
2. Voice and audio data — Google Speech API
ClickMic uses the browser's built-in Web Speech API to convert your voice to text. When you speak into the extension:
- Your audio is captured and sent by your browser (Google Chrome) to Google's speech recognition servers for processing.
- This transmission is performed by Chrome itself, not by ClickMic, and is governed by Google's Privacy Policy.
- ClickMic does not directly access raw audio. The extension receives only the recognised text returned by the browser API and stores it locally in your dictation history.
3. Microphone permission
The extension requests microphone access only after you explicitly take one of the following actions:
- Clicking "Enable microphone" during the onboarding tour.
- Clicking the "Enable microphone" button in the extension popup.
- Starting a recording for the first time on a site that has not yet been granted mic access.
The extension does not request microphone access automatically on installation or browser startup. You can revoke microphone permission at any time from chrome://settings/content/microphone.
4. Paid access, licensing, and payments
ClickMic offers a free trial and optional paid Pro access. The Pro purchase is processed by our payment provider Lemon Squeezy. ClickMic itself does not handle card data; that flow lives entirely on the Lemon Squeezy checkout page.
Backend used for licensing
The extension talks to a small licensing backend operated by us at https://astrolabe-tools.com/clickmic/backend/extension/. The Lemon Squeezy API key is never embedded in the extension; only this backend talks to Lemon Squeezy.
What is transmitted
The extension sends the following data to the licensing backend, over HTTPS, with no cookies attached:
| Endpoint | When | Fields sent |
|---|---|---|
/billing/access.php |
On extension start, when the popup is opened, and as a periodic safety net while a session is active. | installId (random per-install UUID), extensionVersion. |
/billing/activate-license.php |
Only when you explicitly enter a license key and click "Activate". | installId, the license key you typed, extensionVersion. |
/billing/validate-license.php |
Periodic background revalidation (roughly every 30 days, or on the schedule returned by the backend) once you are activated. Best effort: a failed check keeps Pro active locally and is retried later. | installId, extensionVersion. |
/health.php |
Connectivity probe used to surface a clear error if the backend is unreachable. | No body. |
No email, name, IP address, page URL, dictated text, or browsing history is included in these requests by the extension. The backend may, like any HTTPS service, observe standard request metadata (timestamps, status codes, IP at the network level) for operational and abuse-prevention purposes.
Checkout
When you click "Buy ClickMic Pro", the extension opens an external checkout URL on Lemon Squeezy (astrolabe-tools.lemonsqueezy.com). Any data you enter on that page (name, email, payment details, billing address) is collected and processed by Lemon Squeezy under Lemon Squeezy's Privacy Policy. ClickMic does not see your card number.
License key
A license key is a randomly generated string issued by Lemon Squeezy. When you paste it into the extension's activation form, it is sent only to our licensing backend and stored locally as part of the clickmic_pro record described in section 1. You can remove it from the popup at any time, which resets your install to trial state locally and asks the backend to disassociate this installation.
5. Character Packs catalog and downloads
ClickMic includes a Character Pack catalog (animated mascot characters for the floating button). The catalog is fetched from our backend at https://astrolabe-tools.com/clickmic/backend/extension/characters/catalog.php when you open the catalog UI inside the extension.
- The catalog request itself contains no personal data and no cookies. The backend may, like any HTTPS service, see standard request metadata (timestamps, status codes, IP at the network level).
- If you install a pack, the extension downloads only image and audio assets listed in that pack's manifest, from URLs the manifest itself names (typically also on
astrolabe-tools.com). Asset types are restricted toimage/*andaudio/*; arbitrary code is not downloaded or executed. - Downloaded assets are cached locally in IndexedDB (section 1) and used only to render the mascot on your own device.
6. Local reminders and notifications
You can optionally attach a reminder to a note in History. Reminders are entirely local: nothing about them is transmitted to any server.
- The scheduled time is stored together with the matching history entry inside
clickmicHistory(section 1). - The extension uses
chrome.alarmsto schedule a wake-up at that time, andchrome.notificationsto display a system notification when the reminder fires. Both APIs run locally in your browser; they do not send your data to any server. - The notification body contains a short preview of the note text only on your own device and is not stored or sent anywhere by ClickMic.
- You can turn reminders and their chime off entirely in the extension settings. Existing scheduled reminders can be edited or cancelled from the History panel at any time.
7. Optional bug reports
The extension includes an optional "Report an issue" form. It is only submitted when you explicitly click "Send report". Nothing is sent automatically or in the background.
When you submit a report, the data is sent over HTTPS to a support backend hosted at astrolabe-tools.com. The following fields may be included, depending on your choices in the form:
- Your written description of the issue and expected behaviour (required).
- Website URL or hostname (optional): this field is pre-filled with the current site hostname only, but you may edit it before sending the report.
- Your email address (optional — only if you choose to enter it for follow-up).
- Technical diagnostics (included by default, but you can uncheck the box before sending): extension version, browser user-agent string, operating system platform, current site hostname only (not the full URL), selected speech language, transcript display mode, microphone permission state, theme, and button size. These fields contain no dictated text.
- Recent event log (included with diagnostics when checked): the last 50 entries from the
clickmic_event_logdescribed in section 1. Contains technical event types and timestamps only — no dictated text. - A recent transcript snippet (not included by default — only if you explicitly check the opt-in box labelled "Include recent transcript snippet").
Dictated text and page content are not included in a bug report unless you opt in to the transcript snippet field. License keys are not attached to bug reports.
8. External network requests made by the extension
For transparency, here is the full list of network requests the extension itself can initiate, and when:
| Destination | When | Purpose |
|---|---|---|
| Web Speech API (Chrome → Google) | While recording. | Speech-to-text. Transmission is performed by Chrome itself; see section 2. |
astrolabe-tools.com/clickmic/backend/extension/billing/* |
On launch, on popup open, on user activation, and periodically while activated. | License / access verification. See section 4. |
astrolabe-tools.com/clickmic/backend/extension/health.php |
Connectivity probe when a billing call has failed. | Distinguish "backend down" from "user offline" so the UI shows a helpful error. |
astrolabe-tools.com/clickmic/backend/extension/characters/catalog.php and asset URLs in the catalog |
When you open the Character Pack catalog or install a pack. | Fetch catalog and image/audio assets. See section 5. |
astrolabe-tools.com/clickmic/backend/extension/report-bug.php |
Only when you click "Send report". | Submit your bug report. See section 7. |
astrolabe-tools.lemonsqueezy.com |
Only when you click "Buy ClickMic Pro". The extension opens this URL in a new tab; it does not pre-fill any data. | Checkout. Governed by Lemon Squeezy's Privacy Policy. |
The extension does not embed advertising networks, third-party analytics SDKs, behavioural tracking pixels, A/B-testing services, or session-replay tools. The license-revalidation call (section 4) is the only periodic background request the extension itself makes; its content is limited to the fields listed in that section.
9. Permissions declared in the extension
| Permission | Why it is needed |
|---|---|
storage |
Save settings, dictation history, license state, and onboarding flags locally on your device (section 1). |
unlimitedStorage |
Allow larger local history size options without sending history to any server. The extension still trims history according to the size limit you choose. |
contextMenus |
Add a right-click menu item to start dictation and open history. |
alarms |
Schedule local wake-ups for the reminders you attach to history entries (section 6). No remote server is contacted. |
notifications |
Show a system notification when one of your local reminders fires (section 6). Notification content is generated on your device from the note you saved. |
host_permissions: <all_urls> |
Inject the floating dictation button on every website. This is the extension's core purpose — voice input on any page you visit. |
The extension does not request tabs, cookies, webRequest, or any optional permission that would let it observe your browsing.
10. Use of data — Chrome Web Store Limited Use compliance
ClickMic uses user data only to provide and improve its voice dictation, local history, settings, character-pack selection, local reminders, and support features. User data is not used for advertising, creditworthiness scoring, unrelated analytics, transfer to data brokers, or any other purpose outside of the user-facing features described in this policy. Personal data is not sold.
11. Data retention and deletion
- Dictation history is automatically trimmed by size, not by age. Older entries are removed only when the local history reaches the size limit you choose (presets include 5 MB, 10 MB, 25 MB, and 50 MB; the default is 10 MB). You can delete all history at any time by clicking "Clear all" in the extension popup.
- License and access cache (
clickmic_install_id,clickmic_access,clickmic_pro) can be cleared from the extension popup under Advanced → License. Clearing it returns the install to its initial state. - Character Pack assets in IndexedDB are removed when you uninstall the pack from the catalog.
- Uninstalling the extension removes all data stored under
chrome.storage.localand the extension's popuplocalStorage. IndexedDB databases scoped to the extension are also removed by Chrome on uninstall.
12. Children's privacy
The extension is not directed at children under 13. We do not knowingly collect any personal information from children. If you believe a child has provided information through the extension, please contact us using the address in section 15 and we will delete it.
13. Website services and analytics
The Astrolabe Tools marketing website uses Google Analytics to understand how visitors find and navigate the site. Analytics runs only on the public website. It is not loaded inside the ClickMic extension and has no access to any data stored by the extension.
14. Changes to this policy
If this policy changes materially, we will update the "Last updated" date above and post the revised policy at the same URL. The latest version always supersedes earlier versions. We do not promise advance notification; please check this page periodically.
15. Contact
If you have questions about this policy, please contact us at info@astrolabe-studio.com or by opening an issue on the extension's support page in the Chrome Web Store.