Music Library Doctor
Playlist migration

Serato DJ → Engine DJ

One-pass migration from Serato crate files into Engine DJ m.db. Playlist groups, smart playlists, history sessions preserved end-to-end, format gotchas handled on both sides, nothing leaves your machine.

The problem

Moving from Serato DJ to Engine DJ normally means an XML round-trip: export from Serato DJ, hope Engine DJ parses it correctly, manually rebuild playlist groups, smart playlists, history sessions, discover cues didn't translate. Paths live in two places at once — the main Serato DB and every individual .crate file — so any reader that touches only one ends up half-broken. And on the destination side: Engine DJ expects matching analysis files (.dat) next to each track for performance — pure path writes without analysis miss waveforms and cues.

How Music Library Doctor does it

  1. 1 Install Music Library Doctor on the machine with Serato DJ and Engine DJ. MLD detects both libraries automatically.
  2. 2 MLD opens Serato crate files directly without needing Serato DJ to be running.
  3. 3 Select the Serato DJ playlists or folders you want in Engine DJ. MLD maps %% separator encodes nested crate folders into playlist groups, smart playlists, history sessions sensibly.
  4. 4 Choose Engine DJ as the destination. MLD writes Engine DJ m.db natively.
  5. 5 Open Engine DJ — playlists are already there with hierarchy intact, paths pointing at the right files.

Supported today

Rekordbox · Serato DJ · VirtualDJ (incl. Favorite Folders) on Windows 10+ and macOS (Apple Silicon + Intel).

Why native integration matters

Serato DJ and Engine DJ speak completely different languages: Serato crate files (Smart Crates are rule-based queries, not static lists — they have no direct equivalent in most other apps and need to be snapshotted at transfer time) versus Engine DJ m.db (Engine DJ libraries live on the player USB/SSD itself as a per-drive Engine Library folder, not just on the home machine). XML export-import is the usual bridge — and it's lossy on both ends. MLD treats both formats as first-class, reads Serato DJ's structure natively, and writes Engine DJ's native format directly, so playlist groups, smart playlists, history sessions survives and the target app doesn't re-import anything. A timestamped backup of each app's library is taken before any write.

Frequently asked questions

Do I need to install Serato DJ and Engine DJ on the same machine?

Yes. MLD reads both libraries locally, so both apps (or at least their library files) must be accessible on the same computer. Nothing uploads anywhere — all scanning is local.

Will nested playlist groups, smart playlists, history sessions transfer correctly?

Yes. MLD reads %% separator encodes nested crate folders and writes playlist groups, smart playlists, history sessions natively so the structure survives the migration.

What if my music files moved after I built the Serato DJ library?

Run Fix Missing Tracks for Serato DJ first. MLD scans your drives, matches moved/renamed files, and repairs links in Serato DJ before the transfer — so Engine DJ receives a clean library.

Does it back up my libraries before writing?

Yes. Serato DJ and Engine DJ libraries are both copied to timestamped backups before any write. Rollback is always one folder away.

Can I go the other way, Engine DJ back to Serato DJ?

Yes — see the Engine DJ to Serato DJ guide. MLD supports every direction between supported apps.

Will Serato Smart Crates transfer?

Smart Crates are rule-based queries, not static playlists. MLD snapshots them at transfer time to regular Engine DJ playlists, since Engine DJ has no direct equivalent.

Get your library in shape in minutes

Free tier covers detection and viewing. Lifetime access is $49 — $19 for the first 100 DJs.

Related guides