Chord progression generator: build progressions you can hear and change

A chord progression generator builds a short sequence of chords you can hear at once and then change one chord at a time. In Cymasphere, choose GENERATE on the progression menu: Generate Progression puts the draft on the progression timeline as chord blocks, and Play on the Songbar sounds them.

Generate a draft

GENERATE is on the progression menu. An empty timeline can also offer the generate action. Either path opens Generate Progression and fills the progression with chord blocks. Press Play on the Songbar and listen through the draft once before you change a block.

Bank weights decide which harmonic banks from PALETTE appear more often. Raise the weight on the bank you want to hear in the phrase, and lower the weight on a bank that should stay rare. Voicing weights do that for voicing behaviors. Raise the weight on the behavior you want to hear, and lower the weight on a behavior that should stay rare.

Generation settings can also bias the draft toward a harmonic function. Play the result in C major and name the blocks you got: C (C E G) is I, and G (G B D) is V.

Save As stores a new generation preset. Save one for a verse, then Save As a chorus, a bridge, or an outro. Select preset loads one of those before you generate again. Save writes the current weights over the preset you have open.

Choose SAVE AS on the progression menu when the blocks on the timeline are worth keeping as their own progression. NEW on that menu starts an empty progression.

Edit the blocks into a progression you can name

Change the blocks until the chords match a shape you can spell. In C major, a pop loop to aim for is C, G, Am, F. The notes are C E G, then G B D, then A C E, then F A C. Switch the block display format to numeral and read them as I, V, vi, IV. Letter display shows those note names. Solfege display names the degrees Do, Re, Mi, Fa, Sol, La, and Ti. In C major, C is Do, F is Fa, and G is Sol.

For a jazz cadence, edit the blocks until you have Dm7, G7, Cmaj7. The notes are D F A C, then G B D F, then C E G B. The roots are D, then G, then C. Up a fourth from D is G, and up a fourth from G is C. Down a fifth from D is also G, an octave lower.

For a blues phrase, use dominant sevenths on I, IV, and V. C7 is C E G Bb, F7 is F A C Eb, and G7 is G B D F. Play C7, F7, C7, G7 and listen for the Bb in C7 and the Eb in F7.

If the draft ends on Em (E G B), open the block context menu and delete it, or choose replace so the last chord is C (C E G). Drag a block sideways to change the order. Drag its right edge until each C block is twice as long as the G block. Choose insert on that menu and put G7 (G B D F) before the final C.

Grid resolution sets the subdivision those drags snap to. Use a coarser grid in SONG view for whole-bar blocks, and a finer grid when a chord should last half a bar.

Build the same C, F, G, C loop by hand when you already know the chords. In PALETTE, drag a voicing button onto the progression timeline and it becomes a block. Drag C, then F, then G, then C, and resize the edges. That drag is the first step in how the workspace is set up.

Ask Cyma can run Generate Progression after you confirm the edit, and you choose which blocks stay. AI music composition tools explains that assistant: the AI operates Cymasphere while you decide. The connection steps are in connect AI to Cymasphere.

Name the job of each chord

Play C, F, G, C, one bar each. C (C E G) is the tonic, the chord the phrase starts on and returns to. F (F A C) is the subdominant, the chord that prepares a move. G (G B D) is the dominant: B sits a half step under C, and the following C is where that B rises. The same jobs in A minor, plus the cadences that stop on a different degree, are written out in harmonic function.

Roman numerals keep the job when the key changes. In G major, I, V, vi, IV is G, D, Em, C, spelled G B D, D F# A, E G B, and C E G. That key's scale is G A B C D E F#. The other modes are in music theory for producers.

Swap a chord and keep the job

Replace F with Dm and play C, Dm, G, C. Dm is D F A. It prepares G the way F prepared G, and G still resolves to C, with B rising to C. Choose replace on the F block's context menu, or drag a Dm voicing from PALETTE onto the timeline and delete the old F block.

Replace the final C with Am and play C, F, G, Am. Am is A C E. B in G rises to C, the third of Am, so the phrase lands on vi. On numeral display, call that ending V to vi, a deceptive cadence. Play C, F, G, C right after it and the same B rises to C as the root of C E G.

Borrow Ab from C minor

F is F A C. Fm is F Ab C. The changed note is Ab, from C minor, the parallel minor of C major. Play C, F, Fm, C and move one voice A, then Ab, then G. A is the third of F, Ab is the third of Fm, and G is the fifth of the final C (C E G). Ab, Bb, and the half-diminished ii, with the chord each one moves to, are in borrowed chords.

To hear F and Fm on the same bar, right-click Play and choose Enable ghost track. The progression dims, and the MIDI from the chord blocks is muted. Hold F Ab C on a voicing button across the bar where the block says F.

Choose the notes inside the symbol

Dm7, G7, Cmaj7 names pitch classes, and the octave is a separate choice. D3 is the D below middle C (middle C is C4). Play this, low note to high note:

Dm7    D3  F3  A3  C4
G7     D3  F3  G3  B3
Cmaj7  C3  E3  G3  B3

Hold F3 from Dm7 into G7, then move it down a half step to E3 on Cmaj7. F3 is the third of Dm7 and the seventh of G7. Hold D3 into G7, then move it down a whole step to C3. Move A3 down a whole step to G3 and hold G3. Move C4 down a half step to B3 and hold B3 into Cmaj7, where B is the seventh. A rising bass and the inversions of this cadence are in voice leading.

Turn Voice Lead on from the Dashboard or in VOICING when a block change jumps. It keeps a shared note, such as F3 from Dm7 into G7, and sends the other notes on a short path. When you play that Dm7 voicing down an octave, at D2 F2 A2 C3, the minor third D2 F2 sounds muddy. Enable Low Interval Limits in VOICING and the lower voices sit farther apart. Drag the voicing you kept from PALETTE onto the timeline so the block stores that shape. A Voicing track then plays the notes from the progression plus the voicing settings.

Hand the notes to a DAW

Use a Voicing track in SONG. Open the track menu and choose Copy as MIDI, then paste into a MIDI track in the DAW. The clipboard holds the notes generated from the progression and the voicing settings, so the pitches you shaped (the F3 that held, the B3 that held) stay editable after they leave Cymasphere.

Load Cymasphere as an AU or VST3 plugin when the host should receive that MIDI on another instrument. In the standalone app, turn on Virtual MIDI Device and select that port as the DAW's MIDI input. Play the blocks through CymaSynth first. CymaSynth is the instrument included with Cymasphere: it sits on a Cymasphere track, and it also runs as its own app and as AU and VST3. Set INVERSION to 1st on the G chord so the bass note is B, then listen to B rise into C. Plugin routing, virtual MIDI, and audio bounce are in taking a progression to a DAW.

Notation View, opened from the track menu on a Voicing, Pattern, or Sequencer track, renders those same notes through LilyPond when you need a chart on paper.

Play C, F, G, C and name each bar

Set the key to C, put C, F, G, C on the timeline, and say tonic, subdominant, or dominant on each block as it sounds. Then open harmonic function and mark Am, Dm, and E7 the same way.

Related guides

Try it in Cymasphere

Build a progression, change the voicings, and send it to your DAW as MIDI.

See pricing