What it sounds like
Lo-fi house took off around 2015 on YouTube, when bedroom producers — DJ Boring, Mall Grab, Ross From Friends, DJ Seinfeld — started uploading 4-minute tracks built from dusty Rhodes samples, low-bitrate vocal snippets, and TR-909 kicks pre-EQ’d to sound like they were leaking through a wall. The aesthetic was nostalgia for an era most of the producers hadn’t lived through: warm 90s house records playing on a radio in another room. The sound exploded out of YouTube algorithm holes into proper club rotations within two years.
A bar in and you’ve got it: a Rhodes-style chord pad with audible tape hiss, a kick that’s been low-passed and saturated until the transient is almost gone, and a chopped vocal phrase repeating somewhere in the mid-mix. The whole track sounds like it was bounced to cassette and back twice — that’s intentional.
The chord moves
Lo-fi house steals deep house’s harmonic vocabulary: i–VI–III–v in natural minor, m9 and maj7 colors, slow chord changes (every 4 or 8 bars). The harmony stays patient and lets the texture do the emotional work. Often the chord pad is literally a sample of a 90s house record, looped and pitched to taste.
Use --chord minor9 --voicing rootless --pattern pad and let the chord pad sit there breathing under the drums.
The groove
4-on-the-floor at 116–122 BPM — slightly slower than standard house, which gives it that swaying feel. The kick is muffled — high-frequency content rolled off, often layered with a soft saturation. The clap on 2 and 4 has a tape-warbled tail. Hi-hats are sparse and dusty.
The drums sound like they’re in a different room than the chords. That separation — chord pad in the foreground, drums slightly lo-fi’d behind — is the genre’s signature.
The sounds
- Chord pad: sampled Rhodes or sampled house chord. Pre-EQ’d to roll off above 8kHz. Add tape hiss, vinyl crackle, and bitcrush gently.
- Kick: 909 kick low-passed at 6-8kHz. Sometimes layered with a sub for body. Saturated.
- Bass: warm sine sub or a sampled upright. Walks on the offbeats. Pre-EQ’d flat (no boost).
- Vocal: licensed, royalty-free, or self-recorded chopped vocal texture. Pitched, time-stretched, run through a tape emulator.
- Atmospheres: vinyl crackle, room ambience, tape hiss. The dirt IS the sound.
Production tells
Want it modern? Slightly cleaner mix, less aggressive lo-fi processing. Modern lo-fi house has more clarity in the highs while keeping the warm low-mids.
Want it peak-2016-DJ-Boring-vintage? Crush everything. Bitcrusher on the chord pad. Tape simulator on the master. Pre-EQ that rolls off everything above 12kHz. Master at -16 LUFS — quietness is the aesthetic. Use cleared, royalty-free, or self-recorded source material for the dusty texture.
Am9 → Fmaj7 → Cmaj7 → Em7
Click to hear it.
Listen to
Three records that show the style at full strength. Read them as listening pointers, not templates to copy.
Winona
DJ Boring
listen ↗
Sleepless
Mall Grab
listen ↗
Talk to Me You’ll Understand
Ross From Friends
listen ↗
Six recipes
Six ways to cook Lo-fi house.
One starter recipe, three variations that each take the style in a different direction, one sectioned recipe, and one curated Live handoff recipe. Each one cooks from a Markdown recipe — edit it before the MIDI lands in your DAW.
Starter
Dusty Chord Pocket
A warm lo-fi house first cook with pushed-pull minor-seventh chords, offbeat bass, sparse drums, and a small chord-tone answer.
Study: DJ Boring, “Winona” (2016). Use the reference for dusty warmth, loop patience, and emotional restraint, not for chord or melody copying.
python jamburgr.py --config configs/recipes/lofi_house/lofi_house_dusty_chord_pocket.md Variation
Basement Bass Nudge
A bass-forward dusty-house loop with clipped offbeat stabs, a round low answer, and small call-response hits.
Study: Mall Grab, “Feel U” (2015). Use the reference for basement energy and simple bass placement, not for riff or hook copying.
python jamburgr.py --config configs/recipes/lofi_house/lofi_house_basement_bass_nudge.md Variation
Jazzy Dust Loop
A warmer jazz-color recipe with garage-like chord chops, walking minor bass motion, and restrained chord-tone replies.
Study: Palms Trax, “Equation” (2013). Use the reference for jazzy warmth and relaxed loop evolution, not for melody or chord copying.
python jamburgr.py --config configs/recipes/lofi_house/lofi_house_jazzy_dust_loop.md Variation
Tape Pad Drift
A softer tape-haze lane with slow chord attacks, pedal bass, evolving pads, and tiny motif answers for intros or breakdowns.
Study: Ross From Friends, “Talk To Me You'll Understand” (2015). Use the reference for tape-worn softness and patient development, not for vocal or melodic imitation.
python jamburgr.py --config configs/recipes/lofi_house/lofi_house_tape_pad_drift.md Sectioned
Late-Night Section Sketch
A full-song lo-fi house sketch with filtered starts, late chord returns, sparse drums, and section MIDI files for DAW arrangement.
Study: DJ Seinfeld, “U” (2017). Use the reference for emotional loop pacing and section patience, not for melody, vocal, or chord borrowing.
python jamburgr.py --config configs/recipes/lofi_house/lofi_house_late_night_section_sketch.md Live handoff
Live Dust Session
A lo-fi house DAW handoff pack with dusty-key sound cards, section MIDI files, and licensed sample-search prompts for texture and top loops.
Study: Chaos In The CBD, “Midnight in Peckham” (2015). Use the reference for warm room tone, groove patience, and texture balance, not for phrase or chord copying.
python jamburgr.py --config configs/recipes/lofi_house/lofi_house_bridge_ready_dust_session.md Open in Live or Download uses the local bridge on this Mac. Download MIDI works in any DAW.
Ready when you are
Cook a Lo-fi house pack.
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.
python jamburgr.py --key "A minor" --style lofi_house --progression i,VI,III,v --pattern pad --output-mode pack --out ./jams/lofi-house