Blabb Privacy Policy
Last Updated: July 27, 2026
TL;DR — Your voice is processed entirely on your device and, by default, nothing is uploaded. No Blabb account, no tracking, no telemetry in the app. Once subscribed, the app checks your licence key with our payment provider — that check carries the key and nothing you dictate. (If you turn on optional crash reporting, error details are sent — see §6.3.) You can delete everything anytime. The blabb.io website is a separate system and does use cookieless page-view analytics — see §6.5. Read on for the details.
Blabb ("we," "us," or "our") is committed to protecting your privacy. This Privacy Policy explains how we handle information when you use the Blabb desktop application for Windows ("Blabb" or the "App").
Blabb is built with privacy as a core principle. Your voice data is processed entirely on your device and is never uploaded to our servers.
Data Controller: Trevor Foo, publishing Blabb as an individual developer Contact: support@blabb.io
1. Overview
Blabb is a privacy-first, offline voice transcription application. By default, all speech processing happens locally on your device. No audio data, transcriptions, or personal information is sent to our servers or any cloud service unless you explicitly enable a feature that requires it.
At a Glance
- Your audio is processed 100% locally on your device
- Audio recordings are never uploaded to any server
- Transcription text is stored locally in an encrypted database
- In the app: no analytics, telemetry, or tracking (optional, opt-in crash reporting only — see §6.3)
- Crash reporting is disabled by default (opt-in only)
- No Blabb account — you never create one with us. Subscribing does create a customer record with our payment provider (see §6.4)
- No data sold to third parties
- On the website: cookieless, aggregate page-view analytics — no cookies, no cross-site tracking, no profiling (see §6.5)
2. Data We Process
2.1 Audio Data
When you record audio for transcription, the audio is processed entirely on your device using local on-device speech recognition (CrispASR). Audio data is:
- Processed locally using on-device AI models
- Held in memory (RAM) only during active transcription — it is never saved as a file on your hard drive
- Never transmitted to our servers or any third party
- Cleared from memory immediately after transcription completes
Audio is never written to disk by default. Audio is buffered in segments of at most 5 minutes. Once transcription is complete, only the resulting text is stored — the original audio is gone.
2.2 Transcription Text
Transcribed text is stored locally on your device in an encrypted SQLite database (history.db). We do not have access to your transcriptions.
Each transcription record stores:
- Original text: The raw (pre-rewrite) transcription output. It is stored by default alongside the final text (encrypted, same retention). There is no separate toggle to disable it; use bulk or complete deletion (Section 10) to remove it.
- Final text: The text after optional AI enhancement (grammar correction, style formatting)
- Metadata: Timestamps, processing duration, and whether AI enhancement was applied
2.3 Application Settings
Settings are stored locally in a configuration file (config.json). This includes:
- Audio preferences (selected microphone, input method, capture mode)
- AI settings (transcription model, language, text processing preferences)
- Hotkey configuration
- Appearance preferences (window opacity, colors)
- Privacy settings (data retention period, auto-delete preferences)
2.4 Personal Glossary (Spelling Corrections)
If you enable the personalization feature (off by default), Blabb learns from corrections you make to the text it types. To do this, the Edit Monitor reads the text in the foreground application using Windows UI Automation — the same accessibility interface screen readers use — compares it to what Blabb typed, and stores the difference as a spelling correction in a local file (glossary_log.jsonl). This reading happens entirely on your device, the data never leaves your device, and the feature can be turned off at any time in Settings.
2.5 Secrets and Credentials
If you configure any API keys or credentials, they are stored locally using Windows DPAPI encryption with HMAC-SHA256 integrity protection (secrets.dat). We never have access to your credentials.
2.6 Screen Content (OCR Enhancement) — Optional
When you select the OcrEnhanced processing profile (off by default), Blabb captures a screenshot of the foreground window and runs on-device optical character recognition (OCR) so the AI rewrite has more context about what is on screen. This uses the Windows graphicsCapture / graphicsCaptureProgrammatic capabilities. The screenshot and recognized text are processed in memory on your device only — they are not saved to disk and are never transmitted. The foreground window's title and process name may be held transiently in memory during processing. This feature is entirely opt-in; all other profiles capture no screen content.
3. Data We Do NOT Collect
- We do not collect your audio recordings
- We do not collect your transcriptions
- We do not collect your keyboard input
- We do not require account creation
- We do not track your location
- We do not use analytics or tracking services in the app
- We do not sell data to third parties
This section describes the Blabb application. The blabb.io website is a separate system: it uses cookieless, aggregate page-view analytics, disclosed in §6.5. Nothing you dictate ever reaches the website.
4. Data Storage and Security
4.1 Storage Location
All application data is stored locally on your device at:
%LocalAppData%\Blabb\
| Data | File | Encrypted |
|---|---|---|
| Settings | config.json | No (non-sensitive) |
| Transcription History | history.db | Yes (AES-256-GCM, row-level; key DPAPI-wrapped in db_key.dat) |
| Secrets/API Keys | secrets.dat | Yes (DPAPI + HMAC-SHA256) |
| HMAC Keys | hmac_key.dat | Yes (DPAPI) |
| Glossary | glossary_log.jsonl | No |
| Application Logs | logs\log.txt | No (best-effort PHI masking; see 4.3) |
| Audit Logs | audit\audit-*.json | No (PHI masked) |
| AI Models | Models\ | No (non-personal) |
No data is stored in any cloud service. Data is tied to your Windows user account via DPAPI and cannot be accessed by other users on the same device.
4.2 Encryption
Blabb uses industry-standard encryption:
- Algorithm: Windows DPAPI (Data Protection API — a built-in Windows feature that encrypts data so only your Windows user account can decrypt it) with
CurrentUserscope - Integrity: HMAC-SHA256 (a cryptographic checksum that detects any tampering with encrypted data) with constant-time verification
- Format: Encrypt-then-HMAC (authenticated encryption — data is encrypted first, then sealed with a tamper-proof signature)
- Key management: Automatic 90-day rotation of the secrets-store integrity key (
hmac_key.dat). The transcription-history database key (db_key.dat) is generated once per user profile and tied to the Windows account via DPAPI; it is not currently rotated. In-memory byte buffers are zeroed where feasible (managed arrays only — .NET immutable strings cannot be zeroed, and swap/hibernation/cold-boot residue is not covered). - Key storage: DPAPI-protected on disk, tied to your Windows user account
4.3 PHI Masking
Application logs make a best-effort attempt to automatically mask protected health information: text/transcript fields, phone numbers, email addresses, and SSNs are replaced with [MASKED-PHI] tokens before being written to disk. Two important caveats:
- Pattern-based masking is best-effort, not a guarantee — it relies on regex patterns and will not catch every instance of free-form dictated text.
- Verbose logging can capture short transcript excerpts. At the default log level, transcription results are logged at
Debugand do not appear in the file; if you enable verbose logging, up to ~100 characters of a transcript may be written to the local log (still subject to best-effort masking). Do not treat masking as a license to leave verbose logging on in sensitive environments.
5. Data Retention
5.1 Default Retention
- Default retention period: 1 week
- Selectable options: Don't save history · 1 day · 1 week · 1 month · Forever
- "Don't save history" means nothing is written to disk at all, and anything already stored is removed.
- "Forever" means there is no expiry — your history is kept until you delete it.
5.2 How Retention Works
Where the setting has an expiry — 1 day, 1 week or 1 month — transcriptions older than that period are automatically and permanently deleted from the local database. Deletion occurs:
- When new transcriptions are added
- On application startup
5.3 Audit Log Retention
Integrity audit logs are retained for up to 7 years (2,555 days) for security compliance. These logs contain no transcription content — all personal data fields are masked with [MASKED-PHI].
6. Third-Party Services
6.1 LM-Kit (Local AI Runtime)
Blabb uses CrispASR for on-device speech-to-text and LM-Kit.NET for on-device text processing (the cleanup language model) and voice-activity detection. All processing happens entirely on your device. No audio or text data is transmitted to CrispASR, LM-Kit, or any associated service.
If you enter an LM-Kit license key, LM-Kit may validate it over the internet; we do not control what it transmits during that validation (consult the LM-Kit privacy documentation). With no key entered (the default), no license check occurs. Your transcription audio and text are never sent to LM-Kit.
Generative AI (Microsoft Store Policy 11.16): Blabb uses on-device generative AI — an LLM (IBM Granite) that rewrites and polishes transcribed text — running entirely on your device. No input or output leaves your device. To report inappropriate AI output, use Report AI content (the flag button on any History entry, the button in the Settings window footer, or Settings → About), or email report@blabb.io.
6.2 HuggingFace (Model Downloads)
When you download additional AI models for local text processing, the app connects to HuggingFace (huggingface.co) to download model files. These downloads:
- Transmit no voice, transcript, or account data
- Do expose your IP address to HuggingFace (a U.S.-based service) for the request — an international transfer of personal data. HuggingFace's privacy policy states its servers are U.S.-based and relies on user consent and "appropriate safeguards" for such transfers; it does not cite the EU-U.S. Data Privacy Framework. Consult https://huggingface.co/privacy for the current terms.
- Are one-time downloads cached locally
- Can be avoided entirely by using the bundled models only
HuggingFace's privacy policy applies to their website: https://huggingface.co/privacy
6.3 Sentry (Crash Reporting — Opt-In Only)
Blabb can optionally use Sentry for crash reporting. This is disabled by default and requires your explicit opt-in.
When enabled, Sentry receives:
- Unhandled exception details (stack traces, error messages)
- Application and operating system version
- Your source IP address (captured by Sentry's ingest infrastructure — this is personal data under GDPR)
- No audio data, transcription text, or user identifiers
Privacy safeguards when crash reporting is enabled:
SendDefaultPiiis set tofalse(no personal identifiers)IsEnvironmentUseris set tofalse(no user identity)TracesSampleRateis set to0(no performance monitoring)- No custom breadcrumbs or session replay
Sentry's privacy policy: https://sentry.io/legal/privacy/ · sub-processors: https://sentry.io/legal/subprocessors/ (30-day change notice)
International data transfers (GDPR Articles 44–50): Sentry (Functional Software, Inc. d/b/a Sentry) is a U.S.-based company. When crash reporting is enabled, exception data is transferred to Sentry's servers in the United States. Sentry self-certifies under the EU-U.S. Data Privacy Framework and offers Standard Contractual Clauses (SCCs) plus the UK Addendum as a fallback in its DPA. For details, see Sentry's DPA and privacy policy. Since crash reports contain no personal data (no audio, no transcriptions, no user identifiers), the impact of this transfer is minimal.
6.4 Polar (Billing and Licensing)
Subscriptions are sold and billed by Polar Software Inc., a U.S. company, acting as merchant of record — Polar is the seller of record, and handles payment processing, sales tax/VAT/GST, invoicing and refunds. Blabb never receives, processes or stores your payment card details.
When you subscribe, you do so on a Polar-hosted checkout page in your browser, not inside the app. Polar collects the information it needs to sell to you and meet its tax obligations: your name, email address, billing country and postcode, any tax identifier you supply, your payment details, and your IP address. Blabb does not see your card details at any point.
What the app itself sends. After subscribing you paste a licence key into Blabb. To check that the subscription is still active, the app sends that licence key and a device activation identifier to Polar, and Polar sees the IP address the request comes from. This happens when the app starts, about once a day while it is running, and when you activate or remove a key. It is the only per-user network request Blabb makes.
What is never sent. No audio, no transcriptions, no dictated text, and no glossary or history data are ever transmitted to Polar or anyone else. The licence check carries the key and the device identifier and nothing about what you dictate.
Stored on your device. Your licence key and its activation identifier are stored locally, encrypted with Windows DPAPI and sealed with an HMAC, in the same protected store as your other secrets.
International transfer. Polar Software Inc. is based in the United States, so subscribing and licence verification involve a transfer of personal data to the U.S. — an international transfer for GDPR purposes and a cross-border disclosure under Australian Privacy Principle 8. Polar's privacy policy: https://polar.sh/legal/privacy
The Microsoft Store distributes the application but is not involved in billing. Microsoft's privacy policy still applies to the Store download itself: https://privacy.microsoft.com/
6.5 The blabb.io Website
The sections above describe the Blabb application. This section covers the website at blabb.io, which is a separate system with different characteristics.
The website is a static site with no accounts, no forms, no cookies, and no login. It does not ask you for any personal information, and there is nothing on it to submit.
Hosting. The site is served by Cloudflare Pages (Cloudflare, Inc., a U.S. company). Like any web host, Cloudflare receives your IP address, browser user-agent, and the page you requested as a necessary part of delivering the page, and may retain these transiently in operational logs for security and abuse prevention. This is an international transfer of personal data for GDPR purposes and a cross-border disclosure under Australian Privacy Principle 8. Cloudflare's privacy policy: https://www.cloudflare.com/privacypolicy/
Fonts and scripts. All fonts and scripts are served from blabb.io itself. The website does not load resources from third-party CDNs, so browsing it does not disclose your IP address to any party other than our host and the analytics service described next.
Analytics. The website uses Cloudflare Web Analytics to count page views. We want to be precise about what this is and is not, because the app itself contains no analytics of any kind.
Cloudflare Web Analytics is a privacy-preserving, cookieless measurement tool. Specifically:
- It sets no cookies and writes nothing to your browser's storage.
- It does not fingerprint your device and does not track you across other websites.
- We receive aggregate reporting only — page views, referring site, general location at country level, browser and device type, and page-load timings. On our plan this is high-level counting; we cannot see individual visitors, follow a person between pages, or build a profile of you.
- Your IP address is processed transiently by Cloudflare to derive the country and to filter bot traffic. It is not exposed to us and is not stored as part of the analytics record.
Because Cloudflare is a U.S. company, this is an international transfer on the same basis as the hosting described above.
Why there is no cookie banner. EU and UK cookie-consent rules are triggered by storing or accessing information on your device. This tool does neither, so a consent banner is not required. We rely on our legitimate interest in understanding basic traffic levels for a product website (GDPR Article 6(1)(f)), and you can object at any time using the contact details in §16.
How to opt out. Because there is no cookie to refuse, the cleanest opt-out is a tracker-blocking extension or browser setting, or sending a Do Not Track / Global Privacy Control signal. Blocking the beacon has no effect on how the website works.
What we do not do. No advertising tags, no conversion or remarketing pixels, no session recording or heatmaps, no third-party trackers, and we do not sell or share website data.
Your rights (§9, and §12 for GDPR) and our contact details (§16) apply equally to the website.
7. Network Usage
Blabb uses network connectivity only for:
| Activity | When | Data Transmitted |
|---|---|---|
| AI Model Downloads | When user downloads additional models | Model file requests only (no personal data) |
| Crash Reports | Only if user opts in | Exception details only (no personal data) |
| LM-Kit License Check | Only if you enter an LM-Kit license key | License validation only (no user data) |
| Subscription Licence Check | App start, roughly daily while running, and on activation | Your licence key and a device activation identifier (no audio, no text) |
Core functionality works completely offline. After initial AI model download, no internet connection is required for transcription or text processing. If the licence check cannot reach Polar, Blabb keeps working for up to 30 days before asking you to reconnect, and warns you in Settings before that runs out.
This table describes the application. Visiting the blabb.io website is a separate activity with its own disclosures — see §6.5.
8. App Permissions
Blabb requires the following Windows permissions:
Microphone Access
Required to capture audio for transcription. Audio is processed on-device only and is never transmitted over the network. The app will request this permission on first use.
Full Trust (runFullTrust)
Required for keyboard simulation (typing transcribed text into other applications), global hotkey detection, window management, and — if you enable the Edit Monitor (Section 2.4) — reading typed text from the foreground window via Windows UI Automation. This is a standard Windows capability for accessibility and input tools.
Screen Capture (graphicsCapture / graphicsCaptureProgrammatic)
Required only when the optional OcrEnhanced profile (Section 2.6) is active, to capture the foreground window for on-device OCR. No other profile captures screen content, and Blabb's own windows are excluded from capture.
9. Your Rights
You have complete control over your data. Since all data is stored locally, you can:
9.1 Access Your Data
View all transcription history within the app's History window.
9.2 Access and Copy Your Data
View your full transcription history in the History window and copy any entry's text directly. A machine-readable JSON export is implemented in the app's data layer but is not yet wired to the UI; until it is, in-app viewing and copy satisfy access. (Your data is local to your device, so a full export must be performed by you in the app — it cannot be produced by support.)
9.3 Delete Your Data
- Individual items: Delete specific transcriptions from the History window
- Bulk deletion: Use "Clear All History" to delete all transcriptions at once
- Auto-delete: Configure automatic retention periods (default: 1 day)
- Complete data removal: See Section 10 below
9.4 Configure Privacy Settings
- Enable or disable auto-delete
- Set retention period (from "when the app closes" up to "Forever")
- Enable or disable crash reporting (disabled by default)
- Enable or disable personalization features
9.5 Withdraw Consent
For any optional features (crash reporting, personalization), you can withdraw consent at any time through the Settings window. Withdrawing consent does not affect the lawfulness of processing prior to withdrawal.
10. Complete Data Deletion
To delete all Blabb data from your device:
- Within the app: Clear all transcription history from the History window
- Delete application data: Remove the folder
%LocalAppData%\Blabb\
This folder contains all your settings, transcription history, logs, glossary data, and cached AI models. Deleting it removes all Blabb data from your device.
Note: Uninstalling the application through Windows Settings removes the app but does not delete your data folder. You must manually delete %LocalAppData%\Blabb\ to ensure complete data removal.
11. Children's Privacy
Blabb is not directed at children. The GDPR digital-consent age (Article 8) is set by each member state and ranges from 13 to 16 across the EEA, UK, and Switzerland; outside the EEA, the U.S. COPPA rule applies where U.S. law governs. Blabb performs no age verification. Where the local age of digital consent has not been reached, a parent or guardian should provide consent for any consent-based feature (e.g., opt-in crash reporting).
12. GDPR Compliance
For users in the European Economic Area (EEA), United Kingdom, and Switzerland:
Legal Basis for Processing (GDPR Article 6)
| Processing Activity | Legal Basis | Article |
|---|---|---|
| Speech-to-text transcription | Contract | 6(1)(b) |
| AI text enhancement | Contract | 6(1)(b) |
| History storage | Contract | 6(1)(b) |
| Crash reporting (opt-in) | Explicit consent | 6(1)(a) |
Contract basis (Article 6(1)(b)): Transcription, enhancement, and history storage are necessary to deliver the voice-to-text service you licensed. Because all processing occurs locally on your device and the vendor never receives your data, the impact on your rights is minimal.
Your Rights Under GDPR
- Right of access (Article 15): View your data in-app or export to JSON
- Right to rectification (Article 16): Delete an inaccurate entry and re-dictate it; stored text cannot be edited in place
- Right to erasure (Article 17): Delete all data via in-app controls or file deletion
- Right to restrict processing (Article 18): Disable specific features in Settings
- Right to data portability (Article 20): Review and copy your history in-app; a full JSON export is implemented but not yet exposed in the UI
- Right to object (Article 21): Disable any optional processing
- Right to withdraw consent (Article 7): Toggle optional features at any time
Data Controller
Trevor Foo (individual developer, publishing as Blabb) Email: support@blabb.io
Data Protection Officer
Blabb does not currently have a Data Protection Officer as we are not required to appoint one under GDPR Article 37. For privacy inquiries, contact: support@blabb.io
Supervisory Authority
You have the right to lodge a complaint with your local data protection supervisory authority.
13. HIPAA Considerations
Blabb is not described as "HIPAA compliant." Only the U.S. HHS Office for Civil Rights can determine HIPAA compliance, and Blabb has not undergone an external HIPAA audit. Because speech recognition and AI processing run entirely on your device and we never receive, maintain, or transmit your protected health information, Blabb is generally not a Business Associate under HIPAA, so a Business Associate Agreement is not legally required. We do not offer a BAA. Organizations subject to HIPAA must conduct their own risk assessment and consult their compliance officer before using Blabb in a regulated setting. See our HIPAA & Security page for the full architectural analysis.
Speech recognition and AI processing run entirely on your device — there is no cloud path, and your audio and dictated text never leave your machine. See Section 4 for how local data is stored and protected.
14. Changes to This Policy
We may update this Privacy Policy from time to time. Changes will be reflected by updating the "Last Updated" date at the top of this document. We encourage you to review this Privacy Policy periodically.
Material changes to data collection practices will be communicated through the application.
15. Data Breach Notification
In the unlikely event of a personal data breach (e.g., a vulnerability that exposes locally stored data), we will notify affected users through the application and/or via email (if we have an email address). Given that all data is stored locally on your device, the risk of a breach affecting multiple users is extremely low.
16. Contact
For privacy questions or to exercise your rights (access, deletion, portability, objection):
- Email: support@blabb.io
We respond to verified requests within one month (GDPR Article 12(3)); in the U.S., within 45 days. Complex requests may be extended by a further two months, with notice.
17. Compliance Summary
Blabb is designed to align with the requirements of:
- Microsoft Store Policies (version 7.19, Section 10.5 — Personal Information)
- GDPR (EU General Data Protection Regulation, Articles 5, 6, 7, 13, 15-22)
- CCPA/CPRA (California) — Blabb does not meet any CCPA applicability threshold (>$25M revenue; buying/receiving/sharing/selling the PI of 50,000+ consumers, households, or devices; or 50%+ revenue from PI sales) and does not sell or share personal information. The app does collect PI on-device (transcription text; optional screen/typed text) but never transmits it off your device. Other US comprehensive-privacy laws (VA VCDPA, CO CPA, CT CTDPA, UT UCPA, and similar) are likewise threshold-gated; Blabb sits below them.
- HIPAA — Blabb is not "HIPAA compliant" and has not been externally audited; its local-only architecture is HIPAA-aligned, it is generally not a Business Associate (no PHI reaches us), and no BAA is offered. Organizations subject to HIPAA must conduct their own risk assessment before using Blabb in a regulated context.
- Australian Privacy Act 1988 (APPs) — Blabb is designed consistently with the Australian Privacy Principles. Nothing you dictate is collected by us, transmitted off your device, or used for direct marketing. There is one cross-border disclosure, and it is not about your dictation: subscribing and licence verification send your billing details and licence key to Polar Software Inc. in the United States, which is a disclosure under APP 8. Section 6.4 sets out exactly what is sent. Because all speech processing is on-device, obligations such as notifiable data breach reporting do not arise from our handling of your transcriptions — we never hold them.
*This privacy policy is based on transparency requirements under GDPR Article 13, Microsoft Store Policy 10.5, and industry best practices for privacy-first desktop applications.*