Chord Progression Generator

Chord progression generator: build chord sequences in any key and scale, with roman numerals and audio playback. Free, private, runs in your browser, no signup.

Updates automatically as you type.

Calculated in your browser; your inputs are not sent to us. Privacy

Results will appear here.
Calculation details
Every figure above is calculated locally in your browser from the assumptions shown. No inputs are sent anywhere. See the methodology section below for how this tool works.
Use this resultShare the current inputs, or ask ChatGPT to explain the calculation in context.
Ask an AI to explain this result
Share this result

Review the generated output before relying on it.

This tool runs in your browser. Your calculator inputs and results are never transmitted to us or to ad/affiliate partners. Ads and sponsored links may set third-party cookies to serve and measure them, but they never receive your calculation values. If you explicitly save a scenario, its permitted fields stay in local browser storage until you clear them. See our Privacy Policy.

Use this result

Share the current inputs or ask ChatGPT to explain the calculation in context.

More options
Report a calculation issue
D major I V vi IV chord roots and semitone offsets
Four chords, roots at 0, 7, 9, and 5 semitones above the key.
Method & verification

How This Tool Works

Calculation Method

Reads Key and Progression, then returns the result shown on this page.

Site methodology

No unrelated authority link is added merely to make this page look sourced. Tool-specific external sources are shown only when they directly support the method, rate, or rule.

Assumptions to Verify

  • Inputs are treated exactly as entered.
  • Verify important decisions with current authoritative information.

Privacy: The calculation runs in this browser. Shared links contain the page address only, not your inputs or results.

Worked example: D major, progression 1 (I - V - vi - IV)

Set the key to D (semitone offset 2 in the C-based index) and progression to 1. The scale-degree table gives chord roots at 0, 7, 9, and 5 semitones above the key, so the roots land on D (2+0), A (2+7), B (2+9), and G (2+5), all mod 12.

Each chord adds a third and a fifth from the major scale: interval map [0,2,4,5,7,9,11], so chord d uses scale notes d, (d+2) mod 7, and (d+4) mod 7. For the V chord (d=4): root 2+7=9 is A, third major[6]=11 gives 2+11=13, mod 12 = 1 which is C#, fifth major[8 mod 7]=major[1]=2 gives 2+2=4 which is E. Result: A (A C# E).

The vi chord (d=5) comes out minor: root 2+9=11 is B, third major[0]=0 gives D, fifth major[2]=4 gives 2+4=6 which is F#. That is Bm (B D F#), and the degree 5 index is one of the three pre-flagged minor positions (1, 2, 5), so the m suffix is applied. The IV chord (d=3): root 2+5=7 is G, third major[5]=9 gives B (2+9=11), fifth major[0]=0 gives D. Final output: D (D F# A), A (A C# E), Bm (B D F#), G (G B D). Note the F# in D major appears twice, once as the third of I and once as the fifth of vi, exactly as diatonic harmony predicts.

What the tool does not model

Every chord is a plain triad, so anything beyond root, third, and fifth is out of scope: there are no sevenths (a ii7 or V7 adds the major[6]=11 semitone note), no inversions, no voicings, and no slash chords. In C major the vii degree outputs 'B (B D F)', which is a diminished triad by construction, but the label carries no degree symbol even though the roman numeral list includes 'vii degree' notation for display.

Only the 12 major keys are covered. The same I - V - vi - IV in A minor would need a different interval map, and the tool returns the major-scale result regardless, so a minor-key input gives the relative-major answer rather than an error. Progression 4 (I - V - vi - V) reuses the V chord at positions 2 and 4, which is common in pop but means two of the four rows always show identical chord tones.

Rhythm and duration are absent: a progression where each chord lasts one bar sounds different from one where the IV is held for two. For practice, a reasonable tempo starting point is 80 to 100 BPM with one chord per bar, which is about 2.4 to 3 seconds per chord at 4/4.