Skip to content

retro and downtempo · 100 BPM · 2000s-present

Synthwave

A cherry jam.

Late-night cassette warmth — the sound of driving alone with the windows down at 2am.

nostalgic cinematic driving beautiful sadness
FLAVOR cherry

What it tastes like

Synthwave grew out of internet-era nostalgia for a decade most of the artists never lived through — late-2000s producers reaching back to early-80s film scores, Italo disco, and the cool, clean palette of the OB-Xa, the Juno-60, the LinnDrum. Drive (2011) made it a vibe; the genre had been sitting in dorm-room SoundCloud accounts for years, waiting. It’s the sound of beautiful sadness — wistful, never quite tragic, always a little romantic. You’re driving at night, the city is empty, the windshield wipers are slow.

You know it within four bars: a long, breathy pad behind a slow arpeggio in a minor key, side-chained by a steady gated kick. The drums are soft, the bass is plump, and there’s always a saw lead waiting to come in for the second verse with a melody you’ll be humming all week.

The chord moves

Synthwave loves the i–VI–III–VII descent — the home minor chord, then up a sixth, then a third, then a seventh — because it sustains a feeling of beautiful sadness without ever fully resolving. The ear keeps waiting for the dominant V chord that would close the cycle, but it never comes. That’s the tension that makes the genre feel unfinished and forever at the same time.

Add 9ths and major 7ths to almost everything; clean triads sound thin in this style. The richer the chord stack, the more cinematic the result. Try --progression i,VI,III,VII --chord minor_add9 and listen for the emotional gravity.

The groove

Pulse is steady — a four-on-the-floor kick at around 95–110 BPM, a wet snare on 2 and 4 drowned in plate or hall reverb, and tom fills that swell into the chorus. The bass is plump and gated, riding the root with a slight saw envelope — never busy. Sidechain is subtle, just enough to give the kick its space; you don’t want pumping aggression, you want breathing.

The arpeggio on top is the centerpiece. Sixteenth-note runs across the chord, played by a slow-attack analog poly synth with chorus, drifting under everything. Keep the velocity tight; humanize it lightly so it sounds played, not stamped.

The sounds

  • Bass: warm OB-style saw with light chorus, sub layered an octave below. Try Wavetable on a sine + saw blend, slight detune.
  • Lead: detuned PWM with plenty of analog drift. Operator’s basic FM patch, modulate the carrier subtly with the LFO.
  • Pad: huge stereo Juno-style pad with long attack and longer release. Drift’s “Rolling” preset is a perfect starting point.
  • Arp: analog poly with slow attack, chorus, and a touch of reverb tail. Wavetable’s “Vintage Brass” is closer than you’d think.
  • Drums: hybrid 808 + LinnDrum, snare drowned in plate reverb, hi-hat with subtle white-noise dust on top.

Production tells

Want it modern? Brighter top end, tighter sidechain, layered transients on the kick, a stereo widener on the pad. Compress the master harder. Stick a tape saturation plugin on the drum bus, but light. Mastering should sit around -10 LUFS for streaming.

Want it vintage? Narrow the stereo image. Add tape wow/flutter on the pad. Saturate the master with a 1/4” tape emulation. Roll the highs off above 12kHz. Add hiss. Mix to -14 LUFS or quieter — make it sound like it was bounced to cassette and back.

piano roll
100 BPM · 4 bars · base oct 3
C3C4C5
Am9
Fmaj9
Cmaj7
G

The visualization above shows the four chords stretched across one bar each, with the descending root motion giving you that always-falling feeling that’s the entire emotional engine of the genre.

Hear the chord moves 100 BPM · arp

Am9 → Fmaj9 → Cmaj7 → G

Click to hear it.

Listen to

Three records that show the flavor at full strength. Read them as listening pointers, not templates to copy.

Ready when you are

Cook a cherry jam.

Drop this in your terminal and you'll have a Standard MIDI pack in a folder, ready to drag into Live. Edit anything, swap any sound, throw out what doesn't work.

terminal
python jamburgr.py --key "A minor" --style synthwave --progression i,VI,III,VII --output-mode pack --out ./jams/synthwave