Telemetry
Hyprcore collects a small amount of error and usage telemetry to help us spot bugs and prioritize fixes. You control how much.
Three modes
Settings → Advanced → Telemetry has three options:
Mode | What's sent |
|---|---|
Off | Nothing. No errors, no logs, no usage events, no product analytics. Hyprcore never contacts our telemetry servers. |
Errors only (default) | Crashes and explicit error events with redacted context, plus product analytics—event names and small non-content property bags like "user started a dictation" or "opened Settings." |
Full | Everything in Errors only, plus debug logs and performance timings (e.g., "model load took 2.3s"). |
Default is Errors only.
Note: Product analytics ride along in the default Errors only mode. They only ever carry event names and structured, non-PII properties—never your audio, transcripts, or any content. Only Off disables them.
What's collected
In Errors-only and Full modes:
Crash stack traces. When Hyprcore crashes, we get a redacted stack trace via Sentry.
Explicit error events. Things like "model failed to load", "audio device disconnected", "sync request failed".
Device shape. OS version, CPU architecture, GPU availability, app version. Used to spot platform-specific bugs.
Product analytics. Event names and small structured property bags—page views, button clicks, dictation starts—sent to Usermaven with an anonymous install ID. No content, ever.
In Full mode, additionally:
Performance timings. Model load duration, transcription duration. Helps us spot regressions.
Logs. App-level debug logs, redacted of any user content.
What's never collected
In any mode, including Full:
Audio. Hyprcore never sends a single byte of audio to telemetry.
Transcripts, notes, or any user content. Not the words you said, not the things you wrote.
API keys, passwords, credentials. Stored in macOS Keychain, never logged.
File paths to user content. Logged paths are redacted to filenames only.
Personal identifiers. No name, no email, no IP address (Sentry strips IPs).
If you sign in, your account email is associated with your Hyprcore Cloud usage—but that's a separate system from telemetry, and it's only there because we have to bill you.
How redaction works
Before any error event leaves your Mac, it passes through telemetry/redact.rs in the Rust backend. The redactor:
Replaces user-content paths with their filename.
Strips API keys matching common patterns.
Strips email addresses.
Strips home directory paths.
Redaction runs before any payload leaves your Mac.
Where it goes
Errors: Sentry (sentry.io). Encrypted in transit, retained 90 days.
Product analytics: Usermaven. Event names and non-content properties keyed to an anonymous install ID.
Logs (Full mode only): Axiom (axiom.co). Encrypted in transit, retained 30 days.
All three services are GDPR-compliant. We don't share telemetry data with third parties.
Turn it off
Settings → Advanced → Telemetry → Off.
When set to Off, the telemetry code paths are skipped entirely—no network requests, no buffered events. You can verify this with Little Snitch or any network-monitoring tool.
Frontend errors
Errors that originate in Hyprcore's React UI (rendering bugs, broken state) flow back to the Rust backend via the report_frontend_error Tauri command, then through the same redactor and the same telemetry path. They respect the same Off / Errors-only / Full setting.
Was this article helpful?

