User Rating 0.0
Total Usage 0 times
Select options above and click Generate to create a chord progression.
Is this tool helpful?

Your feedback helps us improve.

About

Selecting chord progressions without understanding diatonic harmony leads to clashing tonalities and weak voice leading. This generator builds progressions from scale-degree templates grounded in tonal theory. Each chord is derived from the selected key and mode using interval stacking in 12-tone equal temperament, where each semitone equals 2112 of the octave. The tool contains over 50 progression templates drawn from pop, jazz, blues, classical, and lo-fi idioms. Results are not random. They follow functional harmony rules where tonic, subdominant, and dominant relationships create directional motion.

Audio playback uses the Web Audio API with shaped envelopes to approximate a keyboard timbre at 44.1 kHz sample rate. The tool assumes equal temperament tuning with A4 = 440 Hz. Microtonal or just-intonation contexts are not covered. For jazz voicings, the generator uses 7th chord extensions. Simpler pop templates use triads. Note that the synthesized timbre is for previewing harmonic color. It does not replace a DAW or sampled instrument for production work.

chord progression music theory chord generator songwriting harmony music composition chord chart web audio

Formulas

Pitch frequency in 12-tone equal temperament is computed from the reference pitch A4 = 440 Hz.

f=440×2n12

Where f is the frequency in Hz and n is the number of semitones from A4. A positive n raises pitch. A negative n lowers it.

Diatonic chords are constructed by stacking intervals from the scale. For the major scale (Ionian mode), the interval pattern in semitones is:

W - W - H - W - W - W - H where W = 2 semitones, H = 1 semitone

A triad on degree d uses scale tones at positions d, d + 2, d + 4 (zero-indexed). A seventh chord adds position d + 6. The interval between the root and third determines major (4 semitones) versus minor (3 semitones). The interval between root and fifth determines perfect (7 semitones) versus diminished (6 semitones) versus augmented (8 semitones).

Reference Data

ProgressionRoman NumeralsKey of C ExampleGenreMood
Pop CanonI - V - vi - IVC - G - Am - FPopUplifting
50s Doo-WopI - vi - IV - VC - Am - F - GPop / RockNostalgic
Andalusian Cadencei - VII - VI - VAm - G - F - EFlamenco / RockDark / Dramatic
Jazz ii-V-Iii7 - V7 - Imaj7Dm7 - G7 - Cmaj7JazzSmooth
12-Bar BluesI - I - I - I - IV - IV - I - I - V - IV - I - VC - C - C - C - F - F - C - C - G - F - C - GBluesGritty
Pachelbel CanonI - V - vi - iii - IV - I - IV - VC - G - Am - Em - F - C - F - GClassical / PopMajestic
Lo-Fi Chillii7 - V7 - Imaj7 - vi7Dm7 - G7 - Cmaj7 - Am7Lo-Fi / Neo SoulRelaxed
Minor Plagali - iv - i - VAm - Dm - Am - EFolk / IndieMelancholic
Rock AnthemI - IV - V - VC - F - G - GRockPowerful
Axis of AwesomeI - V - vi - IVC - G - Am - FPopUplifting
Creep ProgressionI - III - IV - ivC - E - F - FmAlternativeBittersweet
Royal RoadIV - V - iii - viF - G - Em - AmJ-Pop / AnimeEmotional
Rhythm ChangesI - vi - ii - VC - Am - Dm - GJazz / BebopEnergetic
Dorian Vampi - IVDm - GFunk / ModalGroovy
Mixolydian DescentI - bVII - IV - IC - Bb - F - CRock / CountryLaid-back
Circle of Fifthsvi - ii - V - IAm - Dm - G - CJazz / ClassicalResolving
Trap / Darki - bVI - bVII - iAm - F - G - AmHip-Hop / TrapDark
Emotional Minori - III - VII - VIAm - C - G - FIndie / AmbientWistful
Neapolitani - bII - V - iAm - Bb - E - AmClassical / FilmDramatic
Modal InterchangeI - bVII - bVI - VC - Bb - Ab - GFilm / ProgressiveEpic

Frequently Asked Questions

Chord quality is derived from the intervals within the selected scale. For each degree, the generator stacks every other scale tone (tertian harmony). The semitone count between root and third determines major (4 semitones) or minor (3 semitones). The root-to-fifth interval determines perfect (7), diminished (6), or augmented (8). In C major Ionian mode, degree I yields C-E-G (4+3 = major), degree ii yields D-F-A (3+4 = minor), and degree vii yields B-D-F (3+3 = diminished).
Templates like the Creep progression (I - III - IV - iv) or Mixolydian Descent (I - bVII - IV - I) use modal interchange, borrowing chords from parallel modes. The bVII chord in C major (Bb) comes from C Mixolydian. The iv chord (Fm) comes from C minor. These borrowed chords add harmonic color that pure diatonic harmony cannot achieve. The generator flags these with altered Roman numerals (b prefix or quality change).
The generator uses 12-tone equal temperament (12-TET) where each semitone is exactly 2^(1/12) ≈ 1.05946 frequency ratio. This means major thirds are approximately 14 cents sharp compared to just intonation (5:4 ratio). For most pop, rock, and jazz contexts, this is standard and expected. If you need pure interval ratios for drone-based or modal music, the synthesized playback will not reflect just-intonation purity.
BPM directly affects perceived energy. Ballads and lo-fi typically sit between 60-80 BPM. Pop and funk work around 100-130 BPM. Rock and dance genres push 130-160 BPM. The generator defaults to 120 BPM, which is a neutral starting point. When auditioning a melancholic minor progression at 140 BPM, the emotional effect will contradict the harmonic intent. Match BPM to mood for accurate previewing.
Yes. The generator supports 7 modes: Ionian (major), Dorian, Phrygian, Lydian, Mixolydian, Aeolian (natural minor), and Locrian. Each mode produces different diatonic chord qualities on the same degrees. For example, Dorian mode on D gives a minor i chord but a major IV chord (G major), which is characteristic of funk and soul harmony. Locrian is included for completeness but produces a diminished tonic, making stable progressions difficult.
Triad templates use 3-note chords (root, 3rd, 5th) and produce a cleaner, more open harmonic sound suited to pop and rock. Seventh chord templates add a 4th note (the 7th) creating richer, more colorful voicings typical of jazz, neo-soul, and lo-fi. The generator labels jazz-oriented templates with superscript 7 notation (ii⁷ - V⁷ - Imaj⁷). Using 7th chords in a simple punk context would sound incongruous, so match chord complexity to genre.