---
title: Mempool as sound (Labs)
summary: What each sound on the Labs "Mempool as sound" page means, which stored figure it comes from, and the caps that keep it listenable.
published: 2026-10-08
updated: 2026-10-08
---
## In one sentence

Each kind of waiting transaction gets its own voice, the next-block fee sets the pitch, the backlog is a drone underneath, and each new block strikes a low tone. Every sound comes from a number our own node already stored, and the page shows that number as it plays.

## What each sound means

| You hear | It means | Where the number comes from |
| --- | --- | --- |
| A soft sine | Plain payments (`standard`) arriving | Per-category transaction counts in our node's mempool snapshots |
| A pluck | Inscriptions (`ordinal`) arriving | Same |
| A bell | Rune transactions arriving | Same |
| A short click | BRC-20 transactions arriving | Same |
| A muted tone | Alkanes transactions arriving | Same |
| How high the notes are | The median fee rate of the next projected block | Our node's projected block 1 |
| A hum, louder and brighter | A deeper backlog (pending size in blocks of 1,000,000 vB) | The mempool's total size from our node |
| One low strike and a chord | A new block; the chord is its 10th, 50th and 90th fee-rate percentiles | Our node's per-block summary |
| The hum dipping | That block clearing part of the backlog | Same |
| A rising whoosh | The next-block fee rose by half or more (and by at least 1 sat/vB) since the last frame | Our node's projected block 1 |

## How it's worked out

- **Arrivals are net changes.** Live mode compares two mempool snapshots taken about 30 seconds apart; time-lapse compares two 5-minute history points. The change in a category's count is arrivals minus whatever a block confirmed in between. A fall is shown as "cleared", never as negative arrivals, so right after a block a voice can go quiet even while new transactions keep coming.
- **Density is compressed and capped.** A voice plays 0.15 × √(arrivals per minute) notes a second, capped at 6. So a hundredfold bigger wave sounds tenfold busier, not a hundredfold, and a mint wave is dense but never noise. The player also caps how many notes sound at once and drops the extras rather than queueing them.
- **Pitch follows fees on a log scale.** One octave per tenfold fee: 0.1 sat/vB is C3, 1 sat/vB is C4, 10 is C5, 100 is C6. Notes land on a major pentatonic scale, so any mix of voices stays consonant. Each voice sits in its own register and wanders a few scale steps above the fee's note.
- **The drone** follows the backlog on a log scale and is silent when the mempool is empty. It is at full volume and brightness from 100 blocks of backlog.
- **Time-lapse** plays any window (6 hours, 24 hours or 7 days) in about a minute. Seven days is the most there is: our 5-minute history keeps a week. When fewer hours are recorded than you asked for, the page says so and plays only what exists, at the same speed, rather than stretching it. A gap in the recording plays as silence. When there are more than 2.5 blocks per second of playback, each strike stands for the blocks up to the next one.
- **The same data always makes the same sound.** Where a note falls within its slice of time comes from a seeded generator, not from chance.

## Known limits

- Net arrivals undercount when a block lands between two snapshots, because the block's confirmations are subtracted from the same figure.
- Per-category counts need our node's own classification. A snapshot without them plays the backlog only, and the page says so.
- If our node's mempool job stalls, live mode says the snapshot is stale and plays only the backlog.
- This is a Labs experiment: the mapping may change as we hear how it sounds.
