A browser-based 16-step drum sequencer can build, play, and adjust a kick, snare, and hi-hat pattern at 40–240 BPM entirely inside the page, with no account creation, file upload, or sample download required. The Online Drum Machine keeps every action local: the tempo input, the forty-eight toggleable cells (three rows of sixteen), the synthesized voices, and the playback scheduler all live in your current tab rather than on a remote server. AudioContext is created only after the first Play press, which respects browsers that block audio before user interaction. Because the kick is a sine oscillator and the snare and hi-hat are short noise buffers generated at playback time, the tool never contacts a sample host and cannot inherit a third-party sample license. The look-ahead scheduler polls every 25 milliseconds and places upcoming events up to 100 milliseconds ahead on the Web Audio timeline, so the audible sources fire at their exact scheduled start times rather than relying on JavaScript timer callbacks as the beat clock.

Why "No Sign Up" Changes the Workflow
Anyone who has tried a modern music app recently knows the friction: an email gate, a confirmation link, a workspace redirect, and a cloud library that demands a network round trip before a single note plays. A browser-only beat maker sidesteps every one of those steps. There is no account to create, no profile picture to set, no subscription tier to compare, and no waiting for a project to sync. The page loads, the grid appears, and a starter pattern is already in place: a four-on-the-floor example with a kick on every quarter, a snare on beats two and four, and a closed hi-hat on the eighth notes. That starter is just a starting point, and you can erase it one cell at a time or all at once with Clear pattern.
The "no upload" half of the promise matters just as much. A tool that streams your audio to a server to render a beat raises obvious privacy questions, even when the destination is trusted. The Online Drum Machine has nothing to stream because the three voices are not files at all; they are generated by Web Audio nodes on demand. The kick is a short sine oscillator whose frequency drops while a gain envelope decays, and the snare and hi-hat are freshly built noise buffers shaped by high-pass filters and gain envelopes. Removing the network call from the rendering loop means the tool loads the same way on a hotel lobby Wi-Fi connection as on a fast fiber line, and it stays usable even when the office VPN is down.
How to Build a Beat Without Signing Up
Open the tool, enter a tempo, light up some cells, and press Play. Each step below can be done in any order once the page is loaded.
- Type a whole number between 40 and 240 into the BPM field; the field rejects empty input, decimal fractions, signs, exponent notation, unit text, and any number outside the range with a recoverable error.
- Click cells across the kick, snare, and hi-hat rows to set active sixteenth-note steps. Each row holds sixteen equal cells, so toggling cell five on the snare row fires a snare on step five of every bar.
- Listen to the default four-on-the-floor example first if you want a reference pulse, or press Clear pattern to start from silence and build your own beat from a blank grid.
- Press Play to start the loop. The AudioContext is created on this gesture, which is what browsers require before they allow audio output.
- Press Stop whenever you want to silence the beat and release audio resources; press Clear pattern whenever you want to turn every one of the forty-eight cells off at once.
- If you change the BPM during playback, the current run stops and the audio context is closed. Enter another valid whole number and press Play again to restart from step one with the new tempo.
- Edit cells while playback is running; the change is picked up by the upcoming scheduling window, so you can shape a fill without stopping the loop first.
Reading the 16-Step Grid and Timing Math
The grid is always four quarter-note beats divided into sixteen equal sixteenth-note steps. With the tempo field treated as quarter notes per minute — the same convention documented for the sound element in W3C MusicXML 4.0 — a quarter note lasts 60 ÷ BPM seconds. Because each quarter holds four sixteenth notes, every step lasts 60 ÷ BPM ÷ 4 seconds. A worked example at 120 BPM: 60 ÷ 120 ÷ 4 = 0.125 seconds per step, and a full bar of sixteen steps lasts 0.125 × 16 = 2.0 seconds. Doubling the tempo to 240 BPM halves the step to 0.0625 seconds and the bar to 1 second; halving to 60 BPM stretches the step to 0.25 seconds and the bar to 4 seconds. The full arithmetic for any other BPM in range can be done with the same formula.
| BPM | Step duration (60 ÷ BPM ÷ 4 s) | Full 16-step bar |
|---|---|---|
| 40 (lowest allowed) | 0.375 s | 6.0 s |
| 120 (default) | 0.125 s | 2.0 s |
| 240 (highest allowed) | 0.0625 s | 1.0 s |
These three anchors are drawn directly from the verified product limits. A moving step outline marks the current position as the loop runs, with a simple color and outline change rather than relying on motion when a reduced-motion preference is set. Each grid button also exposes an on or off pressed state and a descriptive accessible label. Horizontal scrolling keeps all sixteen steps usable on narrow screens without shrinking touch targets into unreadable marks.
What Stays Local and What Does Not
The pattern, the tempo, the scheduler, the AudioContext, and the three synthesized voices all live in your browser tab. Nothing about your beat leaves the page. That is true even before you press Play: the page is built once and the AudioContext is constructed only after the user gesture, which is consistent with the lifecycle described in the Web Audio API 1.1 specification. Stop, a fresh start attempt, a playback error, and the component unmounting all clear the scheduling timer, stop and disconnect the tracked source nodes, empty the source set, and close the current AudioContext. An asynchronous resume is generation-checked, so a late completion cannot restart audio after Stop or unmount.
A few side effects are inherent to running audio through any browser rather than limitations of this specific tool. The synthesized voices can sound slightly different from one device to the next because tone depends on the browser's audio implementation, the output hardware, the sample rate, and the random noise generated for each snare and hi-hat hit. Heavy tab throttling, a suspended background tab, device changes, or high system load can also affect what you hear; those behaviors come from the surrounding browser environment, not from the page's logic. The tool is also not designed as a digital audio workstation, an AudioWorklet engine, or a guarantee of sample-identical rendering across machines.
Honest Limits of the Online Drum Machine
The grid only supports straight sixteenth notes. There is no swing, no triplets, no velocity layers, no per-track volume, no accents, no effects chain, no recording, no export, no MIDI in or out, and no arbitrary time signatures. Tempo input is strict on purpose: only whole decimal numbers between 40 and 240 are accepted, which keeps the scheduler and its tests aligned with one verified behavior rather than a free-form formula. The range is a deliberate usability and scheduling guard, not a claim about the limits of musical tempo.
If you need any of those features, the right move is to treat this tool as a sketchpad and move the pattern concept to a dedicated music application. Keep your device volume moderate before pressing Play, especially through headphones, because synthesized transients can sound louder on some output systems than recorded drum samples. You can pair this page with the beat maker online free guide for an even shorter path to the same grid, or open an online metronome in another tab at the same BPM to compare the click to your snare hits while you build a fill.