Music / Harmony

Chord Progression Generator: Roman Numerals and Voice Leading

Choose a key and mode, use common templates or type Roman numerals, add sevenths, choose voicings, play the progression and export MIDI or a chord chart.

Chord Progression Generator: Roman Numerals and Voice Leading: Pick a key and mode, start from a common progression or type your own Roman numerals, and see every chord spelled correctly with smooth voicings. Add sevenths, play the progression back, copy a chord chart or download it as MIDI. Runs 100% locally in your browser with zero server file uploads.

Runs
In your browser
Cost
Free · no sign-up
Availability
Ready to use
Chord progression generatorLocal processing

Runs entirely in your browser

ICC · E · G
VG/BG · B · D
viAm/CA · C · E
IVF/CF · A · C
Roman numeralChordSpelled notesPlayed pitches
ICC E GC4 E4 G4
VG/BG B DB3 D4 G4
viAm/CA C EC4 E4 A4
IVF/CF A CC4 F4 A4
Roman numeral conventions

Templates follow the selected mode; blues uses explicit dominant sevenths. Typed uppercase numerals make major chords and lowercase makes minor chords. Add ° for diminished, ø for half-diminished, or + for augmented. An explicit 7 means a dominant or minor seventh; maj7 means a major seventh. V/V is the dominant of the dominant.

Unaltered degrees follow the selected mode. Prefixed b and # degrees refer to the parallel major scale, so bVII in A minor is G. The sevenths switch adds the scale seventh; explicit suffixes take priority. Each chord lasts four quarter-note beats.

Smooth inversions minimise total movement between sorted voices across the whole progression. The first chord stays in root position; later bass notes range from MIDI 48 to 72 and top notes stay at or below 88. Open voicings raise the second note an octave.

Piano samples: Salamander Grand Piano by Alexander Holm, CC BY 3.0. Tone.js MP3 conversion; samples are pitch-shifted during playback. Sample licence

Diatonic harmony

Triads stack scale degrees 1, 3 and 5; seventh chords add degree 7. Each scale degree is spelled on its own letter, preserving F# in D major and Bb in F major. Background: https://viva.pressbooks.pub/openmusictheory/

Voicings and Roman syntax

Uppercase and lowercase specify major and minor; ° specifies diminished, ø half-diminished, and + augmented. Explicit dominant seventh suffixes and V/target forms allow chromatic harmony. Voice leading finds a global minimum within the stated candidate register, rather than claiming unrestricted optimal counterpoint.

How to use it

  1. Choose a tonic and mode, then a template, random progression or custom Roman numerals.
  2. Set sevenths, close or open voicings and smooth inversions.
  3. Play at your chosen tempo, copy the chord chart or download MIDI.

Privacy & limitations

Harmony, playback and exports run in your browser. Nothing is uploaded.

Related tools

Frequently asked questions

What does bVII mean in minor?

Accidental-prefixed numerals use the parallel major scale. In A minor, bVII means G. Unaltered VII also follows the selected minor scale and means G.

How do secondary dominants work?

V/V makes a major chord a fifth above the dominant, for example D in C major. V7/V adds the dominant seventh. The supported secondary form is V or V7 over a target Roman degree.

What does the sevenths switch do?

It adds diatonic sevenths. Explicit 7, maj7, °7 and ø7 suffixes take precedence, so IV7 in C is F7 while the diatonic seventh on IV is Fmaj7. Natural minor uses a minor v unless you explicitly type V.

What is minimised by smooth inversions?

Total absolute semitone movement of sorted voices. The first chord is fixed in root position; later basses range from MIDI 48 to 72 with top notes at or below 88. Open voicing raises the second note an octave. Each chord lasts four quarter-note beats.

Free tool · runs in your browser · no account required