Skip to content
Sign in

/privacy

Privacy, plainly.

The free labs run in your browser, and the audio stays on your device, with one exception: HearLab’s live captions (see section 01). HearLab Log is the one lab that shares something, and only when you link it with your hearing care practice and consent: measurements, never audio, to that practice (section 07). Paid accounts process a small amount of personal data through Stripe and Supabase. Here is exactly what happens with each, and your rights over it.

Controller: AudioLaunch (KVK 54871204), Eindhoven, Netherlands · contact privacy@audiolab.tools.

In-browser labs (on-device)

The labs on this site (MixLab, VoiceLab, HearLab, SignalLab, CueLab, SkillLab, Ψ Lab) run entirely inside your browser. Audio you analyze there is not uploaded to our servers.

When you open an audio file, it is decoded by your browser’s WebAudio API and analyzed as JavaScript on your own device. The file is never copied or transmitted, and is gone when you close the page. Live-microphone features (VoiceLab, HearLab, SkillLab) work the same way: processed in place, with the one HearLab exception below.

One exception with explicit notice: HearLab’s live-captions feature uses the browser’s built-in Web Speech API, which in some browsers, Chrome among them, sends the audio to an online speech service for transcription. Chrome 139 and later on desktop can keep it on the device when the page asks; the companion does not ask yet. The companion starts captions together with the level meter; if you prefer to keep audio strictly local, use HearLab’s scene recognition, which runs without speech recognition.

Accounts, payments & the data we store

When you buy Plus or Founder, or sign in to /account, we process a limited set of personal data server-side. This list is written from what the code actually stores, and a build check keeps it that way:

  • Email address: to create your account and send the magic sign-in link (legal basis: performance of a contract).
  • Payment & subscription data: your Stripe customer/subscription id, plan, and status. Card details are handled entirely by Stripe; we never see or store them (legal basis: contract + legal obligation for invoicing).
  • API key: we store only a SHA-256 hash of your key plus a short prefix, never the key itself, so you can call the API and MCP on any plan (including the free tier) (legal basis: contract).
  • Usage & analysis metadata: for each API/MCP call we record which tool you used, the audio’s duration, and a few headline measurements (integrated LUFS, true peak, loudness range, crest factor, stereo correlation, a content-type label and tags, and for a target check the target and the verdict) to power your usage limits and account stats. If you gave the file a name (by analysing a URL, or by saving a result from a browser lab) that name is stored alongside the numbers, because it is what makes your history readable. You decide whether we keep it. The workbench asks once, before you save anything: choose to anonymise and your file names are replaced with a stable code such as “take-4f2a91c8.wav”, the same code every time for the same file, so your history still groups, but meaningless to anyone else and not comparable between accounts. With that setting on, the name is not even sent to us; the server enforces the same rule as a backstop. The choice lives on your account, so it applies on every device you sign in from, and you can change it at any time. Files you upload through a signed link get a generated name instead, and your own name for them is never sent to us. In the Voice AI QC view you can save a run when you choose to: the measured numbers, the limits you judged them by, the verdict and a label of your own, never the audio. Its file name follows the same anonymise choice; you can delete a saved run at any time, and all of them go with your account (legal basis: contract + our legitimate interest in metering and abuse prevention).
  • The audio itself: when it contains personal data, such as a recorded voice, you are the controller of it and we process it for you under the data processing addendum. It is not kept. On a direct API call it is decoded, measured and discarded inside the request. A WAV file is decoded in memory; a compressed file (MP3, FLAC, M4A and so on) is first written to the function’s temporary scratch space, which is deleted as soon as decoding is done. On the upload path (/account “Quick analyze”, and the API’s signed-upload route) the file does land in EU-hosted storage for a moment, because a browser cannot stream it straight into the function. A sweep that runs every fifteen minutes removes every upload older than 45 minutes, so it is gone within the hour, analysed or not. It used to be deleted the instant the analysis read it; that changed on 22 September 2026 so a second question about the same file does not need a second upload. The seven in-browser labs send no audio to us.

