Guide
Everything Crate does, organized the way you'll actually move through the app — Library, then Builder, then Gigs, then Dashboard, Data Cleaning, Graph, and AI Assist for understanding and tidying up what you've got.
Quickstart
- In Rekordbox:
File → Export Collection in xml format. Save it anywhere. - Open Crate, drag that file onto the import zone (or tap to choose it).
- Browse the Library, or jump straight to Build a new crate.
- Filter, order, and save. Export as
.m3u8for a quick drag into Rekordbox, or as a merged XML to bring in everything at once.
Library
Importing
Only a Rekordbox XML export works as input — not the app's database file directly. Re-import any time your library changes in Rekordbox; Crate will show a banner summarizing what changed since last time (new tracks, removed tracks, crates that changed).
The Crates sidebar shows two groups after import: from rekordbox (your actual Rekordbox playlists, including folders) and from folders (grouped by the folder each file lives in on disk — useful if your Rekordbox playlist tree is empty or doesn't match how you actually organize things).
Health checks
A row of chips at the top of the Library flags tracks missing genre, key, or BPM, tracks not in any crate, and likely duplicates. Click a chip to scope the table to just those tracks.
These chips are for browsing and filtering. To actually fix any of it — merge genre spellings, fill in missing fields, remove duplicates — head to Data Cleaning.
Bulk actions
Select multiple rows with the checkboxes, then use the bar that appears to add a tag to all of them at once, or add them all to an existing (or brand new) crate.
Notes & transitions
Click any track row to open its detail editor: your own notes, tags, and — separately — "Mixes well into", where you can link a track to another one you've actually tested live. The Builder's smart harmonic order prefers a known transition over generic key/BPM math whenever one exists.
Builder
This is where a new crate gets made. Everything below is live — the result list and count update as you change anything.
Sources
Pick All library, one or more specific playlists, an entire Rekordbox folder at once, or a crate you've already built. Selections combine (union), so you can pull from several sources into one new crate.
Filters & genre groups
BPM range, harmonic key (with Camelot-compatible matching), a text search across titles/artists/notes/tags, and genre. Genre groups let you define your own macro categories (e.g. "House family") spanning several raw genre tags — click Group genres… to build one manually, or Auto-suggest groups to have Crate propose some from common keyword families.
Preferences → Advanced → Browse in Rekordbox if key filtering looks off.Ordering
- BPM low→high / high→low — exactly what it says.
- Group by key — sorted by Camelot wheel position.
- Smooth harmonic mix — greedy nearest-neighbor by key distance and BPM, boosted by any transitions you've noted.
- Target shape — four presets (slow build, build-then-peak, peak early, peak in the middle) that reorder tracks to approximate that energy curve.
Once ordered, a small chart shows the BPM arc across the set with a plain-language read of its shape (steady build, choppy, flat, etc). Duplicate songs (same title + artist) are automatically dropped from the result.
Recipes
Save as new crate freezes the current result as a fixed list. Save as recipe instead saves the filter combination itself — reload it later from the sidebar and it re-runs live against your current library, picking up anything new you've added since.
Gigs
A gig bundles several crates into ordered blocks — warm-up, peak, closer, or whatever labels make sense to you. Reorder blocks with the arrows, add venue/date/notes, and see total runtime update automatically.
Export set sheet downloads a clean, printable page for the whole gig (or for a single crate, from the "Sheet" button in the sidebar) — open it in a browser and print, or Print → Save as PDF.
Dashboard
A read-only overview of your library, or any single crate, as a handful of charts — for understanding what you've got before you build with the Builder or tidy it up in Data Cleaning. Nothing on this page is editable.
The dropdown at the top switches what everything below describes: Whole library by default, or any Rekordbox crate, folder group, or crate you've built with Crate.
- Stat tiles — track count, total playtime, average BPM, and how many distinct genres and artists are in the current scope.
- Genres — the top 10 genres by track count, with everything else folded into "Other".
- BPM distribution — a histogram of tempos across the scope, so you can see at a glance whether it skews fast, slow, or spread out.
- BPM range by genre — for your biggest genres, the min-to-max tempo spread and the average, so you can spot which genres run tight and which run wide.
- Key distribution — every Camelot position, split by major and minor, so you can see which keys you're light on.
- Top artists — your most-represented artists in the current scope.
Data Cleaning
Everything about tidying up your metadata lives here — genre spelling, missing fields, duplicates. Nothing applies itself; every suggestion is a button you press after reviewing it, and the stat tiles at the top track how much is left as you work through them.
Genre spelling cleanup
Crate scans your genre tags for likely spelling variants ("Deep House" vs "deep house") and suggests merging them. Click Merge on one suggestion, or Apply all. This changes how genres display and filter inside Crate — it doesn't rewrite the original Genre tag in your Rekordbox library.
Genre families
A read-only summary of the genre groups you've set up (see Filters & genre groups), with how many tracks fall in each. Manage groups in Build a new crate → jumps straight to editing them.
Fill missing genre from artist
When most of an artist's tagged tracks agree on one genre, Crate suggests applying that same genre to their untagged tracks — for example "DJ Alpha → House (4/5 tagged tracks agree)". Review and click Apply per artist, or Apply all.
Missing genre, key & BPM
A scrollable worklist of every track missing a genre, key, or BPM, with inline fields to type each value in yourself — genre autocompletes from genres already elsewhere in your library. Changes save as soon as you move out of the field — there's no separate save button.
Possible duplicates
Tracks matched by identical title + artist, grouped together with their BPM/key/genre shown side by side so you can tell copies apart. Remove this copy deletes a track entirely — including from every crate it belongs to, and its notes and tags — so check which copy you actually want to keep first. It's reversible with the Undo bar that appears, but only for the single most recent removal.
Graph
A visual map of how your crates and tracks connect. Amber circles are crates, sized by how many tracks are shown; blue dots are tracks; a line means "this track is in this crate." A track that sits in several crates shows up as a hub with several lines running to it — a quick way to spot the tracks that cross over between sets.
Crates and filters
Four dropdowns above the canvas control what's drawn:
- Crates — check one or more specific crates to focus on them, or leave "All crates" checked to see the whole library's structure at once.
- Genres — show only tracks in one or more genres.
- BPM — a min/max range.
- Key — one Camelot key, matched harmonically the same way the Builder's key filter works.
Crate selection and filters combine — a crate's circle disappears once none of its tracks survive the current filters. Clear filters resets genre/BPM/key without touching which crates are selected.
Reading and moving around
- Drag the canvas background to pan, scroll or pinch to zoom.
- Drag any node to reposition it — it stays where you drop it.
- Hover a node to highlight everything it connects to, dim the rest, and see a tooltip naming it.
- Type in the search box to highlight matching tracks, artists, or crate names instead of hiding the rest.
- Re-layout reshuffles the physics simulation from scratch; Reset view re-centers and re-zooms without touching the layout itself.
AI Assist
A way to use an AI assistant you already have (ChatGPT, Claude, or similar) to help fill in tracks missing genre, key, or BPM — without giving that assistant, or anyone else, access to your library. Nothing here talks to an AI directly or sends your data anywhere; it's a file you export, hand to an AI yourself, and a reply file you import back.
1 — Export for AI
Export for AI downloads a single text file listing every track currently missing genre, key, or BPM, with each track's title, artist, and whatever fields it does have. The file also includes a ready-made prompt explaining the task and the exact format the AI should reply in — paste the whole file into the AI assistant of your choice.
2 — Import its answer
Save the AI's reply as a text file and import it with Import AI's answer…. Crate re-checks every suggested value against your library as it currently stands — a field the AI filled in that's no longer missing (or that changed since export) is silently skipped, and a track id the AI got wrong is flagged rather than applied to the wrong track. What's left shows up as a review list: apply changes one at a time, or all at once with Apply all.
Exporting & backing up
Back to Rekordbox and beyond
- .m3u8 — fastest for one crate at a time. Drag it into Rekordbox's Playlists panel, or right-click → Import Playlist. Needs the same file paths Crate read at import — if anything's on an external drive, that drive needs to be plugged in.
- Merged XML — brings in everything at once, as a new "Crate" folder inside your library. Needs the original XML in memory that session (re-import if you've reloaded the page since).
- CSV — for spreadsheets, sharing with a promoter, or anything outside Rekordbox entirely. Available for the whole Library too, not just a built crate.
- Traktor NML — experimental, unverified against a real Traktor library. Test on a small crate first.
Save & load database
Save database, in the header, downloads a single JSON file with your tracks, your notes and tags, and every crate you've built with Crate. It's not a Rekordbox file; it's Crate's own backup format, meant for moving to another browser or device, or just keeping a safety copy. Load database brings that file back in.
Troubleshooting
Older versions used the browser's native prompt, which can get silently blocked. Current versions use an in-page dialog — reload the app if you're on a cached older copy.
If Rekordbox's own playlist tree exported empty, Crate automatically falls back to grouping by folder — check the "from folders" section in the sidebar.
Check Rekordbox is set to show keys in Camelot notation, or that your keys aren't in an unusual format the standard-notation converter doesn't recognize.
It needs your original XML file in memory for that session — re-import it once, then export.
Usually a file path issue — an external drive isn't mounted, or files moved since the export. Re-export from Rekordbox with the drive connected.
That's deliberate, not a bug — those come from Rekordbox's own audio analysis, and Crate won't guess at them. Fill them in by ear in the worklist there.
Large selections cap at roughly 200 tracks, keeping the most cross-referenced ones — the note under the canvas says when this happens. Select fewer crates, or add a genre/BPM/key filter, to see the rest.
Crate's library lives only in this browser's local storage. Clearing this browser's site data, using a private/incognito window, or switching browsers or devices starts you over. Use Save database regularly if you want a backup you can restore from.