Chord Progression Generator
This chord progression generator builds playable, exportable progressions in any key — not by rolling dice, but with an explainable harmony model: functional skeletons, cadences, voice leading and style constraints. Lock what you love, regenerate the rest.
Why Use a Chord Progression Generator?
Beat the blank page
Starting a song is hard; continuing one is harder. A generator that understands functional harmony hands you a dozen legitimate starting points in the time it takes to plug in a guitar — and every one of them already resolves where your ear expects.
Learn harmony by seeing the machinery
Every chord is labelled with its function — Tonic, Predominant, Dominant — and every phrase ending names its cadence. You stop memorizing "these four chords sound good" and start understanding why: tension needs a predominant push and a dominant pull before it can come home.
Iterate like a producer
Lock the two chords that define your track, regenerate everything else, swap a single slot for a borrowed chord, reroll one bar, then export the MIDI with piano voicings already voiced. That loop — generate, edit, regenerate — is how modern writing sessions actually go.
How to Generate a Progression
- Choose key, mode and style. Pick the tonic and mode (major, minor, dorian or mixolydian), then a style such as pop, jazz or cinematic, and a mood.
- Generate. Set length and harmonic rhythm, then hit Generate — the engine plans functional phrases, fills them via templates or a Markov chain, and scores cadences and voice leading.
- Edit, lock and regenerate. Play the progression, lock the chords you want to keep, swap any chord from the key's palette, and regenerate the rest until it sits right.
- Export. Copy the chord symbols or Roman numerals, or download the progression as a MIDI file for your DAW.
Features
Explainable harmony engine
Functional skeletons (T → PD → D → T), a weighted Markov chain, cadence enforcement and a voice-leading scoring pass — the model is visible in every label, not hidden in a black box.
All keys, four modes
Twelve tonics across major, minor, dorian and mixolydian, with harmonic-minor and pop borrowings available where the music actually wants them.
Eight style fingerprints
Pop, rock, jazz, blues, cinematic, EDM, R&B and Latin — each biases chord choice, extensions, borrowed chords and cadences differently, from triads to ninths to the 12-bar form.
Lock, swap and reroll
Pin the chords that define your song, replace any slot from the key's full palette — borrowed chords included — or reroll a single chord in context.
Four voices, four performance styles
Grand piano plays block chords with a weighted bass root, the electric piano rings FM blocks, the acoustic guitar strums — and arpeggiates on two-bar chords — and the warm pad sustains a slow-attack bed. Switch voices mid-playback without stopping.
Real piano voicings
Chords are voiced by nearest-tone voice leading with smooth bass lines and parallel-fifth penalties, then played back through Tone.js — and the same voicings go into the MIDI export.
Private and persistent
Everything runs in your browser — no upload, no account. Your settings and current progression are saved locally and restored on your next visit.
What Musicians Say About the Generator
"Most generators throw random chords at you. This one shows the function of every chord and labels the cadences, so my students finally see WHY the Axis progression works. The lock-and-regenerate flow is how I sketch verses now."
"I write EDM in minor keys and the Cinematic and EDM styles nail the i–bVI–bIII–bVII idiom without me hand-picking anything. Exported the MIDI straight into Ableton — voicings were already sensible."
"The jazz mode gives proper ii–V–I turnarounds with sevenths, and the deceptive cadence labels taught me more harmony than my textbook. Would love keyboard shortcuts next."
Frequently Asked Questions
How does the chord progression generator work?
It builds an explainable harmony model in three stages. First it plans a functional skeleton per phrase (tonic, predominant and dominant functions). Then it instantiates the chords using curated style templates and a weighted Markov chain over scale degrees, powered by the Tonal.js music theory library. Finally a scoring pass filters candidates on cadence correctness, voice leading (common tones, smooth bass, no parallel fifths), style fit and repetition structure.
What is the difference between the three generation strategies?
Curated templates give human-reviewed progressions like the Axis loop or the Andalusian cadence. The Markov chain samples chord-by-chord from transition probabilities. Hybrid — the default — plans functional phrases first and blends both approaches, then picks the best-scoring candidate. Blues always uses the classic 12-bar form.
Can I lock chords and regenerate the rest?
Yes. Click the padlock on any chord card to lock it, then press Generate — locked chords stay exactly where they are while the engine rebuilds everything around them, guiding the harmony toward and away from your pinned chords.
Which keys and modes are supported?
All twelve tonics in four modes: major, natural minor, dorian and mixolydian. Minor keys include harmonic-minor borrowings (the major V7 and the leading-tone diminished) so cadences resolve properly, and major keys include the usual pop borrowings like bVII and iv.
Can I export the progression?
Yes — download it as a Standard MIDI File with the piano voicings already realized, or copy the chord symbols and Roman numerals as text. Your settings and progression are also saved in your browser automatically.
Does it work on phones and tablets?
Yes. The layout adapts to small screens, playback uses the Web Audio API through Tone.js, and everything runs locally — nothing is uploaded.
Start writing your next progression
Pick a key, choose a style, and generate progressions you can explain, edit and export — free, private, and entirely in your browser.
Generate a chord progression