We do not sell personal data and do not use it for advertising.

Processors we rely on
  • Stripe Payments Europe: payment processing & billing. (Ireland/EU; DPA in place.)
  • Supabase: authentication & account database, hosted in the EU (Frankfurt).
  • Vercel: website & API hosting/CDN and server request logs. Requests enter the network in Frankfurt, and the serverless functions that decode and measure uploaded audio run there too (region fra1, pinned in vercel.json). Vercel is a US company, so its role as processor still rests on the EU-US Data Privacy Framework and the standard contractual clauses, but the audio itself is not processed outside the EEA. The seven in-browser labs are unaffected: they compute on your device and send no audio to us.
  • PostHog: product analytics, on the EU-hosted instance, cookieless. See section 04.
  • GitHub: hosts the Psi Spectral VST download. Your IP reaches GitHub only if you download it. (US; DPF-certified.)

Each acts as a data processor under a data-processing agreement. Standard server-side request logs (IP, user-agent, referrer) may be retained briefly for security and abuse prevention; they are not joined to your account identity.

Analytics & cookies

We do not use Google Analytics, Meta Pixel, or cross-site tracking, and we set no advertising or tracking cookies. The only browser storage we use is functional, and all of it stays on your device: a theme preference, your sign-in session, what the labs remember for you, and two IndexedDB stores that carry a decoded clip into the workspace. The complete list (fourteen entries, each by its exact key name) is on the cookie & tracking policy, where a build check keeps it honest. It is deliberately kept in one place: a second summary here would be a second thing to keep in step, and this page used to name only four of them.

For product analytics we use PostHog on its EU-hosted instance (eu.i.posthog.com), configured with in-memory persistence: it sets no cookies and writes nothing to your device, so closing the tab ends the session. It records page views and interactions with the interface. While you are signed in we label those events with your account id, so we can see how the product is used by the people who have an account; that id is not your email address, and PostHog itself writes nothing to your device either way. It also captures JavaScript errors that happen in your browser, so we learn that something broke without you having to tell us. That is the error message and where in our code it happened, never a recording of your screen. One thing we keep ourselves: if the link you arrived with carries campaign tags (utm_source, utm_medium, utm_campaign, utm_content), we hold those four values in your tab’s session storage (al_utm) and add them to the analytics events of that tab, so we can tell which post or message a visit came from, also on later pages and when you sign up in that tab. They hold no identifier and are gone when you close the tab. Audio you analyse in the browser labs is never sent to PostHog. If we introduce a tool that requires consent, we will ask for it first and update this page.

The Android measurement apps use PostHog differently: opt-in, off by default, and with on-device storage for their anonymous stats rather than in-memory. See section 05.

The measurement apps (Android)

MicLab, LevelLab, RoomLab and NoiseLab are separate Android apps. Like the browser labs, they measure entirely on your device: the audio they record is analysed in place and discarded after measuring, and your recordings, your saved measurements and the names you give them never leave your phone.

They ship with one optional setting, “Share anonymous measurement stats”, which is off by default. Nothing is sent unless you switch it on. When you do, then for each measurement the app sends its numeric results (loudness, reverb, scores and the like) together with your device model, Android version, app version and language, so we can tune the apps to real devices. It is tied to a random identifier generated on your device, not to your name, and PostHog is told not to look up a location from your IP address. We never send your recordings, your file or measurement names, or your location.

The legal basis is your consent: the switch is off until you give it, and turning it off withdraws it and stops all collection at once. The processor is PostHog (section 03), on its EU-hosted instance, under a data-processing agreement. These are anonymous product statistics, not linked to any account, and are kept no longer than twelve months. The rights in section 06 apply. Once the switch has been on, the app shows the random ID under Settings, Analytics; email it to privacy@audiolab.tools and we delete every record stored under it at PostHog. The switch itself stops any further collection immediately.

