Privacy policy
This policy explains how TypeNot handles your data. It has been written to reflect how the product actually works today. It supersedes version 1.0.0. Where our previous policy described a cloud speech-to-text architecture, the shipping product transcribes your speech on your own device — the description below is the accurate one.
See also our Terms of Service and Acceptable Use Policy.
1. Who we are (controller)
The data controller is Dev Intensifies SLU, a Spanish Sociedad Limitada Unipersonal, CIF B70709647, registered at Carretera de Tiana, 193, 1º 2ª, 08390 Montgat, Barcelona, Spain. We trade as TypeNot (the application is named "NoType" internally). This policy covers the TypeNot desktop apps (macOS, Windows), the mobile apps (iOS, Android), the backend at api.typenot.app, and the marketing website typenot.app.
For any privacy question, or to exercise your rights, contact support@typenot.app. We have assessed our activities under Article 37 GDPR and concluded that we are not required to appoint a statutory Data Protection Officer, because our core activity is not large-scale processing of special-category data and does not involve regular, systematic monitoring of individuals; the address above reaches the person responsible for data protection. We keep this assessment under review.
Our lead supervisory authority is the Spanish Agencia Española de Protección de Datos (AEPD), aepd.es. You may lodge a complaint with the AEPD or with the supervisory authority of your country of residence or workplace at any time. UK users may complain to the Information Commissioner's Office (ICO).
2. What we collect
The short version: your voice is the most personal data there is, so the product is built to touch as little of it as possible. On desktop, your dictation audio is transcribed on your device and never leaves it; only the resulting text is processed further. The table below lists everything we collect.
| Category | Examples | Source |
|---|---|---|
| Account data | Email address, display name, hashed password (bcrypt), role, email-verified flag, language preference, optional avatar image | You, at sign-up; or your Google / Apple account (verified email + name) if you use social sign-in |
| Dictation audio | The speech you dictate | You. On desktop it is transcribed on your device and is not sent to us or stored on our servers. See Section 4. |
| Transcript & derived text | Raw transcript, cleaned-up text, translations, and the tone / preferred-terms (dictionary) settings you apply to a given dictation | Generated from your dictation. The searchable library of your dictations is stored on your device, not on our servers. |
| Assistant & document data (optional feature) | Files you upload to the AI assistant / knowledge feature, the text extracted from them, vector embeddings, and your prompts | You, only if you use the assistant/documents feature. Stored on our servers (database + object storage). |
| Billing data | Subscription status, plan, product, store, renewal state, word-usage meter. Card / payment details are handled entirely by our payment processors and never reach our servers. | RevenueCat / Stripe / the app stores |
| Usage & diagnostics metadata | Anonymous product-analytics events (feature used, platform, app version, locale, and a small fixed set of non-identifying flags), server-side usage counts (word totals, timestamps), and per-request audit metadata (duration, byte counts, provider label, model version, latency, a session identifier). This metadata does not include your audio or transcript text. | The apps and the server |
| Crash & error reports | Stack traces, error messages, and log breadcrumbs (which may include a pseudonymous user identifier and any text present in an error) | The apps and server, via Sentry |
| Consent & legal records | Which policy version you accepted, when, and — as legal proof — the IP address and user-agent of the request | The apps, when you give or withdraw consent |
| Support & feedback | The free-text feedback you submit and your email if you write to support | You. Feedback may be synced to our private issue tracker (GitHub). See Section 6. |
What is required. An email address, a password, and a display name are required to create an account and to provide the Service — without them we cannot create your account. Everything else, including whether you dictate at all and whether you use the optional assistant feature, is voluntary and under your control.
3. Why we process it (legal bases, GDPR Art. 6)
| Purpose | Data | Legal basis |
|---|---|---|
| Providing dictation, on-device transcription, AI cleanup, translation, library and account features | Audio (on device), transcript text, account data | Performance of a contract, Art. 6(1)(b) |
| Sending your dictation content (text) to an AI provider for cleanup / translation | Transcript text, tone/preferred-terms settings, language pair | Performance of a contract, Art. 6(1)(b); and, where that text may reveal special categories, your explicit consent, Art. 9(2)(a) (see 3.1) |
| Optional AI assistant / documents feature | Uploaded files, extracted text, embeddings, prompts | Performance of a contract, Art. 6(1)(b) |
| Billing and subscription management | Billing data, account data | Contract, Art. 6(1)(b); legal obligation, Art. 6(1)(c), for tax/accounting records |
| Service reliability, security, abuse prevention, crash/error diagnostics | Usage & diagnostics metadata, crash reports | Legitimate interest, Art. 6(1)(f), in running a secure and reliable service |
| Anonymous product analytics | Cookieless, allow-listed usage events (no account identifier on the analytics leg) | Legitimate interest, Art. 6(1)(f) — cookieless and anonymous; not linked to your identity. You may object (Art. 21). See Section 9. |
| Proof of consent and legal-document acceptance | Consent records incl. IP + user-agent | Legal obligation / legitimate interest, Art. 6(1)(c)/(f), to demonstrate compliance |
| Optional AI-pipeline tracing that includes transcript content | Transcript text in traces | Consent, Art. 6(1)(a) — off unless you opt in (see Section 9) |
| Transactional email (verification, reset, invitations) | Email address | Performance of a contract, Art. 6(1)(b) |
| Responding to legal requests | As strictly required | Legal obligation, Art. 6(1)(c) |
No automated decisions about you. We do not carry out automated decision-making that produces legal or similarly significant effects concerning you within the meaning of Art. 22 GDPR. AI cleanup and translation only reformat or translate the text you dictate; they do not make decisions about you.
Marketing. We use email only for transactional and service messages. If we ever send marketing or newsletter email, we will do so only with your separate, freely given consent, which you can withdraw at any time.
3.1 Special-category data (GDPR Art. 9)
We do not ask for, and do not want, special-category data (health, religion, political views, sexual orientation, etc.). However, because you control what you dictate, such information could appear in your speech. On desktop your audio is transcribed on your device, so that audio never reaches us. The resulting text may be sent to our AI cleanup/translation provider to produce your result. Where that text may reveal special-category data, our lawful basis is your explicit consent under Art. 9(2)(a), which we ask for before transcript text is sent to a third-party AI provider and which you can withdraw at any time (after which cleanup runs only to the extent it can without that provider, or not at all). You should avoid dictating special-category information you do not want processed by a third-party AI provider.
4. How your audio is handled
On desktop (macOS, Windows), transcription happens entirely on your device. Your microphone audio is held only in memory and fed to an on-device speech-to-text engine (whisper.cpp). It is never written to disk, never uploaded, and never stored on our servers. When the utterance is transcribed, the audio in memory is discarded. We surface a short collection notice at the microphone-permission / first-dictation step so you see how your voice is handled at the point you first use it.
To make on-device transcription work, the desktop app downloads a speech model (roughly 550 MB) over HTTPS from Hugging Face (huggingface.co) the first time you dictate, and pre-fetches it at start-up. That download reveals your IP address and request timing to Hugging Face and its CDN, but sends no audio or text. The model is cached on your device.
No crash recovery for in-progress recordings. Because audio is processed transiently and is never written to a durable on-disk archive, if the app or your device crashes while you are recording, that recording's audio can be lost and cannot be recovered. This is a deliberate privacy trade-off.
Mobile (iOS, Android). On-device transcription is not yet available on mobile; where it is unavailable the app declines to transcribe rather than silently sending your audio to the cloud. In no case does your audio leave your mobile device for transcription.
The shipping apps do not offer a cloud speech-to-text option. Our backend contains a relay to a US speech-to-text provider (Deepgram) for a possible future "cloud mode", but the current apps transcribe on-device only and do not route audio to it. If we ever enable cloud transcription, we would update this policy, obtain any consent required, and tell you before turning it on; even then, your audio would be streamed to that provider only to produce text and would not be stored on our servers (we would keep only a metadata audit record — a byte count and destination — never the audio), under zero-retention terms.
5. Processors and sub-processors
We use the processors below. Each acts on our instructions under a written data-processing agreement. Where an AI provider processes your text, we require by contract that it process your content only to return your result — a zero-data-retention (ZDR) arrangement in which it does not retain your content or train on it — and our backend refuses to start unless that provider's zero-retention flag is set. These protections are only as strong as the agreement in place with each provider; we do not control their infrastructure.
For US privacy laws, every recipient of personal information listed below is engaged as a service provider / contractor (or equivalent), bound by contract to process personal information only on our behalf and for the disclosed purposes, and prohibited from selling it, retaining it, or using it for their own purposes.
| Processor | Purpose | Data shared | Location / transfer basis |
|---|---|---|---|
| Cerebras (US) | AI transcript cleanup and translation (sole provider) | Transcript text, your tone/preferred-terms settings, language pair — no audio | US — SCCs; zero-retention arrangement |
| Google — Gemini API (US) | Optional AI assistant / documents feature: chat, structured output, embeddings | The text and files you submit to that feature; embeddings — only when the feature is enabled | US/EU — SCCs |
| Deepgram (US) | Cloud speech-to-text — built but not offered in the shipping apps (see Section 4) | None today. Would receive audio only if we enable cloud mode. | US — SCCs; zero-retention arrangement |
| RevenueCat (US) + Stripe (US/EU) + Apple / Google IAP | Subscriptions and payment capture | Our internal user identifier and entitlement/subscription state. Card data is handled by these processors and never reaches us. | US/EU — SCCs |
| Railway (US/EU) | Application and database hosting (api.typenot.app); hosts our self-hosted analytics instance | Account data, assistant/document data, server-side metadata | EU region where available — SCCs for any US processing |
| Cloudflare (global) | DNS, CDN, and the typenot.app website (Cloudflare Worker) | Technical traffic data | Global — SCCs |
| Amazon S3 / MinIO (object storage) | Storage of uploaded assistant documents and avatar images | Uploaded file bytes, avatar images (server-side encrypted, AES-256) | Provider/region dependent — SCCs where applicable |
| Brevo / Sendinblue (EU) | Transactional email (verification, password reset, invitations) | Recipient email address, message subject and body | EU — no international transfer |
| Sentry (EU region) | Crash and error monitoring (desktop app + server) | Stack traces, error messages, breadcrumbs (may include a pseudonymous user id and incidental text) | EU (Germany) for our project — DPA |
| Hugging Face (US) | Serves the on-device speech model download | Outbound request metadata only (IP address, model path, timing) — no audio or text | US — SCCs |
| GitHub / Microsoft (US) | Internal triage of user feedback (feedback becomes a private issue) | Your verbatim feedback text and a pseudonymous identifier — only when feedback sync is enabled | US — SCCs |
| Umami (self-hosted on Railway) | Cookieless product and website analytics | Allow-listed event names and non-identifying fields; the account identifier is stripped before events reach Umami | Self-hosted on our infrastructure (Railway) |
| Langfuse (self-hosted, EU) | AI-pipeline observability for cleanup/translation | Pipeline metadata (session/user id, model, latency, cost) always; transcript content only if you opt in to content tracing | Self-hosted on our EU infrastructure — no third-party cloud transfer |
We do not sell your personal data and we do not share it with advertisers. We disclose data to authorities only when legally required. If a processor's role or identity changes materially we will update this list.
6. Feedback and support
When you submit in-app feedback, the text is stored on our server and may be synced into a private issue tracker (GitHub) for triage, alongside a pseudonymous identifier — your raw email is not sent to the tracker. Please do not include sensitive personal information in feedback; whatever you type is copied as written.
7. International transfers
Some processors are located outside the EEA/UK (chiefly the United States). For those transfers we rely on the European Commission's Standard Contractual Clauses (SCCs), supported by a transfer-impact assessment, and — only where the specific recipient is currently certified — the EU-US Data Privacy Framework (DPF). For UK users, the UK International Data Transfer Addendum to the SCCs applies. Where a provider is EU-hosted (for example our transactional-email provider), no international transfer takes place. We keep EU-region hosting where our providers offer it. You can request details of the safeguards for a specific transfer at support@typenot.app.
8. Retention
| Data | Retention |
|---|---|
| Dictation audio | Not stored. Held in memory only during transcription, then discarded. |
| Your dictation library (transcripts, notes) | Stored on your device until you delete it; not retained on our servers. |
| Transcript text sent for cleanup/translation | Processed and returned; not retained by us and, under our zero-retention arrangement, not retained by the provider. |
| Per-request audit metadata (no content) | Deleted after 45 days. |
| Server-side usage / word-meter records | Deleted after 90 days. |
| Account data | Kept while your account exists. On a verified deletion request we erase or irreversibly anonymise the account data we hold, within one month, except records we must keep by law (e.g. invoices for tax, typically 6 years in Spain). See Section 10 for how deletion is carried out. |
| Assistant documents, embeddings, avatars (object storage) | Kept until you delete them; also removed when we process your account deletion request. |
| Consent records (incl. IP + user-agent) | Kept as legal evidence of compliance; anonymised rather than deleted on account closure. |
| Crash/error reports (Sentry) | Retained by Sentry for approximately 90 days, then deleted. |
| Analytics events (Umami) | Retained only as long as needed for aggregate product statistics; the events carry no account identifier. |
| Transcript content in AI-pipeline traces (only if you opt in) | Retained in our self-hosted Langfuse for 90 days, then deleted; turn it off to stop new capture. |
9. Analytics and cookies
We want to be accurate here, because our previous policy was not. The typenot.app website and the apps use Umami, a privacy-focused, cookieless analytics tool that we self-host. It sets no advertising cookies and does not track you across other sites.
- In-app product analytics is on by default and is anonymous. A fixed, allow-listed set of events (for example: app opened, dictation started/completed), together with a small set of non-identifying fields such as platform and app version, is sent to our self-hosted Umami. A strict allow-list prevents any transcript, audio, email, or free-text from ever being included, and the analytics leg carries no account identifier — the events are anonymous and are not linked to your identity. Because the analytics are anonymous we rely on our legitimate interest (Art. 6(1)(f)) rather than consent, so there is no in-app analytics toggle; you can object at any time by emailing support@typenot.app.
- The website loads the same cookieless Umami script to count page views and downloads. No third-party advertising or cross-site trackers are used.
- Transcript-content AI tracing is opt-in. Detailed traces that would include your transcript text are disabled by default and are only captured if you explicitly turn on content tracing (which you can turn off again at any time).
We do not sell or share personal information, so no opt-out is needed to stop that; where we receive an opt-out preference signal such as Global Privacy Control (GPC), we treat it consistently with our no-sale / no-share posture.
10. Your rights (GDPR / UK GDPR)
If you are in the EEA or UK, you have the right to:
- Access your data (Art. 15) and receive a portable copy of the data we hold on our servers (Art. 20);
- Rectify inaccurate data (Art. 16) — you can edit your profile in the app;
- Erase your data and account (Art. 17);
- Restrict processing (Art. 18) and object to processing based on legitimate interest, such as product analytics, security and diagnostics (Art. 21);
- Withdraw consent at any time for anything based on consent (for example the Art. 9 consent to send special-category dictation text to an AI provider, or content tracing), without affecting processing already carried out;
- Complain to a supervisory authority — in Spain the AEPD (aepd.es), or the authority where you live or work.
How to exercise them. You can edit your profile directly in the app. For access, portability, erasure, restriction or objection, email support@typenot.app; a member of our team fulfils these requests. We respond within one month, as required by law (extendable by two further months for complex requests, with notice), and we verify the request against your account before acting. When you ask us to delete your account, we erase or irreversibly anonymise the personal data we hold about you on our servers — including account, assistant/document, usage and billing data — except records we must keep by law. Because your dictation library lives on your device, you control it directly by deleting entries or the app; a server-side copy cannot include content we never receive.
11. United States privacy rights
This section applies to residents of California and, where equivalent rights exist, of other US states (including Virginia, Colorado, Connecticut and Utah). Terms such as "personal information", "sell", and "share" have the meanings given in the applicable state law.
11.1 Categories collected, purposes, recipients and retention
| CCPA category | Examples | Purpose | Disclosed to | Retention |
|---|---|---|---|---|
| Identifiers | Email, name, pseudonymous user id; IP address and user-agent (in consent records) | Account, security, proof of consent | Hosting, email, error-monitoring providers | While account exists; consent records anonymised on closure |
| Commercial information | Subscription and entitlement state, usage meter | Billing | RevenueCat / Stripe / stores | Usage 90 days; entitlement while account exists |
| Internet / network activity | Anonymous analytics events, diagnostics, audit metadata | Reliability, security, product analytics | Umami (self-hosted), Sentry | Audit 45 days; analytics as needed for aggregates |
| Audio / electronic / sensory information | Dictation voice input | Produce your text | No one — transcribed on your device | Not stored |
| Sensitive personal information | Contents of your dictations and uploads (may reveal sensitive topics) | Produce your text; assistant feature | AI cleanup/translation and (optional) assistant providers, as service providers | Not retained by us; provider under zero-retention terms |
| Other content you submit | Feedback free-text | Support and triage | GitHub (private issue) | Until resolved / on request |
11.2 No sale or sharing
We do not sell your personal information, and we do not share it for cross-context behavioral advertising, as those terms are defined under the CCPA/CPRA. We have not done so in the preceding 12 months, including for consumers under 16. Every recipient of personal information is bound by contract to act only as our service provider / contractor.
11.3 Sensitive personal information
Voice input and the content of what you dictate may constitute sensitive personal information. We use it only to provide the service you request (produce your text) and for security — never to infer characteristics about you or for advertising. The AI providers that receive your transcript text are engaged as service providers / contractors and are contractually restricted from using it for their own purposes. You may nonetheless direct us to limit the use of your sensitive personal information by emailing support@typenot.app, and we will honor that request.
11.4 Your rights and how to exercise them
- Know / access the personal information we hold about you;
- Delete it, subject to legal exceptions;
- Correct inaccurate personal information;
- Opt out of any sale or sharing (we do neither) and limit use of sensitive personal information;
- Non-discrimination — we will not deny service, charge a different price, or provide a different quality of service because you exercised a right.
We do not engage in profiling in furtherance of decisions that produce legal or similarly significant effects concerning you.
Submit a request by emailing support@typenot.app. We confirm receipt within 10 business days and respond within 45 days, extendable by a further 45 days with notice. We verify your request against your account. You may use an authorized agent, with proof of authorization. Appeals: if we deny your request, you may appeal by replying to our decision or emailing us; we will respond to the appeal within 45 days (60 days in Colorado), and if we deny the appeal we will provide a way to contact your state Attorney General. California's "Shine the Light" law (Civil Code §1798.83): we do not disclose personal information to third parties for their own direct marketing.
11.5 Health data and biometrics
We do not create, derive, or store voiceprints or other biometric identifiers; your audio is transcribed on your device and discarded. If you dictate health-related information, the resulting text may be sent to an AI provider for cleanup/translation as described above — please do not dictate health data you do not want processed by a third-party AI provider. This addresses, among others, Washington's My Health My Data Act and state biometric statutes (e.g. Illinois BIPA, Texas CUBI).
12. Security
Data is encrypted in transit (TLS) and, on our servers, at rest. Passwords are stored only as bcrypt hashes. Authentication tokens on your device are held in encrypted storage. AI-provider API keys never leave our servers — the apps never see them — and access to production systems is restricted and logged. On desktop, your audio never leaves your device at all, which is the strongest protection we can offer for it. No system is perfectly secure; if a breach affects your personal data we will notify you and the relevant authority as required by GDPR Arts. 33–34.
13. Children
TypeNot is not directed to children. You must be at least 16 years old to use the Service, which you confirm when you accept our terms at sign-up. Some EU member states set the age of digital consent lower (it ranges from 13 to 16; in Spain it is 14) — where a lower statutory age applies to you, that age governs your ability to consent. We do not collect birth dates, so age is self-declared, and we do not knowingly collect data from children below the applicable age. If we learn that a user is under 13 (or the applicable minimum), we will delete their data promptly. If you believe a child has created an account, contact us and we will delete it.
14. Changes to this policy
We will update this policy as the product evolves and will notify you of material changes by email or in the app before they take effect. The version and date at the top reflect the current edition. We keep each localized version accurate and materially equivalent to the English text; if any conflict arises for you, the version in your own language governs for you.
15. Contact
Dev Intensifies SLU · CIF B70709647 · Carretera de Tiana, 193, 1º 2ª, 08390 Montgat, Barcelona, Spain · support@typenot.app
Related documents: Privacy Policy · Terms of Service · Acceptable Use Policy.