Play VirtualDJ Tracks on CDJs: Build a Rekordbox USB from VirtualDJ

Updated · by the MixGoat team · Tool: Library Migration

Short answer

A CDJ reads a Rekordbox export, the PIONEER folder with export.pdb that Rekordbox writes to the drive, and VirtualDJ cannot create one; it can read a Rekordbox USB in its browser but not write it. So the route is: get the tracks and POIs into Rekordbox, then export from Rekordbox. Rekordbox has no VirtualDJ importer, so use MixGoat's free VirtualDJ to Rekordbox migration, which reads database.xml and MyLists and writes tracks, playlists, hot cues and loops into Rekordbox's library. In Rekordbox, switch to Export mode, plug in a FAT32 USB, drag the playlists onto it in the Devices panel and wait for the sync. Before that, fix WAVs that would trigger E-8305 (32-bit float or WAVE_FORMAT_EXTENSIBLE headers) and match loudness in the files if you want them level on the players, because VirtualDJ's autoGain stays in VirtualDJ. The alternative is to skip the USB and let VirtualDJ drive the CDJs in HID mode.

Step by step

  1. 1

    Choose between a USB and HID control

    If your laptop can be in the booth, VirtualDJ has native definitions for most Pioneer CDJs and XDJs: connect the player by USB, put it in its computer control mode (the button label varies by model), and the platters, pads and displays control a VirtualDJ deck while audio leaves through your interface. No USB preparation, and your POIs and autoGain work as at home. If the laptop stays at home, or the booth is a CDJ-only setup, build the USB.

  2. 2

    Tidy the VirtualDJ side first

    Migration is keyed by file path, so fix red tracks before you start (see mixgoat.com/guides/relocate-missing-files-virtualdj). Save the set as a playlist in MyLists rather than leaving it in the side panel, because only saved .vdjfolder files are migrated. Hot cue POIs with pad numbers 1 to 8 become Rekordbox hot cues A to H, loop POIs become Rekordbox loops, and remix and automix points stay behind because Rekordbox has no equivalent.

  3. 3

    Migrate VirtualDJ to Rekordbox

    Close Rekordbox, open MixGoat → Migrate Library, choose VirtualDJ as the source and Rekordbox as the target, and run Analyze to see the Tracks, Playlists, Cues and Loops counts. MixGoat writes straight into Rekordbox's master.db, with rekordbox.xml as the fallback; if it used the fallback it tells you to enable rekordbox xml under Preferences → Advanced → Database and import from the rekordbox xml node. Keys arrive in Rekordbox's notation and ratings on its 0 to 5 scale. Your database.xml is read only, and the migration is free. Details at mixgoat.com/migrate/virtualdj-to-rekordbox.

  4. 4

    Check the formats the players accept

    CDJ-2000NXS2 and CDJ-3000 play MP3, AAC and 16 or 24-bit WAV and AIFF up to 48 kHz; the CDJ-3000 adds 96 kHz and FLAC. Anything VirtualDJ happily played may still fail on the player: a 32-bit float WAV or one with a WAVE_FORMAT_EXTENSIBLE header shows E-8305. Run MixGoat's Fix Compatibility on the playlist; it flags those headers, patches two bytes in the format tag without touching audio, and marks FLAC as Depends with the per-model list. The fix is free. Background at mixgoat.com/fix-wav-cdj.

  5. 5

    Match loudness if the set spans eras

    The CDJ has no auto gain. Tracks that sat level in VirtualDJ because of autoGain will not on the player. If the playlist mixes old and new material, run Match Loudness in MixGoat before the export so the files themselves agree, then let Rekordbox analyse the matched files. The VirtualDJ-specific explanation is at mixgoat.com/guides/virtualdj-gain-and-loudness.

  6. 6

    Export from Rekordbox

    Open Rekordbox, switch the mode selector to Export, and wait for analysis of the migrated tracks to finish so waveforms and grids are on the drive. Format the USB as FAT32 (exFAT is fine on the CDJ-3000 and newer, check the manual for older players), plug it in, and drag the playlists from Collection onto the drive under Devices. Rekordbox copies the files and writes the PIONEER folder. Eject with the eject icon in Rekordbox, not by pulling the drive, then check one track on a player: hot cues on the pads, waveform, key.