SignalLab, TuneLab and SkillLab (the newer Android apps) and the earlier HearLab app (no longer in Google Play) go one step further: they contain no analytics at all. There is no stats switch and no analytics library in the app, so there is nothing to send. Tones, hearing checks, tuning and ear training happen on the device, and results stay there unless you export a PDF yourself.

The buttons on this site that open an app in Google Play carry a campaign tag (utm_source=site, with the page name), so that Play Console can show us which page an install started on. The tag holds no personal data and is not stored by us; once you are in Google Play, Google’s own policy applies.

Your rights, retention & deletion

Under the GDPR you have the right to access, rectify, export, restrict, and erase your personal data, and to lodge a complaint with the Dutch DPA (Autoriteit Persoonsgegevens).

  • Erasure: delete your account and all associated data yourself from /account ("Delete account & data"), or email privacy@audiolab.tools. For the Android apps, email the same address with the random ID shown under Settings, Analytics in the app (section 05).
  • Access / export: request a copy of your data at the same address; we respond within 30 days.
  • Retention: account data is kept while your account is active. Invoicing records are retained as required by Dutch tax law (7 years). Everything else is deleted on account erasure.
HearLab specifically

This section is about the HearLab lab on this website. The earlier Android app called HearLab was a separate hearing check, no longer in Google Play; it is covered by section 05 and contains no analytics at all.

HearLab is a non-medical companion. It does not diagnose, treat, or replace audiological care, and it does not collect medical information. What it captures (the captions of what was said and the check-ins you write) is kept on your own device in localStorage (captions in hearlab-session, restored if you return within seven days; check-ins in hearlab-log, until you discard them), so a session survives a reload. It is never sent to us. Clearing it is up to you: use the lab’s own reset, or your browser’s “clear site data”. Until 22 August 2026 this paragraph said a refresh cleared those notes. It did not. They were kept, exactly as described here. Either way, those notes stayed on your device, but the description was wrong and we would rather say so than quietly fix it. Check-ins from that earlier version are still on your device; HearLab Log shows them (they are never shared) and its “Clear this device” removes them.

HearLab Log (/hearlab) works differently, and for it AudioLab.tools is not the controller. When your hearing care practice gives you a code and you give explicit consent in the app, each moment you log after that is sent to your practice: the time and your local hour, the situation you pick, your rating, what you tick that you notice, what was on each ear (hearing aid, CI or other device, on or off, and the program if you give it), your note, and measurements of the sound around you (level, when someone was speaking and how loud, the kind and level of the background, how well speech stands out per phrase, the loudest moment, room, a prominent tone, the spectrum, how far the sound stands out above the noise per half second, a coarse spectrogram (24 bands per half second, no phase), A-weighted levels, the pitch of the voices, how far speech rises above the pauses per frequency band, and the level per 100 ms). The sound itself is measured on your phone and then discarded. No audio, no location and no name or email address is sent; your practice knows you by a pseudonym it chooses.

Your practice is the controller. AudioLaunch (AudioLab.tools) stores the data on the practice’s behalf as processor, under a data processing agreement, in the EU (Supabase, Frankfurt; the API runs on Vercel in Frankfurt) and uses it for nothing else. The legal basis is your explicit consent (Article 9(2)(a) GDPR); we record which version of the consent text you agreed to and when. Moments are deleted automatically after the retention period your practice chose (6, 12 or 24 months). You can withdraw in the app at any time: sharing stops and your shared moments are deleted at once. The record that you gave and withdrew consent is kept, without any moment in it, as proof. For a copy or deletion, ask your practice, or email privacy@audiolab.tools and we will help your practice handle it. Professionals sign in to the practice dashboard with their email address, as for any account on this site (section 02). No analytics or advertising scripts run on the HearLab pages.

Last updated

18 October 2026: the Voice AI QC view can save a run when you ask it to (numbers, limits, verdict and a label, never audio); added under usage and analysis metadata. What we process otherwise, why and for how long has not changed.

