Privacy Policy
Last updated: March 29, 2026
Lesson Transcriber is a Chrome extension that records and transcribes audio from browser tabs. This policy explains what data is collected, how it is used, and your choices.
Summary
When you use Lesson Transcriber, audio from your browser tab and microphone is sent to our backend server (api.lessontranscriber.com) for transcription. Our server forwards the audio to the Groq Whisper API, receives the transcript, and returns it to your browser. Audio is held in server memory only during processing and is never written to disk.
We generate an anonymous device identifier to manage your subscription and track basic usage analytics. If you subscribe, Stripe collects your payment information and email address. We do not require an account, password, or sign-up.
Data the extension collects
Device identifier
When you install the extension, a random unique identifier (UUID) is generated and stored locally in chrome.storage.local. This device ID is sent to our server as an X-Device-Id header with every request. It is used to track your subscription status and free trial usage. The device ID is not linked to your name or email unless you subscribe.
Audio recordings
- When you click "Start Recording," the extension captures audio from the active browser tab and your microphone using the MediaRecorder API.
- Audio is recorded locally in your browser and auto-saved to IndexedDB during recording.
- When you click "Stop & Transcribe," the audio is sent to api.lessontranscriber.com.
- Our server forwards the audio to the Groq Whisper API for transcription.
- Audio is held in server memory only during processing and is discarded immediately after transcription completes. It is never written to disk on our servers.
Transcripts
- Transcribed text is returned to the extension and displayed in the popup.
- Transcripts are auto-saved in your browser's IndexedDB storage for later review.
- Transcripts are not stored on our servers.
Subscription data
Our server stores the following for each device:
- Device ID
- Subscription plan (free or paid)
- Number of free transcriptions used
Email address
Your email address is only collected if you subscribe, via Stripe Checkout. It is stored to enable subscription recovery ("Restore Purchase") if you reinstall the extension on a new device. We do not use your email for marketing or share it with third parties.
Usage analytics
The extension sends usage events to our server to help us understand how the product is used and improve it. Each event includes a device ID, event type, timestamp, and optional metadata (such as recording duration or error type). The following event types are tracked:
extension_installedextension_openedsettings_openedrecording_startedrecording_stoppedtranscription_completedtranscription_failedpaywall_hitpaywall_dismissedcheckout_openedsubscription_activatedsubscription_cancelledrestore_purchase_usedtranscript_exported
Analytics data is stored in a database on our server. It is not shared with third parties.
Data stored locally on your device
- Device ID — in
chrome.storage.local - Transcripts — in IndexedDB
- In-progress recordings — auto-saved to IndexedDB during recording
- Recording state — in
chrome.storage.local(survives browser restarts)
Third-party services
Lesson Transcriber API
Our backend server at api.lessontranscriber.com receives audio for transcription, manages subscriptions, and stores usage analytics. Hosted on a virtual private server.
Groq API
Audio is forwarded from our server to the Groq API for transcription using the Whisper speech-to-text model. Groq's processing of your data is governed by their privacy policy.
Stripe
Stripe handles payment processing for subscriptions. Stripe collects your payment information and email address directly. We never see or store your card number.
Chrome permissions
The extension requests the following permissions:
| Permission | Why it is needed |
|---|---|
tabCapture |
Captures audio from the browser tab (the other person's voice in the call) |
offscreen |
Creates a background document to handle audio recording and stream merging (required by Chrome MV3) |
storage |
Stores device ID and recording state locally |
unlimitedStorage |
Auto-saves audio recordings locally during recording; a 50-minute lesson can be 10-20 MB |
alarms |
Keeps the background service worker alive during long recordings (Chrome MV3 terminates idle workers after ~30 seconds) |
host_permissions: api.lessontranscriber.com/* |
Allows the extension to send audio to our backend for transcription and to check subscription status |
The extension does not request activeTab, scripting, or broad host permissions. It only communicates with api.lessontranscriber.com.
Data retention
- Audio recordings: Discarded from server memory immediately after transcription. Never written to disk.
- Analytics events: Retained on our server for product improvement.
- Device records (device ID, plan, usage count): Retained while the extension is in use.
- Email address (if subscribed): Retained while your subscription is active. Deleted on request.
- Local data (device ID, transcripts, recordings): Persists until you uninstall the extension or clear extension storage.
Your rights and choices
- Uninstall the extension to delete all locally stored data.
- Email [email protected] to request deletion of your server-side data (device record, analytics events, email).
- Cancel your subscription at any time via the extension settings page.
Children's privacy
Lesson Transcriber is not directed at children under 13. We do not knowingly collect information from children.
Changes to this policy
If we update this policy, the "Last updated" date at the top will change. Continued use of the extension after changes constitutes acceptance of the updated policy.
Contact
If you have questions about this privacy policy, contact us at [email protected].