GrooveFlow

Export your playlist from Rekordbox as a TXT (tab‑separated) file with the columns "Track Title", "Key" and "BPM" visible. Open the TXT file in a text editor, copy its content, and paste it below.

Force perfect match only

Initial Total Cost:

Optimized Total Cost:

Original Transition Analysis

# From Track To Track BPM Change Energy Change

Optimized Playlist Order & Analysis

# Track Title Key BPM
# From Track To Track BPM Change Energy Change

How It Works

GrooveFlow is a playlist optimizer designed to help you create DJ sets that flow naturally. It does so by harmonizing two critical factors: the musical key (using the Camelot Wheel) and the tempo (BPM). The app leverages principles inspired by natural cooling processes and physics to minimize abrupt changes between tracks.

The Camelot Wheel and Energy Changes

The Camelot Wheel assigns each key a number (1–12) and a letter (A for minor, B for major). This system allows DJs to identify harmonically compatible tracks. For instance:

The Cost Function: Physics, Harmony, and Tempo

At its core, GrooveFlow minimizes a combined cost function that reflects both key mismatches and BPM differences:

  1. Tolerance (k): This parameter sets the buffer for undefined transitions. If an undefined transition is flanked by at least k well-defined transitions, no penalty is added. Physically, you can think of this as allowing occasional turbulence in an otherwise smooth flow.
  2. Weight BPM: This factor determines how heavily tempo differences count in the overall cost. BPM differences up to 6% are considered acceptable, but beyond that, the cost increases sharply—akin to a phase transition in physics.
  3. Weight Key: This sets the penalty for non-harmonic (undefined) key transitions. In normal mode, different energy changes (boosts, drops, mood changes) have their own costs; in Strict Mode, only perfect matches are accepted.
  4. Penalty Multiplier: For BPM shifts greater than 6%, this multiplier imposes an extra penalty. It mimics the concept of critical thresholds in natural processes—small deviations are fine, but beyond a limit, the system becomes unstable.
  5. Strict Mode: When enabled, the optimizer treats any transition that isn’t a perfect match as undefined, forcing the system to seek only flawless harmonic transitions. This is ideal for those who want a rigorously smooth set.

Simulated Annealing Optimization

Inspired by the cooling process of molten metal, simulated annealing explores different track orders by randomly swapping tracks and accepting changes based on whether they lower the overall cost. Just as in nature a system finds a low-energy configuration by cooling slowly, GrooveFlow iteratively rearranges your playlist to minimize abrupt energy and BPM shifts.

About the Creator

GrooveFlow was created by a MūTN who holds a PhD in Physics and is also a material engineer by training, in addition to being a techno enthusiast. This unique blend of scientific expertise and musical passion is the driving force behind the app.

Check out my mixes on SoundCloud.

Note: Because simulated annealing is a stochastic (random) process, running the tool multiple times might produce even better optimizations. Experiment with the parameters and re-run the optimizer to see how the cost can be further reduced.