Chord Progression Ear Training Tool


About this tool

This tool loops over a chord progression, playing each chord for a configurable number of beats. The idea is to use this alongside another tool like Pitch Match or Sight Sing, to provide constant grounding to the key while practicing altered notes, or to practice matching or singing pitches over changing chords.

How to write chords

The progression is a sequence of roman numeral chord descriptors separated by whitespace. Each chord is written as:

[b or #] [roman numeral] [optional 7th suffix]

The roman numeral (I through VII) refers to a scale degree root. Each numeral refers to the major scale root for that degree: I = do, II = re, III = mi, IV = fa, V = so, VI = la, VII = ti. To get other roots, use b (flat) or # (sharp) before the numeral. For example, bVII is a chord on te, and #IV is a chord on fi. For instance, in a minor key you would typically write bIII to get a major chord on me, or bVI to get a major chord on le.

Uppercase numerals produce major triads; lowercase numerals produce minor triads. For example, I is a major chord and i is a minor chord, both on the tonic.

You can add a 7th chord suffix after the numeral:

  • 7 or D7 — dominant 7th (major triad + minor 7th)
  • M7 — major 7th (major triad + major 7th)
  • m7 — minor 7th (minor triad + minor 7th)
  • d7 — diminished 7th (diminished triad + diminished 7th)
  • hd7 — half-diminished 7th (diminished triad + minor 7th)

When a 7th suffix is present, it determines the full chord quality; the case of the numeral affects only the root, not the chord type.

Slash chords (bass note)

You can specify a bass note using slash notation, written after the chord: I/so means a I chord with so in the bass. V7/3 means a V7 chord with the 3rd scale degree in the bass. The bass note can be written as:

  • A solfege syllable: do, ra, re, me, mi, fa, fi, so (or sol), le, la, te, ti
  • A letter note with optional flat or sharp: C, Db, F#, etc.
  • A scale degree number (1–7) with optional flat or sharp: 1, b3, #4, etc. Scale degrees use major scale roots (same convention as the roman numerals).

If the bass note is already a chord tone, it is moved to the bass. If it is not a chord tone, it is added as an extra bass note below the chord.

Examples: I IV V I is a basic major cadence. ii V7 I is a common jazz turnaround in major. i bVI V7 i is a minor turnaround with a dominant V. bVII I uses the Mixolydian VII chord.

Each of these tools has a configuration import/export feature to save your configuration in JSON, as well as edit it by hand. To import a saved configuration, paste it into the box and use the Import Config button. Press the Export Config button to replace the text in the box with the current configuration. Use Control+A to select all of the text, copy it, and paste it somewhere to save or edit.

This is a companion to the Pitch Match tool, the Chord Match tool, and the Sight Sing tool.

This tool is free and open source software. Feel free to check out the source code and submit changes at the hosted repository.

Changelog

2026-02-04: Initial release