Data Security

MusicTempoFinder.com has three tempo detection modes. In all three, your data — whether tap timing, microphone audio, or an uploaded audio file — is processed entirely within your browser. Nothing is recorded. Nothing is stored. Nothing is transmitted to any server. Your music, your recordings, and your files never leave your device.

This page documents exactly how each mode handles data — step by step.


Mode 1 — Tap Tempo Data Handling

Tap tempo recording involves no audio capture of any kind. When you tap, the browser records the timestamp of each tap event using performance.now(). These timestamps exist only in the browser’s active JavaScript memory for the duration of your tapping session. The intervals calculated from them and the BPM result derived from those intervals are displayed on screen only.

  • No microphone is accessed
  • No audio is captured
  • No data is stored in cookies, localStorage, or any persistent storage
  • Tap timing data is cleared when the session resets or the tab is closed


Mode 2 — Microphone Audio Pipeline

The microphone BPM detection mode uses your microphone as a tempo analysis instrument. The entire pipeline occurs within your browser with no network activity at any stage.

Stage 1 — Permission prompt The browser displays a microphone permission prompt before any audio is accessed. MusicTempoFinder.com cannot access your microphone without your explicit approval. If you decline, no audio is accessed and the tool does not run.

Stage 2 — Local audio stream Once permission is granted, the browser opens a live MediaStream via getUserMedia(). This stream exists only in your browser’s active memory. It is not routed to any external server, not logged by any analytics tool, and not written to any persistent storage.

Stage 3 — Web Audio API processing The microphone stream connects to a MediaStreamAudioSourceNode within an AudioContext, then feeds into an AnalyserNode for onset detection and tempo analysis. All processing occurs within the browser’s local audio graph. No audio data exits this graph.

Stage 4 — BPM result display The BPM result — a number — is displayed on screen. The audio frames that produced it are not retained. No recording, no waveform snapshot, and no spectral data is stored or transmitted.

Stage 5 — Session clear When you close or reload the tab, the MediaStream is closed, the AudioContext is suspended, and all in-memory audio buffers are released. There is no persistent copy of your microphone audio anywhere after this point.


Mode 3 — File Upload Pipeline

The file upload mode is specifically designed to ensure that your audio files — including unreleased recordings, demos, and commercially sensitive material — never travel over the internet.

Stage 1 — Local file reading When you select a file, the browser reads it locally using the FileReader API:

FileReader → readAsArrayBuffer(file)

The file is read into an ArrayBuffer in the browser’s memory only. It is never uploaded to MusicTempoFinder.com’s server or any third-party server. The file name is used for display purposes only and is not transmitted.

Stage 2 — Local audio decoding The ArrayBuffer is decoded into an AudioBuffer using the Web Audio API:

AudioContext.decodeAudioData(arrayBuffer)

This decoding occurs entirely within the browser. The decoded audio data exists only in the browser’s active memory.

Stage 3 — Offline analysis The decoded AudioBuffer is analysed using an OfflineAudioContext — a processing environment that runs without audio output and faster than real time. The onset detection and autocorrelation pipeline runs locally against the decoded audio data.

Stage 4 — BPM result display The result is displayed on screen. The audio data that produced it is not retained beyond the active analysis session.

Stage 5 — Session clear When you close or reload the tab, the ArrayBuffer, AudioBuffer, and all intermediate analysis data are released from memory. The uploaded file never persists beyond the active browser session.


What This Site Never Does With Your Audio or Files

  • Never records microphone audio to any file or storage medium
  • Never uploads audio files to any server — local reading only via FileReader API
  • Never transmits audio data over the internet in any form
  • Never shares audio data with Google Analytics, advertising networks, or any third-party service
  • Never stores audio data in cookies, localStorage, sessionStorage, or IndexedDB
  • Never retains audio data or uploaded files after the browser session ends
  • Never uses audio data for any purpose other than calculating and displaying the BPM result on screen
  • Never accesses the microphone without displaying the browser permission prompt first


Why Unreleased Material Is Safe to Upload

For music producers and audio professionals who work with unreleased recordings, pre-release masters, or commercially sensitive material: the local-only file processing architecture means your material is genuinely protected. There is no server endpoint that receives uploaded audio. There is no cloud processing step. The file analysis happens entirely within your browser’s local memory and is cleared when the session ends.

This is not a policy statement about data handling — it is a description of how the tool is architected. There is no mechanism by which your file could be transmitted even if something went wrong.


Advertising and Analytics Are Separate From Your Data

MusicTempoFinder.com does not currently run advertising. If basic analytics tools are present on this site, they operate entirely separately from the Web Audio API and FileReader pipelines. Analytics collect anonymous page-level data — page views, browser type, approximate region — through standard HTTP request metadata. They have no access to microphone audio, no access to uploaded files, and no ability to interact with any audio data processed during a tempo analysis session.


HTTPS Encryption

All pages on MusicTempoFinder.com are served over HTTPS. All data exchanged between your browser and this site’s server — page content, scripts, and voluntary contact form submissions — is encrypted in transit. Audio data and uploaded files never travel over the network and therefore require no network-level encryption.


Cookies and Session Data

BPM results are displayed on screen during your session only. They are not written to cookies, not stored in localStorage, and not sent to any server. Closing or reloading the page clears all session data entirely. For a full explanation of what cookies this site uses, see the Cookie Policy.


Children’s Privacy

MusicTempoFinder.com does not knowingly collect personal data from children under the age of 13. The tools do not require account registration and do not request personal information from any user. Audio data is never transmitted or stored for any user. If you believe a child has submitted personal data through the contact form, contact Hurst at contact@musictempofinder.com and the data will be deleted promptly.


Reporting a Security Concern

If you identify a potential security vulnerability on MusicTempoFinder.com — including any behaviour suggesting audio data or uploaded files are being handled contrary to what is documented on this page — report it immediately via the Contact page with the subject line “Security Concern.” Hurst reviews all security reports personally within 48 hours.


Your Privacy Rights

Your rights regarding any personal data this site may hold are documented in full on the Privacy Policy and GDPR and CCPA pages.


Written by Hurst, founder of MusicTempoFinder.com. Last updated: June 2026.

Scroll to Top