Draft for review · numbers from development runs, see each row

Performance

How fast is a DJ app in a browser?

Fast enough to open a 2,100-track library in 88 ms and to draw a four-hour set at 60 frames a second. Here is every number we have measured, how we measured it, and what we have not measured yet.

88 msto open a library of 2,100 real tracks
0 of 600frames dropped while panning a 40-track set of 3 h 49 min
91 msfrom Play to the first sound
500×real time: the speed at which the engine mixes your set
< 2 sto analyze a track: beat grid, BPM, key, and energy
1.8%of one CPU core for two live decks in Perform mode

Why it is fast

Mixpoint is not a web page that waits on a server. It runs on your computer, and each heavy job has its own thread, so the screen never waits for the audio and the audio never waits for the screen.

Your librarySQLite, compiled to WebAssembly, in the browser's private file storage. Queries run in their own thread.
The timelineDrawn on its own thread with OffscreenCanvas, so a pan or zoom never blocks playback.
DecodingYour tracks are decoded by the browser's built-in codecs (WebCodecs), the same ones that play video.
The mixRendered 10 s ahead in a worker, then played by an AudioWorklet on the browser's real-time audio thread.
Live decksIn Perform mode, a separate engine mixes in real time, so a knob turn is heard in the next 3 ms block of audio.
AnalysisBeat grids, keys, and energy in background workers. Vocal detection runs a neural network on your graphics card (WebGPU).

Your music stays on your computer: nothing is uploaded to be analyzed or played, unless you choose to keep your tracks in your account for a second device.

The numbers

Each row says what we measured and under which conditions. "Dev build" means the development server, which is usually slower than the app you get.

Library

WhatResultConditions
Page load to the first tracks on screen88 ms2,100 real tracks, production build
Page load to the first tracks on screen89 ms5,000 generated tracks, production build
Open the database33–60 ms5,000 generated tracks, production build
Keystroke to an updated search result4.6–12.2 ms5,000 generated tracks, production build
Scroll through the whole listMedian frame 16.7 ms, 0 frames over 20 ms5,000 generated tracks, production build

Import

WhatResultConditions
Open your DJ software's libraryAbout 2 s2,100 tracks, a 128 MB database, production build
Import every track2.0 s1,893 new tracks, with beat grids, cues, and waveforms; 0 read errors
Add a music folder2.7 s100 files, dev build
Scan the same folder again54 ms100 files, nothing changed, dev build

Timeline

WhatResultConditions
Frames over 20 ms while panning and zooming0 of 600A real 40-track set of 3 h 49 min, zoom range ×64, dev build
Slowest frame interval16.8 ms (60 fps)Same
Draw time per frame0.75 ms average, 2.2 ms at the 95th percentileSame, working zoom

Playback

WhatResultConditions
Play to the first sound91 msCold start, dev build
Seek to the first sound58 msDev build
Mix render speedAbout 500× real timeDev build
Mix with key lock10 s of audio in 202 ms (about 50× real time)Dev build
Beat sync between tracksWorst error 0.02 msThree tracks at 120, 124, and 128 BPM; 215 beats checked
Dropouts0Three real tracks on three lanes, and while dragging a track during playback

Perform mode

WhatResultConditions
CPU for two live decks48–52 µs per 2.9 ms block: 1.8% of one coreEvery control moving, a nudge held, echo on
Delay that the engine adds to a key press or knob turnUnder 3 msYour audio device adds its own delay (see Limits)
Audio buffered per deck3 s ahead, 0 dropoutsTwo decks

Analysis

WhatResultConditions
Full analysis of a track1.6–1.9 sDecode, beat grid, BPM, key, energy, waveform; 3 MP3s, dev build
Vocal detectionAbout 1 minute for a 6-minute track (6× real time)On the graphics card (WebGPU), MacBook Pro with M3 Pro
Phrases of a trackAbout 1 msWhen a set opens

Export

WhatResultConditions
Export a set to your DJ software, backup and checks included11 s6 tracks, a 128 MB library

Limits we know of

We would rather you hear these from us.

How we measured

The numbers come from single manual runs during development in 2026, in Chromium on a Mac. Vocal detection was measured on a MacBook Pro with an M3 Pro; the other rows were measured on our development machine. Several rows used the development build, which is usually slower than the production build. We have not measured slower laptops or Windows yet, nor a full hour of playback. We will add those runs here, with the same detail.

Not yet measured: memory use across all threads, sort speed, decode speed per format, libraries above 5,000 tracks, and load time over the network.

Hear it for yourself.

Free during the beta. Sign in with your email and start planning.

Start free

Runs in Chrome, Edge, or Arc on a computer. Nothing to install.