12 October 2026: the plan we called Pro is now called Plus, so that Pro only means the one-time purchase in the Android apps. Section 02 now says Plus. What we process, why and for how long has not changed. The terms and this policy share one version number (av-2026-10-12), so you may be asked to accept them again.

12 October 2026: two statements did not match the code and are corrected. First, a compressed file (MP3, FLAC, M4A) sent straight to the API is written to the function’s temporary scratch space while it is decoded and deleted right after; this page said nothing was written to disk. A WAV file stays in memory. Second, the sweep of uploaded files ran once an hour and removed a file only when it was an hour old, so one could survive almost two hours, while this page said within the hour. The sweep now runs every fifteen minutes and removes uploads older than 45 minutes, so a file is gone within the hour. The list of measurements we keep per call was also incomplete and now names them.

10 October 2026: the site now follows your device for light or dark and your browser for language, and remembers a choice you make in localStorage (audiolab-theme, audiolab-lang, and audiolab-prefs-hint for a one-time note about those buttons; see /cookies). The buttons that open an app in Google Play now carry a campaign tag (section 05). The Pro descriptions no longer say that a client or an authority accepts a report, and the app pages no longer say that the apps follow ISO 3382: a phone and a clap are a quick check.

7 October 2026: corrected a description that we could not show from the code. The Android apps tell PostHog not to look up a location from your IP address; we no longer say that PostHog discards the address itself. Section 05 also now says that the earlier HearLab app is no longer in Google Play, and that SkillLab (Android) has no analytics either.

22 September 2026: a file you upload is now swept within the hour instead of deleted the instant its analysis reads it. It still lands in EU storage, is still readable only by the key that uploaded it, and is still never used for anything else. The reason is plain: a tool that cannot send us a file at all (a Custom GPT sends JSON, never a file) has to upload one first, and asking a second question about the same recording meant uploading it a second time. This paragraph said “deleted the instant” for a few hours after that change went live; it was wrong and we would rather date it than quietly edit it.

20 September 2026: added the data processing addendum for audio you send to the API or the MCP server, and you now accept the terms and this policy explicitly when you create an account or buy a plan.

19 September 2026: added HearLab Log (section 07). It is the first lab that shares something: when you link it with your hearing care practice and consent, the moments you log (measurements, never audio) go to that practice, stored in the EU. The practice is the controller, we are its processor.

22 August 2026: two changes you can check yourself. File names are now yours to keep or hide. The workbench asks before your first save, the answer lives on your account, and with it on the name never reaches us. And the functions that measure your audio now run in Frankfurt instead of Washington DC: request any page and read the X-Vercel-Id header, the middle field says fra1. Storage was already in the EU.

2 September 2026: added SignalLab, HearLab and TuneLab (Android). They carry no analytics at all, not even the optional switch the other four have; see section 05.

23 August 2026: NoiseLab (sound level meter) joined the Android apps; same rules as the other three, see section 05.

22 August 2026: added the Android measurement apps (MicLab, LevelLab, RoomLab). They are on-device by default, with one optional, off-by-default anonymous measurement-stats switch (PostHog, EU). See section 05.

22 August 2026: the Android apps now show the random analytics ID under Settings, Analytics, so you can email it to privacy@audiolab.tools and have the stats stored under it deleted.

22 August 2026: corrected three descriptions that did not match the code: the filename you give a file is stored next to the numbers, uploaded audio does briefly land in EU storage before it is read and deleted, and HearLab notes survive a refresh instead of being cleared by one.

3 July 2026: clarified what we store for API/MCP usage: per-call metadata (tool, duration, LUFS, true-peak) and never your audio.

2 July 2026: added accounts, payments, processors, and data-subject rights now that paid accounts are live.

The on-device labs are auditable in your browser’s devtools; nothing is obfuscated. See also our Terms of Service.