Why VirtualDJ has no Rekordbox export

VirtualDJ's answer to a USB is its own per-drive database.xml: copy music to a drive, play it in VirtualDJ, and a VirtualDJ folder with tags and POIs appears at the root. That drive is complete for another copy of VirtualDJ and meaningless to a CDJ, which reads only Pioneer's export.pdb format. VirtualDJ reads that format, so a USB prepared in Rekordbox shows its playlists and cues inside the VirtualDJ browser, but the write side is Rekordbox's alone. A CDJ can still browse a plain USB by folder and play the files, without playlists, cues or pre-computed waveforms, which is an emergency option and not a set.

Rekordbox, for its part, imports from a few sources but VirtualDJ is not among them, and it does not read .vdjfolder files. The migration step bridges the two databases directly rather than through an intermediate file, which is why hot cue numbers, loop lengths and playlist folders come through intact. The other apps' versions of this page are mixgoat.com/guides/rekordbox-usb-export-for-cdj, mixgoat.com/guides/serato-to-cdj-usb-export and mixgoat.com/guides/traktor-to-cdj-usb-export.

What arrives in Rekordbox, and what does not

Carried over: title, artist, album, genre, label, comment, year, BPM, key, rating, play count, hot cues with pad numbers and colours, saved loops with their lengths, and playlists with folder structure. Cue names such as Drop 8 bars are kept. Left behind: remix points, automix points, VirtualDJ's Volume correction, and VirtualDJ's beatgrid, which Rekordbox replaces with its own analysis; check the grid on tracks with a slow intro before you rely on quantised hot cues.

Migration does not modify database.xml, and Rekordbox's master.db is backed up before the write, so you can keep playing from VirtualDJ at home and from the USB out.

  • Free on every plan: the migration, Analyze, and Fix Compatibility.
  • GOAT: writing loudness-matched files, and saving new cues generated by Cues & Loops.

HID, MIDI and the one-laptop alternative

For DJs who play regularly in CDJ booths, HID control keeps VirtualDJ's library, autoGain and POIs exactly as at home and turns the players into controllers, at the cost of carrying the laptop and an interface and being dependent on a working USB connection mid-set. Many DJs do both: HID when the booth allows, a Rekordbox USB in the bag as the fallback. Keeping the two in step means re-running the migration when the VirtualDJ library changes; MixGoat updates the Rekordbox entries it already wrote rather than duplicating them. The full checklist for a gig USB, regardless of source app, is at mixgoat.com/guides/prepare-tracks-for-cdj-usb.

Migrate VirtualDJ to Rekordbox free with MixGoat

Playlists, hot cues and loops from database.xml land in Rekordbox, ready for Export mode. Migration and the WAV fix are free.

Migrate VirtualDJ to Rekordbox free with MixGoat

Frequently asked questions

Can VirtualDJ export a Rekordbox USB?
No. VirtualDJ can read a USB prepared in Rekordbox but cannot write export.pdb. Migrate to Rekordbox and export from there.
Can a CDJ read a USB that VirtualDJ prepared?
It can browse the files by folder and play them, with no playlists, hot cues or ready waveforms. The VirtualDJ folder on the drive is ignored.
Will my VirtualDJ hot cues show up on the CDJ pads?
Yes, if they were migrated: hot cue POIs 1 to 8 become Rekordbox hot cues A to H and are exported with the track. Remix points do not transfer.
Do I have to pay for Rekordbox to export a USB?
No. Rekordbox's free plan includes Export mode and USB export. MixGoat's migration into it is free as well.
Does VirtualDJ support the CDJ-3000 in HID mode?
VirtualDJ ships native definitions for current Pioneer players including the CDJ-3000 and CDJ-2000NXS2; confirm your exact model on VirtualDJ's hardware list before the gig.
Why does a track that plays in VirtualDJ show E-8305 on the CDJ?
The player rejects the file format, usually a 32-bit float WAV or a WAV with a WAVE_FORMAT_EXTENSIBLE header. VirtualDJ decodes both; CDJs do not. MixGoat's Fix Compatibility repairs the header for free.